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 10 matching lines...) Expand all Loading... |
21 #include "webrtc/base/thread_checker.h" | 21 #include "webrtc/base/thread_checker.h" |
22 #include "webrtc/common_audio/resampler/include/push_resampler.h" | 22 #include "webrtc/common_audio/resampler/include/push_resampler.h" |
23 #include "webrtc/common_types.h" | 23 #include "webrtc/common_types.h" |
24 #include "webrtc/modules/audio_coding/acm2/codec_manager.h" | 24 #include "webrtc/modules/audio_coding/acm2/codec_manager.h" |
25 #include "webrtc/modules/audio_coding/acm2/rent_a_codec.h" | 25 #include "webrtc/modules/audio_coding/acm2/rent_a_codec.h" |
26 #include "webrtc/modules/audio_coding/include/audio_coding_module.h" | 26 #include "webrtc/modules/audio_coding/include/audio_coding_module.h" |
27 #include "webrtc/modules/audio_conference_mixer/include/audio_conference_mixer_d
efines.h" | 27 #include "webrtc/modules/audio_conference_mixer/include/audio_conference_mixer_d
efines.h" |
28 #include "webrtc/modules/audio_processing/rms_level.h" | 28 #include "webrtc/modules/audio_processing/rms_level.h" |
29 #include "webrtc/modules/rtp_rtcp/include/remote_ntp_time_estimator.h" | 29 #include "webrtc/modules/rtp_rtcp/include/remote_ntp_time_estimator.h" |
30 #include "webrtc/modules/rtp_rtcp/include/rtp_header_parser.h" | 30 #include "webrtc/modules/rtp_rtcp/include/rtp_header_parser.h" |
| 31 #include "webrtc/modules/rtp_rtcp/include/rtp_receiver.h" |
31 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp.h" | 32 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp.h" |
32 #include "webrtc/voice_engine/audio_level.h" | 33 #include "webrtc/voice_engine/audio_level.h" |
33 #include "webrtc/voice_engine/file_player.h" | 34 #include "webrtc/voice_engine/file_player.h" |
34 #include "webrtc/voice_engine/file_recorder.h" | 35 #include "webrtc/voice_engine/file_recorder.h" |
35 #include "webrtc/voice_engine/include/voe_base.h" | 36 #include "webrtc/voice_engine/include/voe_base.h" |
36 #include "webrtc/voice_engine/include/voe_network.h" | 37 #include "webrtc/voice_engine/include/voe_network.h" |
37 #include "webrtc/voice_engine/shared_data.h" | 38 #include "webrtc/voice_engine/shared_data.h" |
38 #include "webrtc/voice_engine/voice_engine_defines.h" | 39 #include "webrtc/voice_engine/voice_engine_defines.h" |
39 | 40 |
40 namespace rtc { | 41 namespace rtc { |
41 class TimestampWrapAroundHandler; | 42 class TimestampWrapAroundHandler; |
42 } | 43 } |
43 | 44 |
44 namespace webrtc { | 45 namespace webrtc { |
45 | 46 |
46 class AudioDeviceModule; | 47 class AudioDeviceModule; |
47 class FileWrapper; | 48 class FileWrapper; |
48 class PacketRouter; | 49 class PacketRouter; |
49 class ProcessThread; | 50 class ProcessThread; |
50 class RateLimiter; | 51 class RateLimiter; |
51 class ReceiveStatistics; | 52 class ReceiveStatistics; |
52 class RemoteNtpTimeEstimator; | 53 class RemoteNtpTimeEstimator; |
53 class RtcEventLog; | 54 class RtcEventLog; |
54 class RTPPayloadRegistry; | 55 class RTPPayloadRegistry; |
55 class RtpReceiver; | |
56 class RTPReceiverAudio; | 56 class RTPReceiverAudio; |
57 class RtpPacketReceived; | 57 class RtpPacketReceived; |
58 class RtpRtcp; | 58 class RtpRtcp; |
59 class RtpTransportControllerSendInterface; | 59 class RtpTransportControllerSendInterface; |
60 class TelephoneEventHandler; | 60 class TelephoneEventHandler; |
61 class VoERTPObserver; | 61 class VoERTPObserver; |
62 class VoiceEngineObserver; | 62 class VoiceEngineObserver; |
63 | 63 |
64 struct CallStatistics; | 64 struct CallStatistics; |
65 struct ReportBlock; | 65 struct ReportBlock; |
(...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
392 void OnOverheadChanged(size_t overhead_bytes_per_packet) override; | 392 void OnOverheadChanged(size_t overhead_bytes_per_packet) override; |
393 | 393 |
394 // The existence of this function alongside OnUplinkPacketLossRate is | 394 // The existence of this function alongside OnUplinkPacketLossRate is |
395 // a compromise. We want the encoder to be agnostic of the PLR source, but | 395 // a compromise. We want the encoder to be agnostic of the PLR source, but |
396 // we also don't want it to receive conflicting information from TWCC and | 396 // we also don't want it to receive conflicting information from TWCC and |
397 // from RTCP-XR. | 397 // from RTCP-XR. |
398 void OnTwccBasedUplinkPacketLossRate(float packet_loss_rate); | 398 void OnTwccBasedUplinkPacketLossRate(float packet_loss_rate); |
399 | 399 |
400 void OnRecoverableUplinkPacketLossRate(float recoverable_packet_loss_rate); | 400 void OnRecoverableUplinkPacketLossRate(float recoverable_packet_loss_rate); |
401 | 401 |
| 402 std::vector<RtpSource> GetSources() const { |
| 403 return rtp_receiver_->GetSources(); |
| 404 } |
| 405 |
402 private: | 406 private: |
403 class ProcessAndEncodeAudioTask; | 407 class ProcessAndEncodeAudioTask; |
404 | 408 |
405 void OnUplinkPacketLossRate(float packet_loss_rate); | 409 void OnUplinkPacketLossRate(float packet_loss_rate); |
406 bool InputMute() const; | 410 bool InputMute() const; |
407 bool OnRtpPacketWithHeader(const uint8_t* received_packet, | 411 bool OnRtpPacketWithHeader(const uint8_t* received_packet, |
408 size_t length, | 412 size_t length, |
409 RTPHeader *header); | 413 RTPHeader *header); |
410 bool ReceivePacket(const uint8_t* packet, | 414 bool ReceivePacket(const uint8_t* packet, |
411 size_t packet_length, | 415 size_t packet_length, |
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
536 | 540 |
537 const bool use_twcc_plr_for_ana_; | 541 const bool use_twcc_plr_for_ana_; |
538 | 542 |
539 rtc::TaskQueue* encoder_queue_ = nullptr; | 543 rtc::TaskQueue* encoder_queue_ = nullptr; |
540 }; | 544 }; |
541 | 545 |
542 } // namespace voe | 546 } // namespace voe |
543 } // namespace webrtc | 547 } // namespace webrtc |
544 | 548 |
545 #endif // WEBRTC_VOICE_ENGINE_CHANNEL_H_ | 549 #endif // WEBRTC_VOICE_ENGINE_CHANNEL_H_ |
OLD | NEW |