diff --git a/modules/rtp_rtcp/source/rtp_sender.cc b/modules/rtp_rtcp/source/rtp_sender.cc index 5908a23e26..121efea046 100644 --- a/modules/rtp_rtcp/source/rtp_sender.cc +++ b/modules/rtp_rtcp/source/rtp_sender.cc @@ -417,9 +417,11 @@ bool RTPSender::SendOutgoingData(FrameType frame_type, if (audio_configured_) { TRACE_EVENT_ASYNC_STEP1("webrtc", "Audio", rtp_timestamp, "Send", "type", FrameTypeToString(frame_type)); - + // The only known way to produce of RTPFragmentationHeader for audio is + // to use the AudioCodingModule directly. + RTC_DCHECK(fragmentation == nullptr); result = audio_->SendAudio(frame_type, payload_type, rtp_timestamp, - payload_data, payload_size, fragmentation); + payload_data, payload_size); } else { TRACE_EVENT_ASYNC_STEP1("webrtc", "Video", capture_time_ms, "Send", "type", FrameTypeToString(frame_type)); diff --git a/modules/rtp_rtcp/source/rtp_sender_audio.cc b/modules/rtp_rtcp/source/rtp_sender_audio.cc index cc45a284ef..26108ac062 100644 --- a/modules/rtp_rtcp/source/rtp_sender_audio.cc +++ b/modules/rtp_rtcp/source/rtp_sender_audio.cc @@ -119,8 +119,7 @@ bool RTPSenderAudio::SendAudio(FrameType frame_type, int8_t payload_type, uint32_t rtp_timestamp, const uint8_t* payload_data, - size_t payload_size, - const RTPFragmentationHeader* fragmentation) { + size_t payload_size) { // From RFC 4733: // A source has wide latitude as to how often it sends event updates. A // natural interval is the spacing between non-event audio packets. [...] @@ -223,21 +222,10 @@ bool RTPSenderAudio::SendAudio(FrameType frame_type, packet->SetExtension(frame_type == kAudioFrameSpeech, audio_level_dbov); - if (fragmentation && fragmentation->fragmentationVectorSize > 0) { - // Use the fragment info if we have one. - uint8_t* payload = - packet->AllocatePayload(1 + fragmentation->fragmentationLength[0]); - if (!payload) // Too large payload buffer. - return false; - payload[0] = fragmentation->fragmentationPlType[0]; - memcpy(payload + 1, payload_data + fragmentation->fragmentationOffset[0], - fragmentation->fragmentationLength[0]); - } else { - uint8_t* payload = packet->AllocatePayload(payload_size); - if (!payload) // Too large payload buffer. - return false; - memcpy(payload, payload_data, payload_size); - } + uint8_t* payload = packet->AllocatePayload(payload_size); + if (!payload) // Too large payload buffer. + return false; + memcpy(payload, payload_data, payload_size); if (!rtp_sender_->AssignSequenceNumber(packet.get())) return false; diff --git a/modules/rtp_rtcp/source/rtp_sender_audio.h b/modules/rtp_rtcp/source/rtp_sender_audio.h index 92c9615ead..16648cd136 100644 --- a/modules/rtp_rtcp/source/rtp_sender_audio.h +++ b/modules/rtp_rtcp/source/rtp_sender_audio.h @@ -39,8 +39,7 @@ class RTPSenderAudio { int8_t payload_type, uint32_t capture_timestamp, const uint8_t* payload_data, - size_t payload_size, - const RTPFragmentationHeader* fragmentation); + size_t payload_size); // Store the audio level in dBov for // header-extension-for-audio-level-indication.