Transform received audio frames in ChannelReceive.
This change is part of the implementation of the Insertable Streams Web
API: https://github.com/alvestrand/webrtc-media-streams/blob/master/explainer.md
Design doc for WebRTC library changes:
http://doc/1eiLkjNUkRy2FssCPLUp6eH08BZuXXoHfbbBP1ZN7EVk
Bug: webrtc:11380
No-Try: True
Change-Id: I1a7ef9fd8130936176b5a4f78ad835cba52666d0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171873
Commit-Queue: Marina Ciocea <marinaciocea@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Per Ã…hgren <peah@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30961}
diff --git a/api/frame_transformer_interface.h b/api/frame_transformer_interface.h
index 615c974..8f772fe 100644
--- a/api/frame_transformer_interface.h
+++ b/api/frame_transformer_interface.h
@@ -50,6 +50,17 @@
virtual std::vector<uint8_t> GetAdditionalData() const = 0;
};
+// Extends the TransformableFrameInterface to expose audio-specific information.
+class TransformableAudioFrameInterface : public TransformableFrameInterface {
+ public:
+ virtual ~TransformableAudioFrameInterface() = default;
+
+ // Exposes the frame header, enabling the interface clients to use the
+ // information in the header as needed, for example to compile the list of
+ // csrcs.
+ virtual const RTPHeader& GetHeader() const = 0;
+};
+
// Objects implement this interface to be notified with the transformed frame.
class TransformedFrameCallback : public rtc::RefCountInterface {
public: