Hi Marcel, Scott, On Thu, Feb 28, 2013 at 10:49 PM, Marcel Holtmann <marcel@xxxxxxxxxxxx> wrote: > Hi Scott, > > >>> On Thu, Feb 28, 2013 at 9:51 PM, Scott James Remnant <keybuk@xxxxxxxxxx> wrote: >>>> I'm having some difficulties connecting up A2DP in BlueZ 5.2, and I'm >>>> sure I'm just missing something obvious so would appreciate a second >>>> set of eyes. >>>> >>>> I had thought that to send to an A2DP Sink on a device, I needed an >>>> A2DP Source endpoint at my end, but when I try and register that >>>> endpoint I just get org.bluez.Error.NotSupported >>> >>> Check your /etc/bluetooth/audio.conf, you must have disabled it for some reason. >>> >> >> There isn't an audio.conf shipped with BlueZ 5.2; checking >> profiles/audio/manager.c it has: >> >> static struct enabled_interfaces enabled = { >> .sink = TRUE, >> .source = FALSE, >> .control = TRUE, >> }; >> >> This seems bizarre that registering audio sinks (which I read as >> sending A2DP from the device to the host) is enabled by default, but >> not the more usual registering of an audio source (to send to an A2DP >> sink on the device). Yep, it was the result of changing the roles, I guess we should enable them both by default and if the distro don't want one of them just disable in the config file. > we want to move to a state where BlueZ works out-of-the-box with no extra config files needed. So I think we should just fix this and always have at least one sink and one source present. > > Or if that causes issues, then at least have this depend on PA (or some other audio manager) making that call for us. The default behaviour needs to just work. By default I would enable them both as nowadays both should work, well I guess this is valid for every profile that is not market as experimental it should be enabled by default, so how about the following patch: diff --git a/profiles/audio/manager.c b/profiles/audio/manager.c index 934227e..163fcba 100644 --- a/profiles/audio/manager.c +++ b/profiles/audio/manager.c @@ -72,7 +72,7 @@ static GSList *devices = NULL; static struct enabled_interfaces enabled = { .sink = TRUE, - .source = FALSE, + .source = TRUE, .control = TRUE, }; Or maybe I just remove the whole enabled thing and have the core to handle this. -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html