Android gstreamer overflow "warning: received more decoded frames 1 than provided 0"

Yil yilin.langlois at braillenet.org
Tue Aug 22 12:46:15 UTC 2017


Hi everyone,

I'm new to gstreamer and don't know much about audio streaming, so sorry if
this question is too simple. Sorry also if it's already asked (I searched in
this forum and stackoverflow but i don't find anything to resolve the
problem). 

I'm using gstreamer-android1_12_1 in my android application, the pipeline is
built like this : 

gst_bin_add_many(GST_BIN(mPipeline),
                        uridecodebin, audioconvert1, audioresample,
audioconvert2, scaletempo, volume, autoAudioSink, NULL);

The gstreamer library is used in some cpp code and then compiled into static
library to be used by android. 

The android part of application send a mp3 file uri, begin time and end time
to the pipeline sequentially. The problem is, after displaying audio for
about 2 minutes (not fixed, sometime it can be longer), I get these errors
and the lecture is stopped :

8-22 14:07:52.394 1049-2939 E/OMXMaster: A component of name
'OMX.qcom.audio.decoder.aac' already exists, ignoring this one.
08-22 14:07:52.409 1049-1431 W/GStreamer+GST_PADS: 0:01:25.611328124
0xa22980f0
gstpad.c:4109:gst_pad_peer_query:<amcaudiodec-omxgooglemp3decoder2:src>
could not send sticky events
08-22 14:07:52.411 1049-1431 W/GStreamer+audiodecoder: 0:01:25.612762450
0xa22980f0
gstaudiodecoder.c:1263:gst_audio_decoder_finish_frame:<amcaudiodec-omxgooglemp3decoder2>
warning: received more decoded frames 1 than provided 0
08-22 14:07:52.411 1049-1431 W/GStreamer+audiodecoder: 0:01:25.613006591
0xa22980f0
gstaudiodecoder.c:1365:gst_audio_decoder_finish_frame:<amcaudiodec-omxgooglemp3decoder2>
Can't copy metadata because input buffers disappeared
08-22 14:07:52.413 1049-1106 W/CeciReader:
/home/llanglois/workspace/CeciReader/CeciReader_src/core/src/player.cpp(459):void
Braillenet::Player::Message(GstBus*, GstMessage*)() - received more decoded
frames 1 than provided 0
08-22 14:07:52.413 1049-1431 W/GStreamer+amcaudiodec: 0:01:25.615020751
0xa22980f0
gstamcaudiodec.c:675:gst_amc_audio_dec_loop:<amcaudiodec-omxgooglemp3decoder2>
error: Internal data stream error.
08-22 14:07:52.413 1049-1431 W/GStreamer+amcaudiodec: 0:01:25.615081786
0xa22980f0
gstamcaudiodec.c:675:gst_amc_audio_dec_loop:<amcaudiodec-omxgooglemp3decoder2>
error: streaming stopped, reason not-negotiated (-4)
08-22 14:07:52.415 1049-1106 E/ApplicationName:
ApplicationPath/core/src/player.cpp(449):void Player::Message(GstBus*,
GstMessage*)() - Internal data stream error.

However, when I test the compiled library under linux, I don't get those
errors.

I've read 
https://github.com/jojva/gst-plugins-base/blob/master/gst-libs/gst/audio/audio.c
<https://github.com/jojva/gst-plugins-base/blob/master/gst-libs/gst/audio/audio.c> 
, it seems that it's the "received more decoded frames 1 than provided 0"
that cause the stream to stop, but I have no idea about why this happens 

Can anyone help me? It'll be also great if some one has some "tips" for
debug this kind of problems under android studio. Thanks a lot, and have a
nice day.

Regards,
Yilin

  
 




--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Android-gstreamer-overflow-warning-received-more-decoded-frames-1-than-provided-0-tp4684284.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list