168c439ee8
Fix vfork wrapper for macOS
2023-03-25 07:46:47 +01:00
4b5333a721
Disambiguate export formats with different encoder settings
...
Disambiguate export formats with different encoder
qualities, sample-formats or settings (wav/bwav).
This allows to export multipe mp3 with different bitrates.
2023-03-25 06:43:46 +01:00
3715154a8e
Allow concurrent child processes
...
When multiple child processes are running, closing the
stdin of one child did not send EOF or cause POLLNVAL,
as long as a dup()'ed filedes still existed.
This fixes an issue when running an mp3 encoder while the
video monitor is visible, and will allow to concurrently
run multiple mp3 encoders or other child processes.
Previously this caused Ardour to hang indefinitely in CmdPipeWriter
```
_proc->close_stdin();
_proc->wait(); // << here
```
2023-03-25 06:43:46 +01:00
70df054d68
try to patch over some type confusion
2023-03-24 17:27:49 -06:00
5ce0bfb4e2
Update Lua documentation script to use std:: instead of boost
2023-03-25 00:07:56 +01:00
f2c309d7de
Use std pointers in objective C files
2023-03-25 00:07:56 +01:00
8075b55919
Fix amiguity in atomic load
...
operator _Tp() const volatile _NOEXCEPT {return load();}
operator _Tp() const _NOEXCEPT {return load();}
2023-03-25 00:07:56 +01:00
b18fe9f412
add method accidentally removed during rebase with spp-atomic
2023-03-24 16:35:18 -06:00
9232f41176
Remove debug output
2023-03-24 23:20:50 +01:00
dad40f960d
fixup various mistakes when rebasing boost->std shared_ptr changes
2023-03-24 14:19:16 -06:00
720102f98a
modify API of MIDI Clock ticker to use ProcessedRange
...
This solves the faulty MClk output when we locate due to a loop end.
2023-03-24 14:19:16 -06:00
bcc1aeeb86
change MidiClockTicker to use Session& not Session*
2023-03-24 14:19:16 -06:00
33047987a7
add ProcessedRanges element to Session and update its contents appropriately
2023-03-24 14:19:16 -06:00
af37406ed8
new data type to describe sample ranges processed during Session::process
2023-03-24 14:19:16 -06:00
5dbbac0bc2
temporal: operator<< for Range and RangeList
2023-03-24 14:19:16 -06:00
47416743fb
license info: add clarification re: plugins to About dialog
...
Also, it's "pointer-to-const-char"
2023-03-24 14:19:16 -06:00
0aea2a2ef8
tempo twisting: GUI improvements, including undo/redo logic
2023-03-24 14:19:16 -06:00
393929a55b
tempo twisting: various fixes and improvements to core logic
2023-03-24 14:19:16 -06:00
0cf199ac48
remove another ancient binding set
2023-03-24 14:19:16 -06:00
565fb90ccb
remove old SAE keybindings
2023-03-24 14:19:16 -06:00
10b845b1ca
fix mapping begin/commit/abort logic in editor
2023-03-24 14:19:16 -06:00
edca8209aa
canvas: fix debug output after auto-fication
2023-03-24 14:19:16 -06:00
77cefd7721
new tempo mapping drag objects (API and implementation)
2023-03-24 14:19:16 -06:00
6d5273e514
tempo marker drag: change type of stored bpm
2023-03-24 14:19:16 -06:00
7040ad1b74
temporal: API changes and implementation to support new twist operation
...
this includes using two different omega members for tempo objects,
a change that likely will not persist beyond the merge back to master.
2023-03-24 14:19:16 -06:00
3036414e08
tempo: auto-fication of another loop
2023-03-24 14:19:16 -06:00
37cae2f971
canvas: when an item is shown, potentially pick it as the current item
2023-03-24 14:19:16 -06:00
b36a0493df
tempomap: use muldiv_round() not int_div_round to avoid errors
2023-03-24 14:19:16 -06:00
20349d868e
fix various aspects of display of mapping cursor
...
This might all change in the future, or even go away.
2023-03-24 14:19:16 -06:00
74225f07de
nominally handle popup menu for mapping cursor item (unfinished)
2023-03-24 14:19:16 -06:00
ca8127c458
add canvas item type for mapping cursor
2023-03-24 14:19:16 -06:00
ab3fe29afd
no need for a temporary ptr-to-tempo map
2023-03-24 14:19:16 -06:00
f96a0d0ddf
editor: adding handling of mid-mapping tempo redisplay
2023-03-24 14:19:16 -06:00
604984ae6f
enums: add new enum for MappingCursorItem type
2023-03-24 14:19:16 -06:00
aa3cbd8791
editor: expand handling of tempo-redisplay in middle of drag
2023-03-24 14:19:16 -06:00
ece438d73d
editor: refactor snap to bbt to allow specifying non-grid-setting grid type
2023-03-24 14:19:16 -06:00
49439d2acf
ensure that the ask-about-quit dialog is shown at mouse-position
2023-03-24 14:19:16 -06:00
868d606d16
track mouse motion in the mapping bar
...
This does not yet snap to BBT positions
2023-03-24 14:19:16 -06:00
5e01503a56
add a new canvas-based cursor for mapping
2023-03-24 14:19:16 -06:00
d61a741e4b
mapping bar: some mouse handling
2023-03-24 14:19:16 -06:00
e9b83e0f1d
it's only debug info but let's get it right
2023-03-24 14:19:16 -06:00
18249f7395
ardour has a new ruler
...
The mapping bar is where tempo mapping operations will take place
2023-03-24 14:19:16 -06:00
38bb89c110
more functional tempo mapping
...
TempoMarker drag modifies tempo (and thus beat-time positions
and durations).
BBTRuler drag modifies the map but not positions/durations
2023-03-24 14:19:16 -06:00
45490bf43f
more functional tempo mapping
2023-03-24 14:19:16 -06:00
21074b189a
remove unnecessary virtual (no default value involved)
2023-03-24 14:19:15 -06:00
d25a615e20
API development for time domain flipping (GUI edition)
2023-03-24 14:19:15 -06:00
d513653912
API development for time domain flipping
2023-03-24 14:19:15 -06:00
1cd1430975
skeleton code for global temporal domain change during tempo mapping
2023-03-24 14:19:15 -06:00
5c69aef56e
add memory fences to try to avoid a conceptual memory ordering issue between capture & the butler
2023-03-24 14:19:15 -06:00
4137271188
int62_t: use explicit memory order for all loads and stores
...
Also, improve implementation of CAS loops for operator <X>=.
Ideally, we ought to test this on ARM, both before and after.
2023-03-24 14:19:15 -06:00