Opus keyframeness
Lee Matthews
lma at spaceapplications.com
Thu May 15 08:38:53 PDT 2014
Hi,
I have wrote an android application that streams audio to another application that is on the same telephone (nexus 5).
So I wrote two gstreamer applications that were compiled with NDK.
The first implements the following pipeline :
openslessrc ! audioconvert ! audio/x-raw-int, format=S16LE, rate=16000 ! opusenc ! oggmux max-delay=0 max-page-delay=0 ! tcpserversink host=0.0.0.0 port=7821
The second application implements the following pipeline :
tcpclientsrc host=localhost port=7821 ! oggdemux ! opusdec ! audioconvert ! openslessink
On logcat, the receiving application produces following error :
W/GStreamer+oggdemux(18273): 0:01:12.769181015 0x77a9b180 gstoggstream.c:212:gst_ogg_stream_packet_is_key_frame Failed to determine keyframeness of audio/x-opus packet
W/GStreamer+oggdemux(18273): 0:01:12.774747735 0x77a9b180 gstoggstream.c:212:gst_ogg_stream_packet_is_key_frame Failed to determine keyframeness of audio/x-opus packet
W/GStreamer+oggdemux(18273): 0:01:12.776453828 0x77a9b180 gstoggstream.c:212:gst_ogg_stream_packet_is_key_frame Failed to determine keyframeness of audio/x-opus packet
W/GStreamer+basesrc(18273): 0:01:12.776725286 0x77a9b180 gstbasesrc.c:2865:gst_base_src_loop:<source> error: Internal data flow error.
W/GStreamer+basesrc(18273): 0:01:12.776865391 0x77a9b180 gstbasesrc.c:2865:gst_base_src_loop:<source> error: streaming task paused, reason not-linked (-1)
I don't understand what it means by failed to determine the keyframeness of the opus packets. I've tried the pipelines on a PC (changing opensles to autoaudiosrc / autoaudiosink) and it seems to work ok. Can anyone offer any pointers ?
Thanks.
Lee
More information about the gstreamer-devel
mailing list