|
Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
|
Converts raw recording audio packets into arrangement regions. More...
#include <src/controllers/recording_materializer.h>


Data Structures | |
| struct | CreatedRegion |
Public Types | |
| using | RecordingMode = recording::RecordingMode |
| using | RegionCreationResult = std::optional<CreatedRegion> |
| using | RegionCreator |
| using | RecordingModeProvider = std::function<RecordingMode ()> |
Public Member Functions | |
| RecordingMaterializer (RecordingCoordinator &recording_coordinator, undo::UndoStack &undo_stack, RegionCreator region_creator, RecordingModeProvider recording_mode_provider, QObject *parent=nullptr) | |
Converts raw recording audio packets into arrangement regions.
Subscribes to RecordingCoordinator::audioDataReady and creates or expands AudioRegion objects for each track. The first packet for a given continuous range creates a new region via the RegionCreator callback; subsequent packets append frames to the region's clip.
All region creations within a single recording take (transport rolling to transport stopped) are wrapped in a single undo macro so the entire take can be undone in one step. The macro is finalized when RecordingCoordinator::recordingSessionEnded fires.
Operates entirely on the non-RT (main) thread. The UndoStack is held via QPointer to guard against unexpected destruction ordering.
Definition at line 38 of file recording_materializer.h.
| using zrythm::controllers::RecordingMaterializer::RecordingMode = recording::RecordingMode |
Definition at line 43 of file recording_materializer.h.
| using zrythm::controllers::RecordingMaterializer::RecordingModeProvider = std::function<RecordingMode ()> |
Definition at line 57 of file recording_materializer.h.
| using zrythm::controllers::RecordingMaterializer::RegionCreationResult = std::optional<CreatedRegion> |
Definition at line 50 of file recording_materializer.h.
| using zrythm::controllers::RecordingMaterializer::RegionCreator |
Definition at line 51 of file recording_materializer.h.