Re: Media Fragments - Video fragment temporal loop

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.

Philip

Received on Thursday, 27 February 2014 16:32:06 UTC