On 24/5/20 8:21 am, Paul Davis wrote:
> I've already tried to point out the basics but I guess my hints weren't
> taken:
>
> * RB uses gstreamer for audio I/O
> * gstreamer has a native JACK module
> * you need to configure gstreamer's JACK module (the buffer sizes in
> particular need attention)
Don't disagree on those points, you're 100% correct on the existence of
a JACK plug-in for GStreamer and GStreamer's role in audio transport for
RhythmBox.
> * you need to tell RB to use the module (or tell gstreamer to do that all
> the time)
This is where we have a sticking point. If there's a way to configure
that in RhythmBox, it is *well* hidden. Fur sure, if you can get into
GStreamer's code and change the flow graph so it terminates with JACK,
then yes, it definitely will stream to JACK directly.
I just had a look at the sources for RhythmBox… it uses autoaudiosink
(see backends/gstreamer/rb-player-gst.c 683-713), which in theory could
use the JACK sink plug-in, and might do so in some circumstances.
The sticking point is
https://gstreamer.freedesktop.org/documentation/autodetect/autoaudiosink.html
provides no way to elect JACK as the preferred output. It's not obvious
how the user directs the audio to their _preferred_ output channel.
--
Stuart Longland (aka Redhatter, VK4MSL)
I haven't lost my mind...
...it's backed up on a tape somewhere.