View Issue Details

IDProjectCategoryView StatusLast Update
0008041ardourfeaturespublic2022-11-21 18:40
Reporterunfa Assigned Tox42  
PrioritynormalSeverityminorReproducibilityhave not tried
Status resolvedResolutionno change required 
PlatformPCOSLinux 
Product Version5.12 
Summary0008041: Switch to Dummy back-end when exporting in non-realtime using JACK
DescriptionWhen i export files from Ardour 5.12 on Windows (using PortAudio driver) - the OS sounds still work fine.

When I do the same on Linux using JACK back-end - Ardour switches JACK to freewheel mode for export (unless realtime export is used).

This causes all other sound to be muted, and fro example playing a video in the browser will play at much higher speed and without sound.

It's nice to be able to watch a video while waiting for the export to complete, but regardless of reasons - I see this as a flaw.

I've managed to work this around by switching to a Dummy backend before exporting.

If Ardour would switch to Dummy whenever exporting in non-realtime mode, the export would work as usual, but the user could still use their JACK server normally, play some music or watch a video while waiting for Ardour to finish.

Not to mention if I'm on a VoIP call with a co-worker and I need to export a sound effect for them, my sound will cut off and that's bad.

The Dummy back-end seems like a simple solution. I could do this manually, but it'd be fantastic if Ardour could do it on it's own.

I see that this might be a bit OS-specific, but this would be a huge life quality improvement for me, and (I guess) other people using Ardour as their daily driver for sound work under Linux. It's not an issue on Windows, and I have no idea how it behaves on Mac.

What do you think?
TagsNo tags attached.

Activities

x42

2020-04-22 13:38

administrator   ~0023854

The whole point of Ardour/JACK is to allow using external applications in an Ardour Session. Those also need to be included in the export, and switching to Dummy backend would exclude those.

If you don't need this feature, don't use JACK. Like on Windows with PortAudio, prefer Ardour/ALSA (which is also a tad more efficient) or Ardour6/Pulseaudio (if you don't need to record).
Alternatively export using the commandline util /opt/Ardour-5.12.0/bin/ardour5-export (that does use the dummy backend).

unfa

2020-04-22 16:21

reporter   ~0023859

Oh - I see. I have always kept my Ardour sessions self-contained. Even in the old times of Ardour 2 whenever I used Hydrogen for drums, I would record Hydrogen's output into an audio track first before exporting my Ardour session. I never thought I could route in external software and keep it working. I have heard about using outboard gear (hence the Real-time option), but it never occurred to me I could also use external software.

I use JACK over ALSA, because I often use multiple programs at once, and also I need to use FreeSound very often or reference videos online - if I were to use ALSA, I'd not be able to share my audio I/F with any other program.

I'll see if I can export with the command line utility, though I'll miss the export analysis and summary features. Though maybe I'll create PNG files if I configure that? I doubt that, since these seem to be screenshots of the UI.

Thanks!

paul

2020-04-22 16:37

administrator   ~0023860

As x42 noted, if you don't need to record, A6 has a PulseAudio backend that does just playback, and allows you to share the interface with other Pulse-using applications.

unfa

2020-04-22 20:31

reporter   ~0023869

Oh! I missed that! That's interesting - I think it can simplify the work a lot of many people who only sequence and edit, not record!
So far I haven't switched all my work to Ardour6, as there's some bugs I'm waiting to see fixed.

PulseAudio support is mighty neat though! I wonder why doesn't it support capture though?

x42

2020-04-22 20:55

administrator   ~0023870

Pulseaudio cannot offer reliable capture latency, nor any accurate latency information. So recording overdubs is not possible.

It's also not really suitable for any kind of reliable pro-audio work. The main motivation for this was to offer bluetooth support for guys mixing while traveling.

unfa

2020-04-23 11:18

reporter   ~0023873

I see. That's gonna be pretty neat.

I wouldn't mind even flawed PulseAudio capture possibility, as for example when I'm doing sound design I record various elements and then edit everything, so timing of my capture is not important.
Though It'd be important that the captured audio is 24-bit (I am not sure if PulseAudio supports more than 16-bit samples?)

Also -I wonder if with the commandline export I can export only selected timeline ranges?

When iterating over sound effects I very often have dozens of CD ranges in my session and I usually export a few at a time to update them.
If I save my session with chosen export ranges, will the commandline utility export only those?

unfa

2020-04-23 11:37

reporter   ~0023874

I've just tried exporting this session with ardour5-export, but it ended up in a SegFault, so I need to resort to the regular export.
I can try and get a backtrace, but I don't know how to run it in gdb with approperiate commandline arguments.

unfa

2020-04-23 11:39

reporter   ~0023875

Oh, ok seems like Calf plug-ins can't live in the headless version of Ardour:

ardour5-export[174528]: segfault at 7f7cb00010d8 ip 00007f7c8154c16f sp 00007f7cb00010e0 error 6 in calf.so[7f7c81505000+e6000]

I wonder why is that, but well - that's not Ardour's fault.

unfa

2020-04-23 11:44

reporter   ~0023876

I've reported the problem to Calf:
https://github.com/calf-studio-gear/calf/issues/249

x42

2020-04-23 16:55

administrator   ~0023880

Re: "as for example when I'm doing sound design I record various elements and then edit everything, so timing of my capture is not important."

I'm wary of opening Pandora's box. Once that would be possible users will expect it to work. Nobody reads the small print "only use for XXX". Pulse also re-samples when using multiple devices, and all capture settings including volume, are outside or Ardour's control. It is really not suitable to be used in a DAW context.

With some luck pipewire will eventually solve this. PW also supports MIDI (Pulse doesn't).

x42

2022-11-21 18:40

administrator   ~0026923

The original idea "Switch to Dummy back-end when exporting in non-realtime using JACK" excludes other JACK apps from being exported.
And using external 3rd party apps is the main reason why JACK exists, so this is counterproductive.

Issue History

Date Modified Username Field Change
2020-04-22 08:51 unfa New Issue
2020-04-22 13:38 x42 Note Added: 0023854
2020-04-22 16:21 unfa Note Added: 0023859
2020-04-22 16:37 paul Note Added: 0023860
2020-04-22 20:31 unfa Note Added: 0023869
2020-04-22 20:55 x42 Note Added: 0023870
2020-04-23 11:18 unfa File Added: Screenshot_20200423_131352-1.png
2020-04-23 11:18 unfa Note Added: 0023873
2020-04-23 11:37 unfa Note Added: 0023874
2020-04-23 11:39 unfa Note Added: 0023875
2020-04-23 11:44 unfa Note Added: 0023876
2020-04-23 16:55 x42 Note Added: 0023880
2022-11-21 18:40 x42 Assigned To => x42
2022-11-21 18:40 x42 Status new => resolved
2022-11-21 18:40 x42 Resolution open => no change required
2022-11-21 18:40 x42 Note Added: 0026923