Re: Media Fragments - Video fragment temporal loop

On Feb 27, 2014, at 8:31 AM, Philip Jägenstedt <philipj@opera.com> wrote:

> On Thu, Feb 27, 2014 at 10:53 PM, Raphaël Troncy
> <raphael.troncy@eurecom.fr> wrote:
>>> To make it loop exactly between the start time and the end time you
>>> have to integrate with the media framework, otherwise the looping
>>> won't be gapless and it won't loop exactly the same number of samples
>>> each time.
>> 
>> 
>> Let's consider the case <video src="holidays.webm#t=320,960" loop>. The
>> first playback might starts at second 319,56 and ends at 960,14 because you
>> look for the closest I frame. When looping, you will have exactly the same
>> behavior.
> 
> In HTML the fragment start time is integrated as an exact seek to that
> time. But even even if both times were rounded to keyframe times, it
> doesn't really make exact, gapless looping any simpler.
> 
>>> An implementation that doesn't loop accurately doesn't add
>>> anything that you can't do by seeking in JavaScript at the appropriate
>>> time.
>> 
>> 
>> Yes, you can seek in javascript. The use case here is different: you might
>> want to share a media fragment URI and just expect your client to play this
>> fragment (starting at start fragment time and pausing at end fragment time).
> 
> It is the combination of looping and media fragments that I'm most
> skeptical of, and when you have just a URI there can be no looping.
> (If end times with no looping are to be supported some spec still
> needs to say what HTMLMediaElement does when reaching that time and
> when play() is called while paused at that time, but that wasn't what
> the thread started out about.)
> 
>>> I suspect that implementors will say "just use Web Audio API" if
>>> asked to implement accurate looping for <audio src="sound#t=1,2"
>>> loop>.
>> 
>> 
>> What about <video>? And let's not looking at corner cases such as #t=1,2.
>> People are sharing *real* fragments!
> 
> The problem is the same with video, if you want to loop a particular
> scene over and over you don't want a random number of frames from the
> following scene to be shown just before the loop. This will happen if
> the looping isn't implemented inside the media framework.
> 

  For whatever it is worth, I agree with Philip - consistent and accurate gapless looping is not possible without low level support from the media engine.

eric

Received on Thursday, 27 February 2014 17:16:41 UTC