swesterfeld commented on this pull request.
> + }
+
+ for (std::map<std::string, DeviceDetails>::iterator di = devices.begin(); di
!= devices.end(); di++)
+ {
+ const std::string &device_name = di->first;
+ DeviceDetails &details = di->second;
+
+ /* the default device is usually the hardware device, so things should
work as expected
+ * we could show try to show non-default devices as well, but this could
be confusing
+ */
+ if (details.default_device)
+ {
+ Driver::Entry entry;
+ entry.devid = device_name;
+ entry.priority = Driver::JACK;
+ entries.push_back (entry);
There are never two Driver::Entry structures here. There is a loop, so you
might expect it, but basically the code picks the only device which it
considers to be the "default" device from the devices map. It used generate a
list of devices, but I think thats more harmful than it helps, but I left the
devices query and generate list code there, in case we want to do it
differently.
Jack is not very descriptive. Typically we only get the client name "system"
and the port names "playback_1", "playback_2",... and we know that it is a
hardware device. So ok, I'm trying to give all that information to the user in
my new version, but still, we for instance do *not* get a soundcard name or
anything useful. There is a Jack Metadata API which could be used to attach
descriptions to clients, but at least on my system, this returns nothing. So
really what we have is "system", "is hardware device", "2*in 2*out", nothing
really useful for the user.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/tim-janik/beast/pull/128#discussion_r326864728
_______________________________________________
beast mailing list
beast@gnome.org
https://mail.gnome.org/mailman/listinfo/beast