[whatwg] Feature Request: Media Elements as Targets for Links

Nils Dagsson Moskopp nils at dieweltistgarnichtso.net
Tue Dec 18 08:01:40 PST 2012


Ian Hickson <ian at hixie.ch> schrieb am Tue, 18 Dec 2012 00:37:12 +0000
(UTC):

> On Sat, 24 Nov 2012, Nils Dagsson Moskopp wrote:
> > 
> > Use Case Description:
> > 
> >   Linking to specific fragments of media is possible via media
> > fragment URIs [1]. However, it is not possible to apply a link to
> > embedded media declaratively, for example to link to a specific
> > point in time for a media element on a page.
> > 
> >   [1] <http://www.w3.org/TR/media-frags/>
> 
> Basically, you're saying you have a Web page with a single "major"
> <video> or <audio> element in it, e.g. the YouTube watch page, and
> you want to be able to link to that page with a fragment identifier
> that causes the video to start playing at a particular time, without
> any scripts involved?

My use case: I want to be able to link to a media element in the
context of a particular page at a particular time via a URI. Starting
playing is something that is already handled by the autoplay attribute,
being able to link to an element at a particular time is the issue at
hand.

Since one can have multiple media elements on a page – for example, in
a blog post – I find it important to be able to address a specific
element, like <http://example.org/podcast.html#episode1&t=01:23>.
(A solution where the fragment addresses the element with parameters
would preserve most current semantics. Would using the ampersand for
parameters be web-compatible?)

Using media fragment URIs for this today I deem not possible in an
interoperable way for at least two reasons: First, losing the context
of the original page – not only prose, but machine-readable annotations
and chapter marks as well. Second, because not all user agents support
royalty free media formats, one cannot just link to a single file and
expect it to work. Using an <audio> or <video> element with multiple
<source> elements I see as the only feasible alternative here.

> Or is this just an internal-to-the-page thing? As in, you want to be
> able to, from within a page, cause a media element to seek to a
> specific time, in response to user interaction, without script?

I am currently trying to do both with scripting. It does work, but not
very well.

> Or is relying on scripting ok?

Scripting, in this context, does make inferring meaning from URLs hard
or even impossible. Not only because everyone is rolling out their own
slightly-incompatible and not-interoperable fragment identifier scheme,
but in a language-theoretic way. As a developer of both HTML producers
and consumers, I try to adhere to the principle of least power.
<http://www.w3.org/DesignIssues/Principles.html#PLP>

Today, if the scripting layer fails or changes, the semantics of the
URL change. Additionally, implementations may be faulty in subtle ways.
For example, if you go to this URL, the script will seek to 0:37, not 02:37.
<http://warumnicht.dieweltistgarnichtso.net/wn-15.html#t=02:37>

I therefore prefer a declarative way of linking to timed resources
embedded in their original context. Working on a polyfill right now.
-- 
Nils Dagsson Moskopp // erlehmann
<http://dieweltistgarnichtso.net>


More information about the whatwg mailing list