feat(capture): bindable capture family — master/tracks/items/razor (M7)
Four wet capture actions route to OfflineRenderBackend (snapshot/restore RENDER_*, 32-bit float), produce a Sample, add to the bank, persist. Pure render_settings maps source mode to RENDER_SETTINGS and parses P_RAZOREDITS (tested). No arrange insertion. True dry deferred to M10.
This commit is contained in:
+18
-1
@@ -74,6 +74,18 @@ target_link_libraries(view_tree PUBLIC view_mode_model)
|
||||
add_library(insert_plan STATIC src/insert_plan.cpp)
|
||||
target_include_directories(insert_plan PUBLIC src)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# 2f) Pure render_settings library — NO REAPER, NO SWELL. The M7 capture-family
|
||||
# logic: source-mode + wet/dry -> RENDER_SETTINGS bit value, P_RAZOREDITS
|
||||
# string -> time ranges + union bound, and the capture-action taxonomy table.
|
||||
# Split out so the fiddly bit-mapping / razor-parsing is unit-tested outside
|
||||
# the DAW; the render-driving + selection reads stay in capture.cpp / main.cpp.
|
||||
# Depends on bank_model for the pure SourceMode enum.
|
||||
# ---------------------------------------------------------------------------
|
||||
add_library(render_settings STATIC src/render_settings.cpp)
|
||||
target_include_directories(render_settings PUBLIC src)
|
||||
target_link_libraries(render_settings PUBLIC bank_model)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# 3) Standalone tests for the pure modules (run without launching REAPER).
|
||||
# ---------------------------------------------------------------------------
|
||||
@@ -106,6 +118,10 @@ add_executable(insert_plan_tests tests/test_insert_plan.cpp)
|
||||
target_link_libraries(insert_plan_tests PRIVATE insert_plan)
|
||||
add_test(NAME insert_plan_tests COMMAND insert_plan_tests)
|
||||
|
||||
add_executable(render_settings_tests tests/test_render_settings.cpp)
|
||||
target_link_libraries(render_settings_tests PRIVATE render_settings)
|
||||
add_test(NAME render_settings_tests COMMAND render_settings_tests)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# 4) The REAPER extension — a loadable module (dlopen'd by REAPER, not linked).
|
||||
# ---------------------------------------------------------------------------
|
||||
@@ -133,8 +149,9 @@ add_library(reaper_reasampler MODULE
|
||||
src/view.cpp
|
||||
src/track_guid.cpp
|
||||
src/actions.cpp
|
||||
src/render_settings.cpp
|
||||
)
|
||||
target_link_libraries(reaper_reasampler PRIVATE bank_model capture_paths peaks bank_grid view_mode_model insert_plan)
|
||||
target_link_libraries(reaper_reasampler PRIVATE bank_model capture_paths peaks bank_grid view_mode_model insert_plan render_settings)
|
||||
target_include_directories(reaper_reasampler PRIVATE ${SDK_INC} ${WDL_INC})
|
||||
set_target_properties(reaper_reasampler PROPERTIES PREFIX "" OUTPUT_NAME "reaper_reasampler")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user