13
0
Commit Graph

36970 Commits

Author SHA1 Message Date
bb4394b8a5
Use pipe through ffmpeg, use glib to write output
This is intended to fix an issue with odd filenames on Windows,
particularly forward and backwards single quotes as part of a filename.

Previously the filename was passed as parameter to ffmpeg as
UTF-8 string to SystemExec::make_wargs, which is fragile on Windows
in absence of a execve() call.
2023-01-04 17:26:43 +01:00
16a476ee5f
Fix foldback bus duplication
signal_sources() can traverse upwards. e.g. when creating a
foldback send to the master-bus, everything that feeds the master
also feeds the foldback (even if there is no direct send).
2023-01-04 04:00:36 +01:00
41325a75fe
Add a debug message to track down crash scanning LV1 plugins 2023-01-03 02:26:50 +01:00
0f22f5e319
Identify surfaces by ID (not name) 2023-01-02 21:15:19 +01:00
Marijn Kruisselbrink
bf7f6386d5
Re-enable lib/ardour/test/session_test.
This test seems to be compiling and passing just fine (when run in
isolation), so turning it back on seems like a good idea. To make it
pass when run as part of the full ardour test suite, this does remove
the WebSockets control surface from the control surfaces test though, as
that control surface messes up the event loop of the main thread, which
would otherwise cause use-after-free crashes in the session test.
2023-01-02 20:31:12 +01:00
208aedaeaa
Fix "Invalid Source port" error with default config 2023-01-02 04:27:20 +01:00
Olivier HUMBERT
4cb67f83a7
Make some string translatable 2023-01-01 19:41:43 +01:00
Olivier HUMBERT
84640d4f7d
Update French translation 2023-01-01 19:36:11 +01:00
Marijn Kruisselbrink
7a4ddf5cce
Group system ports by common prefix.
Extra "other" ("External") ports were already being grouped by their
common prefix into bundles to better display ports coming from different
jack clients. This commit factors out that logic into a separate method
to also apply this logic to extra "system" ("Hardware") ports. This way
hardware ports from different devices/clients (for example when using
pipewire as jack backend) are grouped by device rather than all being
listed as one bundle.
2023-01-01 18:19:14 +01:00
d0b95b7685
Do not truncate pretty bundle names
This also fixes a potential buffer overlow on Windows.
Window _snprintf does not null terminate the string in case
the formatted length is longer than the given buffer size.
http://msdn.microsoft.com/en-us/library/2ts7cx93%28v=vs.110%29.aspx
(mingw's uses _vsnprintf under the hood which is also affected).

Alternatively we could rely in g_snprintf() to truncate the
string.
2023-01-01 17:44:43 +01:00
Marijn Kruisselbrink
ef253d3fc9
Use pretty names of ports not just for mono bundles, but also stereo.
Session::setup_bundles() creates mono and stereo bundles from hardware
inputs and outputs. For mono bundles the name of the bundle was based on
the pretty name of the port (if the port has a pretty name), however
stereo bundles always used the indices of ports to make the name.
When using pipewire (or otherwise having multiple jack clients exposing
physical ports) the indices are even less meaningful than otherwise (as
different devices could appear in arbitrary order), so also using pretty
names for stereo bundles makes the UI less confusing in places where
these bundle names are used (for example the menu when clicking on an
IOButton).
2023-01-01 17:26:14 +01:00
345008bdfd
Ardour celebrates the arrival of 2023 2023-01-01 01:30:20 +01:00
0be3a509af
MIDI-Tracer: allow to directly trace physical ports 2022-12-31 03:09:24 +01:00
78ec9294e1
TempoDialog: MIDI port fixes
* hide TempoTap MIDI port
* fall back to port-name (without client name) if pretty-name
  is unset.
* use namespace
2022-12-31 02:53:12 +01:00
54e1827e79
Allow to tap-tempo using a MIDI keyboard 2022-12-31 00:07:09 +01:00
1ad22e9ce9
Make engine dialog non-resizable (remove resize workarounds) 2022-12-30 23:43:35 +01:00
24597de7a2
Make RDF info/warning messages translatable 2022-12-30 19:10:07 +01:00
a4036b9590
Set non_rt_pending no-roll parameter (previously uninitialized) 2022-12-30 19:09:16 +01:00
b6a4a6a84f
Sort simple-export range-list by range start-time. 2022-12-30 16:21:59 +01:00
36d640c8bc
Yet another attempt to fix Windows/LADSPA presets 2022-12-29 19:02:15 +01:00
55ac803701
Fix Windows builds (user_cache_directory) 2022-12-29 18:29:51 +01:00
4bb7e43008
x-platform LADSPA user preset files
This fixes saving/loading custom user presests on Windows
2022-12-29 18:22:48 +01:00
3ba999b9d7
Also use LDRF (and aubio4) on Windows 2022-12-29 01:58:11 +01:00
58ade46de3
Fix loading LADSPA RDF files x-platform
Searchpath on Windows uses backslash as folder separator,
however file URLs use forward-slash file://C:/foo/bar/
2022-12-28 20:06:00 +01:00
42abd51e40
Ardour on Linux requires libX11 regardless of lxVST
The requirement is due to XResetScreenSaver
2022-12-28 20:04:17 +01:00
a4d9fb4935
Fix saving favorite plugin order
This broke in 7942897d93. Clearing the list triggered
favorite_plugins_deleted() for each plugin. This resulted
in an empty list being saved to disk.
2022-12-27 16:53:01 +01:00
b0b20ed1ed
There are only 6 user visible columns 2022-12-27 16:35:20 +01:00
b458eee160
Plugin Selector: allow to sort by Name
Previously the first 2 columns were Fav/Hide radio options.
Now there is only a boolean Favorite checkbox.
2022-12-27 16:32:47 +01:00
478338854d
Improve peak-file debug output, print affected source-name 2022-12-27 13:35:53 +01:00
475063c24d
ALSA: update endianess conversion functions
This follows upstream zita-alsa-pcmi-0.6.1
2022-12-27 13:32:31 +01:00
ac30964d67 remove debug output 2022-12-26 14:03:32 -06:00
a5378e559a dsp_stats: aesthetic tweaks to text and padding 2022-12-26 07:53:34 -06:00
d5160b6e8c export_dialog: use more sensible padding around the preset widgets 2022-12-26 07:53:34 -06:00
140b373cac
Clean up ExportAnalysis code
* only zero limiter_pk array on initialization
  (other data is explicitly initialized)
* resize peak-data vector to at least 800 bins
2022-12-26 14:34:25 +01:00
7b3cbaf68f
Inform User when audio-read failed (debug builds)
Previously AudioPlaylist::read always returned the timecnt that
it was supposed to read into the buffer, regardless if the given
number of samples was read. The check in DiskReader::refill_audio
`if (nread != to_read)` never triggered.

This can happen when changing an audio-region's time-domain to
music-time (glue to bars/beats). Region-length (beats converted
to samples) can exceed the actual audio-source length (in samples).
2022-12-26 13:40:05 +01:00
7e9f29e888
FP8: directly cancel solo (do not rely on GUI) 2022-12-26 13:33:19 +01:00
Olivier HUMBERT
9c0fb6e49a
Update French translation 2022-12-26 11:51:16 +01:00
037de53c3f bbt_marker_dialog: improve layout + spacings 2022-12-21 19:22:29 -06:00
b2a6fb70b4 remove debug output 2022-12-20 22:01:41 -07:00
e2d265c018 tempo edit: use ::replace_tempo() instead of ::set_tempo() after dialog 2022-12-20 21:56:37 -07:00
253419a321 tempo marker drag: update GUI during drag 2022-12-20 21:54:59 -07:00
ed7e0a4166 snap: add missing break statements. oops! 2022-12-20 21:54:35 -07:00
818c30a98d temporal: add optional with_reset arg to all map ::remove_*() methods 2022-12-20 21:54:05 -07:00
0ee0226776 temporal: no stretching a tempo that is the last one or precedes a BBT marker 2022-12-20 21:33:13 -07:00
d3dd865093 temporal: NOOP - add helpful comment 2022-12-20 21:31:31 -07:00
ae36f8e445 temporal: provide TempoMap::replace_tempo() 2022-12-20 21:31:02 -07:00
033b4c5152 temporal: fix implementation of TempoMap::copy_points()
This could re-order the map in the presence of BBT markers
2022-12-20 21:29:44 -07:00
e32d4f7b71 try to get BBTRulerDrag to work on all platforms 2022-12-19 15:03:57 -07:00
b48821887d restore primary-drag in BBT ruler function 2022-12-19 13:35:27 -07:00
90ae38e353 note create drag: tweak to fix dragging when snap is not bars 2022-12-19 12:19:05 -07:00