Paul Davis
7ac9c7e88a
fix mask used to extract keycode from KeyboardKey object
...
Previous 16 bit mask would do the wrong thing if the keycode was > 65536,
which is not often true but is certainly a valid value (and seen on some
platforms)
2020-05-18 13:33:54 -06:00
Robin Gareus
c8cf84b7f9
Add missing enum (required for rc_config)
2020-05-18 00:28:01 +02:00
Mark Knoop
414ea28e78
Fix repeated toggling of loop mode
...
Calling Session::set_play_loop repeatedly (e.g. LLL) should toggle in and out
of loop play. Previously transport needed to be stopped before loop play could
be started for a second or subsequent time. This uses the loop_changing boolean
to flag that Session::non_realtime_stop should not unset the loop.
Also, Session::non_realtime_stop must reset loop_changing to false after use so
it does not affect the next transport action.
2020-05-17 10:44:33 -06:00
YQ-YSY
d909d0ec0e
New Chinese translation for Ardour 6.0 libs_ardour_po
2020-05-17 14:21:54 +02:00
YQ-YSY
7eac2ed602
New Chinese translation for Ardour 6.0 libs_gtkmm2ext_po
2020-05-17 14:21:54 +02:00
Robin Gareus
087d52a77c
NO-OP: whitespace & const'ness
2020-05-16 21:07:53 +02:00
Paul Davis
b566ba51e0
fix typo
2020-05-16 12:27:45 -06:00
Paul Davis
2ac934c1ae
add explanatory comments regarding SetLoop vs. AutoLoop SessionEvents
2020-05-16 12:24:54 -06:00
Paul Davis
c57df5a7e5
TMM: do not allow changing transport master while slaved (libardour edition)
2020-05-15 21:06:11 -06:00
Paul Davis
58e5c0cfea
Czech translation update from Pavel Frich
2020-05-15 18:41:08 -06:00
Robin Gareus
76c6aab7d1
Fix a memory leak (unsupported LV2 plugin)
2020-05-16 01:37:22 +02:00
Paul Davis
d812c77362
DiskReader: initialize pre-loop-buffer at the right times
2020-05-15 17:28:18 -06:00
Paul Davis
7ed153ca0f
DiskReader: do not initialize pre-loop-buffer in constructor
2020-05-15 17:27:21 -06:00
Porrumentzio
319a7a8bab
All complete. Needs revision using the program 2
2020-05-15 16:10:22 -06:00
Porrumentzio
16ca782000
All complete. Needs revision using the program.
2020-05-15 16:10:22 -06:00
Porrumentzio
e827524e79
all complete except gtk2_ardour eu.po (87%)
2020-05-15 16:10:22 -06:00
Porrumentzio
86c12a2b50
all complete except gtk2_ardour eu.po (81%)
2020-05-15 16:10:22 -06:00
Porrumentzio
431a38f273
all complete except gtk2_ardour eu.po (61%)
2020-05-15 16:10:22 -06:00
Porrumentzio
c85562bc1e
gtk2_ardour eu.po (54%) and libs/ardour eu.po (93%), non complete
2020-05-15 16:10:22 -06:00
Porrumentzio
a1482878ae
gtk2_ardour eu.po (41%) and libs/ardour eu.po (77%), non complete
2020-05-15 16:10:22 -06:00
Porrumentzio
00b8e2e4a8
gtk2_ardour eu.po (41%) and libs/ardour eu.po (77%), non complete
2020-05-15 16:10:22 -06:00
Porrumentzio
1daa275eed
gtk2_ardour eu.po (34%) and libs/ardour eu.po (75%), non complete
2020-05-15 16:10:22 -06:00
Porrumentzio
61ea85a889
gtk2_ardour eu.po (24%) and libs/ardour eu.po (61%), non complete
2020-05-15 16:10:22 -06:00
Porrumentzio
cdec486cff
gtk2_ardour eu.po (15%) and libs/ardour eu.po modified
2020-05-15 16:10:22 -06:00
Porrumentzio
8497b96de3
All files, non complete
2020-05-15 16:10:22 -06:00
Porrumentzio
aae16c0c07
First basque translation, non complete
2020-05-15 16:10:22 -06:00
Paul Davis
a660077c97
PlaybackBuffer: extend API to include write_ptr()
...
It's just useful
2020-05-13 23:55:02 -06:00
Paul Davis
169e7033b6
DiskReader: improve comment
2020-05-13 23:54:24 -06:00
Paul Davis
d776415d54
DiskReader: always reset file_sample[AUDIO] after an overwrite
...
In theory we only need to do this if the use of a loop for a given overwrite differs
from the previous refill or overwrite. However, keeping track of this is hard, and
this way effectively enforces the notion that if we do the arithmetic correct,
for cases where there's no change in the use of a loop location, this ends up
being a no-op (i.e. we are resetting it back to its current value)
2020-05-13 23:54:02 -06:00
Paul Davis
7660ea29d2
avoid off-by-one error when overwriting w/loop
2020-05-13 18:52:29 -06:00
Paul Davis
7232ac2f67
update DiskReader loop delick objects when loop changes
2020-05-13 18:52:29 -06:00
Paul Davis
abbcc755c1
reinstate Session::loop_changing to avoid problems when locating to start of loop for loop play
2020-05-13 18:52:29 -06:00
Robin Gareus
10200f5e29
Fix crash when closing session with VCA slaved solo
...
Session::destroy() calls drop_references(),
which leads to InternalSend::send_from_going_away()
calling InternalSend::propagate_solo().
This looks up the SoloControl to test soloed_by_others(), incl.
and VCA maters. Those VCAs however may already have been destroyed,
and (weak pointer) _master.lock() fails.
2020-05-13 17:58:37 +02:00
Robin Gareus
7289be59c9
Set timecode format from active master only
2020-05-13 17:39:06 +02:00
Paul Davis
7a0427201c
essentially a no-op to just make conditional clearer more explicit
2020-05-12 12:45:39 -06:00
Paul Davis
a9360eb6d6
find a different way to NOT unset play loop when locating to start of loop
2020-05-12 12:45:19 -06:00
Paul Davis
ac915d7d55
NO-OP: remove commented line
2020-05-12 11:34:38 -06:00
Paul Davis
5b7c20453f
DiskReader::overwrite_existing_audio() now only overwrites data that would be read
...
There's no need to fill the whole buffer, because we do not consider the whole buffer readable.
This uses the recently-added PlaybackBuffer::overwritable_at() API to compute the correct
amount of data to overwrite
2020-05-12 11:34:38 -06:00
Paul Davis
af46adc110
NO-OP: expand comments for DiskReader::audio_read() parameters
2020-05-12 11:34:38 -06:00
Paul Davis
f5064fa1ca
after an overwrite with the loop location set, reset the next sample to be read
2020-05-12 11:34:38 -06:00
Paul Davis
156a31ac4f
remove Session::loop_changing
...
Since we now (correctly) do not locate for loop changes, this member
is unnecessary
2020-05-12 11:34:38 -06:00
Paul Davis
d39ae0ea92
remove #ifdef'ed code
2020-05-12 11:34:38 -06:00
Paul Davis
615b1c4a4a
restore mistakenly remove condition for locating
2020-05-12 11:34:38 -06:00
Paul Davis
80fb4fe626
NO-OP: remove newline in function definition
2020-05-12 11:34:38 -06:00
Paul Davis
e9b9f03499
remove debug/information message
2020-05-12 11:34:38 -06:00
Paul Davis
9b3c31f6b9
As in previous commit, never locate because of loop handling
2020-05-12 11:34:38 -06:00
Paul Davis
ef1565d2bf
We use seamless looping always now. Never any need to locate for loop changes
2020-05-12 11:34:38 -06:00
Paul Davis
0326af6f6a
make conditional logic fully explicit
2020-05-12 11:34:37 -06:00
Paul Davis
98d56d6b21
Add API to PlaybackBuffer to compute amount of data that can overwritten
...
The distance is between a given offset in the buffer (probably a
read position at some point in time) and the write ptr. Any data after
the write ptr is "old" and not readable, and thus not worth overwriting
since we would not read it anyway.
2020-05-12 11:34:37 -06:00
Paul Davis
376d4f2e68
LocateRoll session events should always roll-after locate
...
Don't rely on ev->locate_transport_disposition
2020-05-12 11:34:37 -06:00