Public Member Functions | |
| void | capture (const float *samples, unsigned int frame_count, unsigned int input_channels) |
| bool | start (const std::string &filepath, unsigned int new_sample_rate, unsigned int new_channels) |
| void | stop () |
| void | write_to_disk () |
| ~Impl () | |
Public Attributes | |
| std::atomic< unsigned int > | active_captures {0} |
| unsigned int | channels = 2 |
| std::atomic< std::uint64_t > | data_size {0} |
| std::atomic< bool > | disk_running {false} |
| std::thread | disk_thread |
| std::atomic< std::uint32_t > | fade_position {0} |
| std::ofstream | file |
| std::atomic< float > | gain {1.0f} |
| std::atomic< bool > | recording {false} |
| std::array< std::int16_t, RING_CAPACITY > | ring {} |
| std::atomic< std::size_t > | ring_head {0} |
| std::atomic< std::size_t > | ring_tail {0} |
| unsigned int | sample_rate = 44100 |
Definition at line 240 of file ACMX2/audio.cpp.
|
inline |
Definition at line 242 of file ACMX2/audio.cpp.
References stop().
|
inline |
Definition at line 286 of file ACMX2/audio.cpp.
References active_captures, fade_position, gain, recording, ring, ring_head, and ring_tail.
|
inline |
Definition at line 244 of file ACMX2/audio.cpp.
References channels, data_size, disk_running, disk_thread, fade_position, file, recording, ring_head, ring_tail, sample_rate, and write_to_disk().
|
inline |
Definition at line 268 of file ACMX2/audio.cpp.
References active_captures, channels, data_size, disk_running, disk_thread, file, recording, and sample_rate.
Referenced by ~Impl().
|
inline |
Definition at line 318 of file ACMX2/audio.cpp.
References data_size, disk_running, file, ring, ring_head, and ring_tail.
Referenced by start().
| std::atomic<unsigned int> acmx2::audio::AudioRecorder::Impl::active_captures {0} |
Definition at line 344 of file ACMX2/audio.cpp.
| unsigned int acmx2::audio::AudioRecorder::Impl::channels = 2 |
Definition at line 349 of file ACMX2/audio.cpp.
| std::atomic<std::uint64_t> acmx2::audio::AudioRecorder::Impl::data_size {0} |
Definition at line 345 of file ACMX2/audio.cpp.
Referenced by start(), stop(), and write_to_disk().
| std::atomic<bool> acmx2::audio::AudioRecorder::Impl::disk_running {false} |
Definition at line 343 of file ACMX2/audio.cpp.
Referenced by start(), stop(), and write_to_disk().
| std::thread acmx2::audio::AudioRecorder::Impl::disk_thread |
Definition at line 354 of file ACMX2/audio.cpp.
| std::atomic<std::uint32_t> acmx2::audio::AudioRecorder::Impl::fade_position {0} |
Definition at line 346 of file ACMX2/audio.cpp.
| std::ofstream acmx2::audio::AudioRecorder::Impl::file |
Definition at line 341 of file ACMX2/audio.cpp.
Referenced by start(), stop(), and write_to_disk().
| std::atomic<float> acmx2::audio::AudioRecorder::Impl::gain {1.0f} |
Definition at line 347 of file ACMX2/audio.cpp.
Referenced by capture().
| std::atomic<bool> acmx2::audio::AudioRecorder::Impl::recording {false} |
Definition at line 342 of file ACMX2/audio.cpp.
| std::array<std::int16_t, RING_CAPACITY> acmx2::audio::AudioRecorder::Impl::ring {} |
Definition at line 351 of file ACMX2/audio.cpp.
Referenced by capture(), and write_to_disk().
| std::atomic<std::size_t> acmx2::audio::AudioRecorder::Impl::ring_head {0} |
Definition at line 352 of file ACMX2/audio.cpp.
Referenced by capture(), start(), and write_to_disk().
| std::atomic<std::size_t> acmx2::audio::AudioRecorder::Impl::ring_tail {0} |
Definition at line 353 of file ACMX2/audio.cpp.
Referenced by capture(), start(), and write_to_disk().
| unsigned int acmx2::audio::AudioRecorder::Impl::sample_rate = 44100 |
Definition at line 348 of file ACMX2/audio.cpp.