diff options
Diffstat (limited to 'third_party/libwebrtc/audio/channel_receive_frame_transformer_delegate.h')
-rw-r--r-- | third_party/libwebrtc/audio/channel_receive_frame_transformer_delegate.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/third_party/libwebrtc/audio/channel_receive_frame_transformer_delegate.h b/third_party/libwebrtc/audio/channel_receive_frame_transformer_delegate.h index 04ad7c4695..37ff75c2e9 100644 --- a/third_party/libwebrtc/audio/channel_receive_frame_transformer_delegate.h +++ b/third_party/libwebrtc/audio/channel_receive_frame_transformer_delegate.h @@ -12,6 +12,7 @@ #define AUDIO_CHANNEL_RECEIVE_FRAME_TRANSFORMER_DELEGATE_H_ #include <memory> +#include <string> #include "api/frame_transformer_interface.h" #include "api/sequence_checker.h" @@ -48,16 +49,21 @@ class ChannelReceiveFrameTransformerDelegate : public TransformedFrameCallback { // the frame asynchronously. void Transform(rtc::ArrayView<const uint8_t> packet, const RTPHeader& header, - 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 ChannelReceive::OnReceivedPayloadData on the // `channel_receive_thread_`, by calling `receive_frame_callback_`. void ReceiveFrame(std::unique_ptr<TransformableFrameInterface> frame) const; + rtc::scoped_refptr<FrameTransformerInterface> FrameTransformer(); + protected: ~ChannelReceiveFrameTransformerDelegate() override = default; @@ -68,6 +74,7 @@ class ChannelReceiveFrameTransformerDelegate : public TransformedFrameCallback { rtc::scoped_refptr<FrameTransformerInterface> frame_transformer_ RTC_GUARDED_BY(sequence_checker_); TaskQueueBase* const channel_receive_thread_; + bool short_circuit_ RTC_GUARDED_BY(sequence_checker_) = false; }; } // namespace webrtc |