OpenTera WebRTC API (C++) 1.2.6
AudioSink.h
1 #ifndef OPENTERA_WEBRTC_NATIVE_CLIENT_AUDIO_SINK_H
2 #define OPENTERA_WEBRTC_NATIVE_CLIENT_AUDIO_SINK_H
3 
4 #include <api/media_stream_interface.h>
5 
6 namespace opentera
7 {
8  using AudioSinkCallback = std::function<
9  void(const void* audioData, int bitsPerSample, int sampleRate, size_t numberOfChannels, size_t numberOfFrames)>;
10 
15  class AudioSink : public webrtc::AudioTrackSinkInterface
16  {
17  AudioSinkCallback m_onAudioFrameReceived;
18 
19  public:
20  explicit AudioSink(AudioSinkCallback onAudioFrameReceived);
21 
22  void OnData(
23  const void* audioData,
24  int bitsPerSample,
25  int sampleRate,
26  size_t numberOfChannels,
27  size_t numberOfFrames) override;
28  };
29 }
30 
31 #endif
Class that sinks audio data from the WebRTC transport layer and feeds it to the provided callback.
Definition: AudioSink.h:16
void OnData(const void *audioData, int bitsPerSample, int sampleRate, size_t numberOfChannels, size_t numberOfFrames) override
Called by the WebRTC transport layer when audio data is available.
Definition: AudioSink.cpp:24
AudioSink(AudioSinkCallback onAudioFrameReceived)
Construct an AudioStream object.
Definition: AudioSink.cpp:13