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 18 matching lines...) Expand all Loading... |
29 explicit RTPReceiverAudio(RtpData* data_callback); | 29 explicit RTPReceiverAudio(RtpData* data_callback); |
30 virtual ~RTPReceiverAudio() {} | 30 virtual ~RTPReceiverAudio() {} |
31 | 31 |
32 // The following three methods implement the TelephoneEventHandler interface. | 32 // The following three methods implement the TelephoneEventHandler interface. |
33 // Forward DTMFs to decoder for playout. | 33 // Forward DTMFs to decoder for playout. |
34 void SetTelephoneEventForwardToDecoder(bool forward_to_decoder) override; | 34 void SetTelephoneEventForwardToDecoder(bool forward_to_decoder) override; |
35 | 35 |
36 // Is forwarding of outband telephone events turned on/off? | 36 // Is forwarding of outband telephone events turned on/off? |
37 bool TelephoneEventForwardToDecoder() const override; | 37 bool TelephoneEventForwardToDecoder() const override; |
38 | 38 |
39 // Is TelephoneEvent configured with payload type payload_type | 39 // Is TelephoneEvent configured with |payload_type|. |
40 bool TelephoneEventPayloadType(const int8_t payload_type) const override; | 40 bool TelephoneEventPayloadType(const int8_t payload_type) const override; |
41 | 41 |
42 TelephoneEventHandler* GetTelephoneEventHandler() override { return this; } | 42 TelephoneEventHandler* GetTelephoneEventHandler() override { return this; } |
43 | 43 |
44 // Returns true if CNG is configured with payload type payload_type. If so, | 44 // Returns true if CNG is configured with |payload_type|. |
45 // the frequency and cng_payload_type_has_changed are filled in. | 45 bool CNGPayloadType(const int8_t payload_type); |
46 bool CNGPayloadType(const int8_t payload_type, | |
47 uint32_t* frequency, | |
48 bool* cng_payload_type_has_changed); | |
49 | 46 |
50 int32_t ParseRtpPacket(WebRtcRTPHeader* rtp_header, | 47 int32_t ParseRtpPacket(WebRtcRTPHeader* rtp_header, |
51 const PayloadUnion& specific_payload, | 48 const PayloadUnion& specific_payload, |
52 bool is_red, | 49 bool is_red, |
53 const uint8_t* packet, | 50 const uint8_t* packet, |
54 size_t payload_length, | 51 size_t payload_length, |
55 int64_t timestamp_ms, | 52 int64_t timestamp_ms, |
56 bool is_first_packet) override; | 53 bool is_first_packet) override; |
57 | 54 |
58 int GetPayloadTypeFrequency() const override; | |
59 | |
60 RTPAliveType ProcessDeadOrAlive(uint16_t last_payload_length) const override; | 55 RTPAliveType ProcessDeadOrAlive(uint16_t last_payload_length) const override; |
61 | 56 |
62 bool ShouldReportCsrcChanges(uint8_t payload_type) const override; | 57 bool ShouldReportCsrcChanges(uint8_t payload_type) const override; |
63 | 58 |
64 int32_t OnNewPayloadTypeCreated( | 59 int32_t OnNewPayloadTypeCreated( |
65 const char payload_name[RTP_PAYLOAD_NAME_SIZE], | 60 const char payload_name[RTP_PAYLOAD_NAME_SIZE], |
66 int8_t payload_type, | 61 int8_t payload_type, |
67 uint32_t frequency) override; | 62 uint32_t frequency) override; |
68 | 63 |
69 int32_t InvokeOnInitializeDecoder( | 64 int32_t InvokeOnInitializeDecoder( |
(...skipping 30 matching lines...) Expand all Loading... |
100 uint32_t last_received_frequency_; | 95 uint32_t last_received_frequency_; |
101 | 96 |
102 bool telephone_event_forward_to_decoder_; | 97 bool telephone_event_forward_to_decoder_; |
103 int8_t telephone_event_payload_type_; | 98 int8_t telephone_event_payload_type_; |
104 std::set<uint8_t> telephone_event_reported_; | 99 std::set<uint8_t> telephone_event_reported_; |
105 | 100 |
106 int8_t cng_nb_payload_type_; | 101 int8_t cng_nb_payload_type_; |
107 int8_t cng_wb_payload_type_; | 102 int8_t cng_wb_payload_type_; |
108 int8_t cng_swb_payload_type_; | 103 int8_t cng_swb_payload_type_; |
109 int8_t cng_fb_payload_type_; | 104 int8_t cng_fb_payload_type_; |
110 int8_t cng_payload_type_; | |
111 | |
112 // G722 is special since it use the wrong number of RTP samples in timestamp | |
113 // VS. number of samples in the frame | |
114 int8_t g722_payload_type_; | |
115 bool last_received_g722_; | |
116 | 105 |
117 uint8_t num_energy_; | 106 uint8_t num_energy_; |
118 uint8_t current_remote_energy_[kRtpCsrcSize]; | 107 uint8_t current_remote_energy_[kRtpCsrcSize]; |
119 | 108 |
120 ThreadUnsafeOneTimeEvent first_packet_received_; | 109 ThreadUnsafeOneTimeEvent first_packet_received_; |
121 }; | 110 }; |
122 } // namespace webrtc | 111 } // namespace webrtc |
123 | 112 |
124 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RECEIVER_AUDIO_H_ | 113 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RECEIVER_AUDIO_H_ |
OLD | NEW |