gstavauddec could not drain decoder after hlsdemux switching bitrate

Sirius Wu ccwu660601 at gmail.com
Tue Nov 12 10:33:25 UTC 2019


Hi Nicolas,

The "send packet failed" message is already fixed in the following commit.

gst-libav at 6382be09
<https://gitlab.freedesktop.org/gstreamer/gst-libav/commit/6382be0996ee92f8214c89d2028c28dc4806c84e>

But the buffering drop still need to be investigate.

I'm doing the investigation myself, could you give me some hint?

Nicolas Dufresne <nicolas at ndufresne.ca> 於 2019年11月9日 週六 下午9:19寫道:

> Le samedi 09 novembre 2019 à 20:07 +0800, Sirius Wu a écrit :
> > Hi,
> >
> > I'm modifying Android tutorial 5 for a HLS player. The branch used is
> > 1.16.1.
> >
> > I encountered the issue in
> > https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/189,
> > so I do not use omx.google.aac.decoder. I do not know why the bug is
> > still not fixed on 1.16.1. I use that from libav instead.
>
> Feel free to submit a merge request if you have a solution for this.
> Note that omx.google.* are software CODECs, so they aren't always worth
> using over ffmpeg.
>
> >
> > Now the player plays HLS links with a constant connection-speed
> > perfectly. But if hlsdemux switches bitrate, buffering drops under
> > 10% immediately.
> >
> > I examined the following logs, it seams that gstavauddec cannot drain
> > decoder after switching bitrate, which leads to the buffering
> > problem.
> >
> > Is there a bug in gstreamer's code which results in this issue?
> >
> > Or is this buffering problem can be solved by turing buffer-duration
> > or buffer-size?
> >
> > ---- Logs starts here ----
> >
> > 19:04:03.201 V    [InulPlayer] setMessage: Buffering 98%
> > 19:04:03.204 V    [InulPlayer] setMessage: Buffering 99%
> > 19:04:03.961 V    [InulPlayer] setMessage: State changed to PLAYING
> > ...
> > 19:04:09.139 I  ┌ 0:00:38.359795268 0x8a66ab80
> > ../ext/hls/gsthlsdemux.c:1601:gst_hls_demux_
> > 19:04:09.139 I  ├ change_playlist:<hlsdemux0> Client was on
> > 1500000bps, max allowed is 1134
> > 19:04:09.139 I  └ 260bps, switching to bitrate 800000bps
> > ...
> > 19:04:14.177 W  ┌ 0:00:43.397305312 0x7cbf4db0
> > ../ext/libav/gstavauddec.c:628:gst_ffmpegaud
> > 19:04:14.177 W  └ dec_drain:<avdec_aac0> send packet failed, could
> > not drain decoder
>
> This needs investigating. Seems like an interesting bug.
>
> > 19:04:14.957 I    Rkvpu_SendInputData(449): send eos
> > 19:04:15.361 V    [InulPlayer] setMessage: Buffering 5%
> > 19:04:15.362 V    [InulPlayer] setMessage: Buffering 10%
> > 19:04:15.362 V    [InulPlayer] setMessage: Buffering 11%
> > 19:04:15.363 V    [InulPlayer] setMessage: Buffering 12%
> > 19:04:15.383 I  ┌ 0:00:44.601697021 0x7cb9c980
> > ../gst/playback/gstplaybin2.c:3779:no_more_p
> > 19:04:15.383 I  └ ads_cb:<playbin0> setting custom audio sink
> > <openslessink0>
> > 19:04:15.383 I  ┌ 0:00:44.603441188 0x7cb9c980
> > ../gst/playback/gstplaybin2.c:3786:no_more_p
> > 19:04:15.383 I  └ ads_cb:<playbin0> setting custom video sink
> > <glimagesinkbin0>
> > 19:04:15.384 V    [InulPlayer] setMessage: Buffering 13%
> > 19:04:15.402 V    [InulPlayer] setMessage: Buffering 14%
> >
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



-- 
Sirius Wu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20191112/d7328bda/attachment.html>


More information about the gstreamer-devel mailing list