diff options
Diffstat (limited to 'third_party/libwebrtc/audio/channel_send_frame_transformer_delegate.h')
-rw-r--r-- | third_party/libwebrtc/audio/channel_send_frame_transformer_delegate.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/third_party/libwebrtc/audio/channel_send_frame_transformer_delegate.h b/third_party/libwebrtc/audio/channel_send_frame_transformer_delegate.h index eb0027e4c8..97fc14f737 100644 --- a/third_party/libwebrtc/audio/channel_send_frame_transformer_delegate.h +++ b/third_party/libwebrtc/audio/channel_send_frame_transformer_delegate.h @@ -12,6 +12,7 @@ #define AUDIO_CHANNEL_SEND_FRAME_TRANSFORMER_DELEGATE_H_ #include <memory> +#include <string> #include "api/frame_transformer_interface.h" #include "api/sequence_checker.h" @@ -34,7 +35,8 @@ class ChannelSendFrameTransformerDelegate : public TransformedFrameCallback { uint8_t payloadType, uint32_t rtp_timestamp_with_offset, rtc::ArrayView<const uint8_t> payload, - int64_t absolute_capture_timestamp_ms)>; + int64_t absolute_capture_timestamp_ms, + rtc::ArrayView<const uint32_t> csrcs)>; ChannelSendFrameTransformerDelegate( SendFrameCallback send_frame_callback, rtc::scoped_refptr<FrameTransformerInterface> frame_transformer, @@ -57,12 +59,15 @@ class ChannelSendFrameTransformerDelegate : public TransformedFrameCallback { const uint8_t* payload_data, size_t payload_size, int64_t absolute_capture_timestamp_ms, - uint32_t ssrc); + uint32_t ssrc, + const std::string& codec_mime_type); // Implements TransformedFrameCallback. Can be called on any thread. void OnTransformedFrame( std::unique_ptr<TransformableFrameInterface> frame) override; + void StartShortCircuiting() override; + // Delegates the call to ChannelSend::SendRtpAudio on the `encoder_queue_`, // by calling `send_audio_callback_`. void SendFrame(std::unique_ptr<TransformableFrameInterface> frame) const; @@ -75,6 +80,7 @@ class ChannelSendFrameTransformerDelegate : public TransformedFrameCallback { SendFrameCallback send_frame_callback_ RTC_GUARDED_BY(send_lock_); rtc::scoped_refptr<FrameTransformerInterface> frame_transformer_; rtc::TaskQueue* encoder_queue_ RTC_GUARDED_BY(send_lock_); + bool short_circuit_ RTC_GUARDED_BY(send_lock_) = false; }; std::unique_ptr<TransformableAudioFrameInterface> CloneSenderAudioFrame( |