19#include <condition_variable>
27#include "livekit/audio_frame.h"
28#include "livekit/ffi_handle.h"
29#include "livekit/participant.h"
30#include "livekit/track.h"
31#include "livekit/visibility.h"
73 std::size_t capacity{0};
85 static std::shared_ptr<AudioStream>
fromTrack(
const std::shared_ptr<Track>& track,
const Options& options);
117 void initFromTrack(const std::shared_ptr<
Track>& track, const
Options& options);
121 void onFfiEvent(const proto::FfiEvent& event);
127 mutable std::mutex mutex_;
128 std::condition_variable cv_;
130 std::
size_t capacity_{0};
137 FfiHandle stream_handle_;
140 std::int32_t listener_id_{0};
Represents a raw PCM audio frame with interleaved int16 samples.
Definition audio_frame.h:37
Represents a pull-based stream of decoded PCM audio frames coming from a remote (or local) LiveKit tr...
Definition audio_stream.h:63
static std::shared_ptr< AudioStream > fromTrack(const std::shared_ptr< Track > &track, const Options &options)
Factory: create an AudioStream bound to a specific Track.
AudioStream(const AudioStream &)=delete
No copy, assignment constructors.
static std::shared_ptr< AudioStream > fromParticipant(Participant &participant, TrackSource track_source, const Options &options)
Factory: create an AudioStream from a Participant + TrackSource.
Base class for local and remote room participants.
Definition participant.h:34
Base class for local and remote media tracks.
Definition track.h:77
Public API for the LiveKit C++ Client SDK.
Definition audio_frame.h:25
TrackSource
Source category for a published track.
Definition track.h:43
Event containing an audio frame received from an AudioStream.
Definition audio_stream.h:44
AudioFrame frame
The decoded PCM audio frame.
Definition audio_stream.h:45
Configuration options for AudioStream creation.
Definition audio_stream.h:66
std::string noise_cancellation_options_json
Optional: JSON-encoded configuration for the noise cancellation module.
Definition audio_stream.h:81
std::string noise_cancellation_module
Optional: name of a noise cancellation module to enable for this stream.
Definition audio_stream.h:77