<div dir="ltr"><div>Hi,</div><div><br></div><div>I'm modifying Android tutorial 5 for a HLS player. The branch used is 1.16.1.</div><div><br></div><div>I encountered the issue in <a href="https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/189">https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/189</a>, 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.</div><div><br></div><div>Now the player plays HLS links with a constant connection-speed perfectly. But if hlsdemux switches bitrate, buffering drops under 10% immediately.</div><div><br></div><div>I examined the following logs, it seams that gstavauddec cannot drain decoder after switching bitrate, which leads to the buffering problem.</div><div><br></div><div>Is there a bug in gstreamer's code which results in this issue?</div><div><br></div><div>Or is this buffering problem can be solved by turing buffer-duration or buffer-size?<br></div><div><br></div><div>---- Logs starts here ----</div><div><br></div><div><div>19:04:03.201 V    [InulPlayer] setMessage: Buffering 98%</div>19:04:03.204 V    [InulPlayer] setMessage: Buffering 99%<br>19:04:03.961 V    [InulPlayer] setMessage: State changed to PLAYING<br>...<br>19:04:09.139 I  ┌ 0:00:38.359795268 0x8a66ab80 ../ext/hls/gsthlsdemux.c:1601:gst_hls_demux_<br>19:04:09.139 I  ├ change_playlist:<hlsdemux0> Client was on 1500000bps, max allowed is 1134<br>19:04:09.139 I  └ 260bps, switching to bitrate 800000bps<br>...<br>19:04:14.177 W  ┌ 0:00:43.397305312 0x7cbf4db0 ../ext/libav/gstavauddec.c:628:gst_ffmpegaud<br>19:04:14.177 W  └ dec_drain:<avdec_aac0> send packet failed, could not drain decoder<br>19:04:14.957 I    Rkvpu_SendInputData(449): send eos<br>19:04:15.361 V    [InulPlayer] setMessage: Buffering 5%<br>19:04:15.362 V    [InulPlayer] setMessage: Buffering 10%<br>19:04:15.362 V    [InulPlayer] setMessage: Buffering 11%<br>19:04:15.363 V    [InulPlayer] setMessage: Buffering 12%<br>19:04:15.383 I  ┌ 0:00:44.601697021 0x7cb9c980 ../gst/playback/gstplaybin2.c:3779:no_more_p<br>19:04:15.383 I  └ ads_cb:<playbin0> setting custom audio sink <openslessink0><br>19:04:15.383 I  ┌ 0:00:44.603441188 0x7cb9c980 ../gst/playback/gstplaybin2.c:3786:no_more_p<br>19:04:15.383 I  └ ads_cb:<playbin0> setting custom video sink <glimagesinkbin0><br>19:04:15.384 V    [InulPlayer] setMessage: Buffering 13%<br>19:04:15.402 V    [InulPlayer] setMessage: Buffering 14%<br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div><span></span>Sirius Wu<br></div></div></div></div></div></div></div></div></div></div>