GNOME Bugzilla – Bug 636784
[qtdemux] GST_QUERY_CONVERT implementation for qtdemux
Last modified: 2010-12-11 17:20:16 UTC
EXPECTED: gstreamer qtdemux should support GST_QUERY_CONVERT Use case: HTML5 Streaming firefox/fennec To show the progress of the downloaded content in time lines instead of showing it in size I think this would be really helpful for the video controls, in two ways: 1) The progress bar is currently based on file size, while the thumb is based on time. This seems to work well enough in practice, but I'd suspect that the two measurement systems can be slightly off in some cases (eg, the byte in the middle of the file might not be in the middle timewise). 2) Currently, if you pause a live stream of indefinite length then there's no way to get back to real-time (or indicate where you're at), even though we've buffered up the data. We already can't do anything for the buffering status bar; you just can't really show progress for an infinite/indeterminate stream. But for the playback position, it seems like it would be nice to be able to push the indicator towards the left (backwards), so that the space to the right shows the amount of time that's been buffered but not yet played. -> GST_QUERY_CONVERT is required to query the time for the given offset & vice-versa
Created attachment 176064 [details] [review] implementation of query convert method for qtdemux
commit e7ac799278398fb5f4f0aa5473449ad534fde422 Author: Sebastian Dröge <sebastian.droege@collabora.co.uk> Date: Sat Dec 11 17:49:03 2010 +0100 qtdemux: Check if there's actually a seek table before parsing it commit 5d9c8996da5e86a2faf66c8e94fb9524efbeb7fb Author: Kishore Arepalli <kishore.arepalli@gmail.com> Date: Sat Dec 11 17:46:17 2010 +0100 qtdemux: Implement CONVERT and FORMATS query Fixes bug #636784.
Why don't you use the duration in TIME for the slider btw? And for getting the current playback position in TIME you can use the position query
(In reply to comment #3) > Why don't you use the duration in TIME for the slider btw? And for getting the > current playback position in TIME you can use the position query yes, duration & playback position of the slider is in TIME format only. But this bug is all about the downloaded data position (Buffered data position) in time format. Here is the scenario, if actual size of the file is 1MB & buffered datat is 0.5MB then the buffered data position of slider can not be shown at the mid point of the slider. Because, buffered data may contain meta data & all frame sizes may not be equal. So buffered data size need to be converted to time position in order to get exact status.