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 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
145 rtc::CritScope lock(&lock_); | 145 rtc::CritScope lock(&lock_); |
146 state_.sending = enable; | 146 state_.sending = enable; |
147 } | 147 } |
148 | 148 |
149 void SetReceiving(bool enable) { | 149 void SetReceiving(bool enable) { |
150 rtc::CritScope lock(&lock_); | 150 rtc::CritScope lock(&lock_); |
151 state_.receiving = enable; | 151 state_.receiving = enable; |
152 } | 152 } |
153 | 153 |
154 private: | 154 private: |
155 mutable rtc::CriticalSection lock_; | 155 rtc::CriticalSection lock_; |
156 State state_; | 156 State state_; |
157 }; | 157 }; |
158 | 158 |
159 class Channel | 159 class Channel |
160 : public RtpData, | 160 : public RtpData, |
161 public RtpFeedback, | 161 public RtpFeedback, |
162 public FileCallback, // receiving notification from file player & | 162 public FileCallback, // receiving notification from file player & |
163 // recorder | 163 // recorder |
164 public Transport, | 164 public Transport, |
165 public RtpAudioFeedback, | 165 public RtpAudioFeedback, |
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
476 void RegisterReceiveCodecsToRTPModule(); | 476 void RegisterReceiveCodecsToRTPModule(); |
477 | 477 |
478 int SetRedPayloadType(int red_payload_type); | 478 int SetRedPayloadType(int red_payload_type); |
479 int SetSendRtpHeaderExtension(bool enable, | 479 int SetSendRtpHeaderExtension(bool enable, |
480 RTPExtensionType type, | 480 RTPExtensionType type, |
481 unsigned char id); | 481 unsigned char id); |
482 | 482 |
483 int32_t GetPlayoutFrequency(); | 483 int32_t GetPlayoutFrequency(); |
484 int64_t GetRTT(bool allow_associate_channel) const; | 484 int64_t GetRTT(bool allow_associate_channel) const; |
485 | 485 |
486 mutable rtc::CriticalSection _fileCritSect; | 486 rtc::CriticalSection _fileCritSect; |
487 mutable rtc::CriticalSection _callbackCritSect; | 487 rtc::CriticalSection _callbackCritSect; |
488 mutable rtc::CriticalSection volume_settings_critsect_; | 488 rtc::CriticalSection volume_settings_critsect_; |
489 uint32_t _instanceId; | 489 uint32_t _instanceId; |
490 int32_t _channelId; | 490 int32_t _channelId; |
491 | 491 |
492 ChannelState channel_state_; | 492 ChannelState channel_state_; |
493 | 493 |
494 RtcEventLog* const event_log_; | 494 RtcEventLog* const event_log_; |
495 | 495 |
496 rtc::scoped_ptr<RtpHeaderParser> rtp_header_parser_; | 496 rtc::scoped_ptr<RtpHeaderParser> rtp_header_parser_; |
497 rtc::scoped_ptr<RTPPayloadRegistry> rtp_payload_registry_; | 497 rtc::scoped_ptr<RTPPayloadRegistry> rtp_payload_registry_; |
498 rtc::scoped_ptr<ReceiveStatistics> rtp_receive_statistics_; | 498 rtc::scoped_ptr<ReceiveStatistics> rtp_receive_statistics_; |
(...skipping 27 matching lines...) Expand all Loading... |
526 | 526 |
527 // Timestamp of the audio pulled from NetEq. | 527 // Timestamp of the audio pulled from NetEq. |
528 uint32_t jitter_buffer_playout_timestamp_; | 528 uint32_t jitter_buffer_playout_timestamp_; |
529 uint32_t playout_timestamp_rtp_ GUARDED_BY(video_sync_lock_); | 529 uint32_t playout_timestamp_rtp_ GUARDED_BY(video_sync_lock_); |
530 uint32_t playout_timestamp_rtcp_; | 530 uint32_t playout_timestamp_rtcp_; |
531 uint32_t playout_delay_ms_ GUARDED_BY(video_sync_lock_); | 531 uint32_t playout_delay_ms_ GUARDED_BY(video_sync_lock_); |
532 uint32_t _numberOfDiscardedPackets; | 532 uint32_t _numberOfDiscardedPackets; |
533 uint16_t send_sequence_number_; | 533 uint16_t send_sequence_number_; |
534 uint8_t restored_packet_[kVoiceEngineMaxIpPacketSizeBytes]; | 534 uint8_t restored_packet_[kVoiceEngineMaxIpPacketSizeBytes]; |
535 | 535 |
536 mutable rtc::CriticalSection ts_stats_lock_; | 536 rtc::CriticalSection ts_stats_lock_; |
537 | 537 |
538 rtc::scoped_ptr<rtc::TimestampWrapAroundHandler> rtp_ts_wraparound_handler_; | 538 rtc::scoped_ptr<rtc::TimestampWrapAroundHandler> rtp_ts_wraparound_handler_; |
539 // The rtp timestamp of the first played out audio frame. | 539 // The rtp timestamp of the first played out audio frame. |
540 int64_t capture_start_rtp_time_stamp_; | 540 int64_t capture_start_rtp_time_stamp_; |
541 // The capture ntp time (in local timebase) of the first played out audio | 541 // The capture ntp time (in local timebase) of the first played out audio |
542 // frame. | 542 // frame. |
543 int64_t capture_start_ntp_time_ms_ GUARDED_BY(ts_stats_lock_); | 543 int64_t capture_start_ntp_time_ms_ GUARDED_BY(ts_stats_lock_); |
544 | 544 |
545 // uses | 545 // uses |
546 Statistics* _engineStatisticsPtr; | 546 Statistics* _engineStatisticsPtr; |
(...skipping 20 matching lines...) Expand all Loading... |
567 // VoEDtmf | 567 // VoEDtmf |
568 bool _playOutbandDtmfEvent; | 568 bool _playOutbandDtmfEvent; |
569 bool _playInbandDtmfEvent; | 569 bool _playInbandDtmfEvent; |
570 // VoeRTP_RTCP | 570 // VoeRTP_RTCP |
571 uint32_t _lastLocalTimeStamp; | 571 uint32_t _lastLocalTimeStamp; |
572 int8_t _lastPayloadType; | 572 int8_t _lastPayloadType; |
573 bool _includeAudioLevelIndication; | 573 bool _includeAudioLevelIndication; |
574 // VoENetwork | 574 // VoENetwork |
575 AudioFrame::SpeechType _outputSpeechType; | 575 AudioFrame::SpeechType _outputSpeechType; |
576 // VoEVideoSync | 576 // VoEVideoSync |
577 mutable rtc::CriticalSection video_sync_lock_; | 577 rtc::CriticalSection video_sync_lock_; |
578 uint32_t _average_jitter_buffer_delay_us GUARDED_BY(video_sync_lock_); | 578 uint32_t _average_jitter_buffer_delay_us GUARDED_BY(video_sync_lock_); |
579 uint32_t _previousTimestamp; | 579 uint32_t _previousTimestamp; |
580 uint16_t _recPacketDelayMs GUARDED_BY(video_sync_lock_); | 580 uint16_t _recPacketDelayMs GUARDED_BY(video_sync_lock_); |
581 // VoEAudioProcessing | 581 // VoEAudioProcessing |
582 bool _RxVadDetection; | 582 bool _RxVadDetection; |
583 bool _rxAgcIsEnabled; | 583 bool _rxAgcIsEnabled; |
584 bool _rxNsIsEnabled; | 584 bool _rxNsIsEnabled; |
585 bool restored_packet_in_use_; | 585 bool restored_packet_in_use_; |
586 // RtcpBandwidthObserver | 586 // RtcpBandwidthObserver |
587 rtc::scoped_ptr<VoERtcpObserver> rtcp_observer_; | 587 rtc::scoped_ptr<VoERtcpObserver> rtcp_observer_; |
588 rtc::scoped_ptr<NetworkPredictor> network_predictor_; | 588 rtc::scoped_ptr<NetworkPredictor> network_predictor_; |
589 // An associated send channel. | 589 // An associated send channel. |
590 mutable rtc::CriticalSection assoc_send_channel_lock_; | 590 rtc::CriticalSection assoc_send_channel_lock_; |
591 ChannelOwner associate_send_channel_ GUARDED_BY(assoc_send_channel_lock_); | 591 ChannelOwner associate_send_channel_ GUARDED_BY(assoc_send_channel_lock_); |
592 | 592 |
593 bool pacing_enabled_; | 593 bool pacing_enabled_; |
594 PacketRouter* packet_router_ = nullptr; | 594 PacketRouter* packet_router_ = nullptr; |
595 rtc::scoped_ptr<TransportFeedbackProxy> feedback_observer_proxy_; | 595 rtc::scoped_ptr<TransportFeedbackProxy> feedback_observer_proxy_; |
596 rtc::scoped_ptr<TransportSequenceNumberProxy> seq_num_allocator_proxy_; | 596 rtc::scoped_ptr<TransportSequenceNumberProxy> seq_num_allocator_proxy_; |
597 rtc::scoped_ptr<RtpPacketSenderProxy> rtp_packet_sender_proxy_; | 597 rtc::scoped_ptr<RtpPacketSenderProxy> rtp_packet_sender_proxy_; |
598 }; | 598 }; |
599 | 599 |
600 } // namespace voe | 600 } // namespace voe |
601 } // namespace webrtc | 601 } // namespace webrtc |
602 | 602 |
603 #endif // WEBRTC_VOICE_ENGINE_CHANNEL_H_ | 603 #endif // WEBRTC_VOICE_ENGINE_CHANNEL_H_ |
OLD | NEW |