Play AAC stream from bluetooth avdtpsrc

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Play AAC stream from bluetooth avdtpsrc

Hello together,

i am trying to play an AAC audio stream from iOS devices using gstreamer.

All works fine, with SBC using this pipeline:
gst-launch-1.0 avdtpsrc transport=/org/bluez/hci0/dev_B8_53_AC_AA_2E_3D/fd91
! rtpsbcdepay ! sbcparse ! sbcdec ! autoaudiosink
For sure, it also works with:
gst-launch-1.0 avdtpsrc transport=/org/bluez/hci0/dev_B8_53_AC_AA_2E_3D/fd91
! decodebin ! autoaudiosink

If i change my configuration to use AAC instead, i got the following error:
gst-launch-1.0 avdtpsrc transport=/org/bluez/hci0/dev_B8_53_AC_AA_2E_3D/fd92
! decodebin ! autoaudiosink
Pipeline is live and does not need PREROLL ...
0:00:02.469912440  2909 0x7fadb4005400 FIXME                default
gstutils.c:3963:gst_pad_create_stream_id_internal:<avdtpsrc0:src> Creating
random stream-id, consider implementing a deterministic way of creating a
0:00:02.480073774  2909 0x7fadb4005400 ERROR               aacparse
gstaacparse.c:353:gst_aac_parse_sink_setcaps:<aacparse0> Need codec_data for
raw AAC
0:00:02.480109901  2909 0x7fadb4005400 WARN               decodebin
gstdecodebin2.c:2502:connect_pad:<decodebin0> Couldn't set aacparse0 to
0:00:02.629883689  2909      0x23b7320 ERROR                  avdtp
gstavdtputil.c:141:gst_avdtp_connection_acquire: Failed to try_acquire
transport stream: GDBus.Error:org.bluez.Error.NotAvailable: Operation
currently not available
Setting pipeline to PLAYING ...

I also tried several manual set up pipelines, e.g.:
gst-launch-1.0 avdtpsrc transport=/org/bluez/hci0/dev_B8_53_AC_AA_2E_3D/fd92
! rtpmp4adepay ! avdec_aac ! audioconvert ! autoaudiosink

From the original commit of AAC support in avdtpsrc, there is the following
> For testing, I used an Apple iPad.
> To play the stream, one needs to decode the LATM header and pass the raw
> stream
> to avdec_aac. There is no additional header like ADTS in the data
> encapsulated
> in LATM.

A tried several combinations of depayloaders avdec_aac, avdec_aac_latm.
However, i did not succeed. Does anyone know how to setup a working pipeline
for AAC audio with bluetooth?

Thanks a lot!

Sent from:
gstreamer-devel mailing list
[hidden email]