OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
399 | 399 |
400 int calls_to_silence_generator; // Number of calls where silence generated, | 400 int calls_to_silence_generator; // Number of calls where silence generated, |
401 // and NetEq was disengaged from decoding. | 401 // and NetEq was disengaged from decoding. |
402 int calls_to_neteq; // Number of calls to NetEq. | 402 int calls_to_neteq; // Number of calls to NetEq. |
403 int decoded_normal; // Number of calls where audio RTP packet decoded. | 403 int decoded_normal; // Number of calls where audio RTP packet decoded. |
404 int decoded_plc; // Number of calls resulted in PLC. | 404 int decoded_plc; // Number of calls resulted in PLC. |
405 int decoded_cng; // Number of calls where comfort noise generated due to DTX. | 405 int decoded_cng; // Number of calls where comfort noise generated due to DTX. |
406 int decoded_plc_cng; // Number of calls resulted where PLC faded to CNG. | 406 int decoded_plc_cng; // Number of calls resulted where PLC faded to CNG. |
407 }; | 407 }; |
408 | 408 |
409 typedef struct | |
410 { | |
411 int min; // minumum | |
412 int max; // maximum | |
413 int average; // average | |
414 } StatVal; | |
415 | |
416 typedef struct // All levels are reported in dBm0 | |
417 { | |
418 StatVal speech_rx; // long-term speech levels on receiving side | |
419 StatVal speech_tx; // long-term speech levels on transmitting side | |
420 StatVal noise_rx; // long-term noise/silence levels on receiving side | |
421 StatVal noise_tx; // long-term noise/silence levels on transmitting side | |
422 } LevelStatistics; | |
423 | |
424 typedef struct // All levels are reported in dB | |
425 { | |
426 StatVal erl; // Echo Return Loss | |
427 StatVal erle; // Echo Return Loss Enhancement | |
428 StatVal rerl; // RERL = ERL + ERLE | |
429 // Echo suppression inside EC at the point just before its NLP | |
430 StatVal a_nlp; | |
431 } EchoStatistics; | |
432 | |
433 enum NsModes // type of Noise Suppression | 409 enum NsModes // type of Noise Suppression |
434 { | 410 { |
435 kNsUnchanged = 0, // previously set mode | 411 kNsUnchanged = 0, // previously set mode |
436 kNsDefault, // platform default | 412 kNsDefault, // platform default |
437 kNsConference, // conferencing default | 413 kNsConference, // conferencing default |
438 kNsLowSuppression, // lowest suppression | 414 kNsLowSuppression, // lowest suppression |
439 kNsModerateSuppression, | 415 kNsModerateSuppression, |
440 kNsHighSuppression, | 416 kNsHighSuppression, |
441 kNsVeryHighSuppression, // highest suppression | 417 kNsVeryHighSuppression, // highest suppression |
442 }; | 418 }; |
(...skipping 27 matching lines...) Expand all Loading... |
470 enum AecmModes // mode of AECM | 446 enum AecmModes // mode of AECM |
471 { | 447 { |
472 kAecmQuietEarpieceOrHeadset = 0, | 448 kAecmQuietEarpieceOrHeadset = 0, |
473 // Quiet earpiece or headset use | 449 // Quiet earpiece or headset use |
474 kAecmEarpiece, // most earpiece use | 450 kAecmEarpiece, // most earpiece use |
475 kAecmLoudEarpiece, // Loud earpiece or quiet speakerphone use | 451 kAecmLoudEarpiece, // Loud earpiece or quiet speakerphone use |
476 kAecmSpeakerphone, // most speakerphone use (default) | 452 kAecmSpeakerphone, // most speakerphone use (default) |
477 kAecmLoudSpeakerphone // Loud speakerphone | 453 kAecmLoudSpeakerphone // Loud speakerphone |
478 }; | 454 }; |
479 | 455 |
480 // AGC configuration | 456 // AGC configuration parameters |
481 typedef struct | 457 struct AgcConfig |
482 { | 458 { |
483 unsigned short targetLeveldBOv; | 459 unsigned short targetLeveldBOv; |
484 unsigned short digitalCompressionGaindB; | 460 unsigned short digitalCompressionGaindB; |
485 bool limiterEnable; | 461 bool limiterEnable; |
486 } AgcConfig; // AGC configuration parameters | 462 }; |
487 | 463 |
488 enum StereoChannel | 464 enum StereoChannel |
489 { | 465 { |
490 kStereoLeft = 0, | 466 kStereoLeft = 0, |
491 kStereoRight, | 467 kStereoRight, |
492 kStereoBoth | 468 kStereoBoth |
493 }; | 469 }; |
494 | 470 |
495 // Audio device layers | 471 // Audio device layers |
496 enum AudioLayers | 472 enum AudioLayers |
497 { | 473 { |
498 kAudioPlatformDefault = 0, | 474 kAudioPlatformDefault = 0, |
499 kAudioWindowsWave = 1, | 475 kAudioWindowsWave = 1, |
500 kAudioWindowsCore = 2, | 476 kAudioWindowsCore = 2, |
501 kAudioLinuxAlsa = 3, | 477 kAudioLinuxAlsa = 3, |
502 kAudioLinuxPulse = 4 | 478 kAudioLinuxPulse = 4 |
503 }; | 479 }; |
504 | 480 |
505 // TODO(henrika): to be removed. | |
506 enum NetEqModes // NetEQ playout configurations | |
507 { | |
508 // Optimized trade-off between low delay and jitter robustness for two-way | |
509 // communication. | |
510 kNetEqDefault = 0, | |
511 // Improved jitter robustness at the cost of increased delay. Can be | |
512 // used in one-way communication. | |
513 kNetEqStreaming = 1, | |
514 // Optimzed for decodability of fax signals rather than for perceived audio | |
515 // quality. | |
516 kNetEqFax = 2, | |
517 // Minimal buffer management. Inserts zeros for lost packets and during | |
518 // buffer increases. | |
519 kNetEqOff = 3, | |
520 }; | |
521 | |
522 // TODO(henrika): to be removed. | |
523 enum OnHoldModes // On Hold direction | |
524 { | |
525 kHoldSendAndPlay = 0, // Put both sending and playing in on-hold state. | |
526 kHoldSendOnly, // Put only sending in on-hold state. | |
527 kHoldPlayOnly // Put only playing in on-hold state. | |
528 }; | |
529 | |
530 // TODO(henrika): to be removed. | |
531 enum AmrMode | |
532 { | |
533 kRfc3267BwEfficient = 0, | |
534 kRfc3267OctetAligned = 1, | |
535 kRfc3267FileStorage = 2, | |
536 }; | |
537 | |
538 // ================================================================== | 481 // ================================================================== |
539 // Video specific types | 482 // Video specific types |
540 // ================================================================== | 483 // ================================================================== |
541 | 484 |
542 // Raw video types | 485 // Raw video types |
543 enum RawVideoType | 486 enum RawVideoType |
544 { | 487 { |
545 kVideoI420 = 0, | 488 kVideoI420 = 0, |
546 kVideoYV12 = 1, | 489 kVideoYV12 = 1, |
547 kVideoYUY2 = 2, | 490 kVideoYUY2 = 2, |
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
909 enum class RtcpMode { kOff, kCompound, kReducedSize }; | 852 enum class RtcpMode { kOff, kCompound, kReducedSize }; |
910 | 853 |
911 enum NetworkState { | 854 enum NetworkState { |
912 kNetworkUp, | 855 kNetworkUp, |
913 kNetworkDown, | 856 kNetworkDown, |
914 }; | 857 }; |
915 | 858 |
916 } // namespace webrtc | 859 } // namespace webrtc |
917 | 860 |
918 #endif // WEBRTC_COMMON_TYPES_H_ | 861 #endif // WEBRTC_COMMON_TYPES_H_ |
OLD | NEW |