Index: webrtc/audio_receive_stream.h |
diff --git a/webrtc/audio_receive_stream.h b/webrtc/audio_receive_stream.h |
index 5254c41780abebbba4f887419fb5d1f08f6070f5..fef684de54235cb54f8cb3d0c8abdae7437cbfce 100644 |
--- a/webrtc/audio_receive_stream.h |
+++ b/webrtc/audio_receive_stream.h |
@@ -16,8 +16,8 @@ |
#include <string> |
#include <vector> |
+#include "webrtc/common_types.h" |
#include "webrtc/config.h" |
-#include "webrtc/stream.h" |
#include "webrtc/transport.h" |
#include "webrtc/typedefs.h" |
@@ -31,7 +31,7 @@ class AudioSinkInterface; |
// of WebRtc/Libjingle. Please use the VoiceEngine API instead. |
// See: https://bugs.chromium.org/p/webrtc/issues/detail?id=4690 |
-class AudioReceiveStream : public ReceiveStream { |
+class AudioReceiveStream { |
public: |
struct Stats { |
uint32_t remote_ssrc = 0; |
@@ -104,6 +104,19 @@ class AudioReceiveStream : public ReceiveStream { |
std::map<uint8_t, AudioDecoder*> decoder_map; |
}; |
+ // Starts stream activity. |
+ // When a stream is active, it can receive, process and deliver packets. |
+ virtual void Start() = 0; |
+ // Stops stream activity. |
+ // When a stream is stopped, it can't receive, process or deliver packets. |
+ virtual void Stop() = 0; |
+ // Deliver an incoming RTCP packet. |
+ virtual bool DeliverRtcp(const uint8_t* packet, size_t length) = 0; |
The Sun (google.com)
2016/04/27 19:39:46
These don't even belong here as a virtual methods.
pbos-webrtc
2016/04/28 07:10:13
Done.
|
+ // Deliver an incoming RTP packet. |
+ virtual bool DeliverRtp(const uint8_t* packet, |
+ size_t length, |
+ const PacketTime& packet_time) = 0; |
+ |
virtual Stats GetStats() const = 0; |
// Sets an audio sink that receives unmixed audio from the receive stream. |
@@ -115,6 +128,9 @@ class AudioReceiveStream : public ReceiveStream { |
// is being pulled+rendered and/or if audio is being pulled for the purposes |
// of feeding to the AEC. |
virtual void SetSink(std::unique_ptr<AudioSinkInterface> sink) = 0; |
+ |
+ protected: |
+ virtual ~AudioReceiveStream() {} |
}; |
} // namespace webrtc |