Question for stream buffering.

HoonHee Lee hoonh83.lee at gmail.com
Tue Apr 22 03:16:44 PDT 2014


I have a question for current-level.time and max-level.bytes in queue2 when
streaming case.

I know default current-level.bytes as 2MB in Q2.
But, It is reconfigured by uridecodebin with combined bitrate from audio and
video.
I tested below url.
=> http://media.w3.org/2010/05/sintel/trailer.mp4
Thus, max-level.bytes is modified from 2MB to 150KB based on queue duration
using combined bitrate.

I understand that needed size of data is 150KB for 2 sec buffering.
And I can tell you that needed size of data is 220KB for 3 sec buffering.
*Also, It can be interpreted that if there is 150KB in pipeline, we can play
2 sec at least even though network is not working well.*

But when current data of Q2 is decreased under low-threshold(10%), dequeue
of Q2 is not stopped right now.
Multiqueue keeps to pulling data continuously until their queue reach
maximum data size without reference buffering status. because of this,
percentage of Q2 repeat to increase and decrease for a moment.

Maximum size of Q2 is 150KB and maximum size of multiqueue is 2MB.
IMHO, if maximum size of Q2 is changed, then maximum size of multiqueue need
to change.
*My question is that Keeping size of multiqueue as 2MB in playbin when
streaming case without reference bitrate is normal operation???*

And I have a question for current-level.time.
When I checked current-level.time, it always has same value as 0.
=> queue2 gstqueue2.c:657:update_time_level:<queue2-0> sink
0:00:00.000000040, src 0:00:00.000000040
*Thus, current-level.time property is valid and what dose it mean??*



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Question-for-stream-buffering-tp4666527.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list