41 SoundFileContainer(uint32_t sample_rate, uint32_t num_channels, uint64_t initial_capacity = 0);
53 void setup(uint64_t num_frames, uint32_t sample_rate, uint32_t num_channels);
59 void set_raw_data(
const std::vector<DataVariant>& data);
66 double get_duration_seconds()
const;
92 std::vector<std::vector<double>> channel_data,
93 uint32_t num_channels,
94 uint32_t sample_rate = 48000,
Marker interface for containers backed by file storage (in-memory only).
~SoundFileContainer()=default
File-backed audio container with complete streaming functionality.
Concrete base implementation for streaming audio containers.
std::shared_ptr< SoundFileContainer > make_sound_file_container(std::vector< std::vector< double > > channel_data, uint32_t num_channels, uint32_t sample_rate, OrganizationStrategy org)
Construct a fully populated SoundFileContainer from computed channel data.
OrganizationStrategy
Data organization strategy for multi-channel/multi-frame data.
@ PLANAR
Separate DataVariant per logical unit (LLL...RRR for stereo)