Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home for webmproject.org
« Groups Home
WebM metadata
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  Messages 1 - 25 of 79 - Collapse all  -  Translate all to Translated (View all originals)   Newer >
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
James Zern  
View profile  
 More options Jan 18 2012, 3:20 pm
From: James Zern <jz...@google.com>
Date: Wed, 18 Jan 2012 12:20:38 -0800
Local: Wed, Jan 18 2012 3:20 pm
Subject: [RFC] WebM metadata
A metadata specification for WebM has been a long requested feature.
We plan on addressing this in the near term, but wanted to have a
general discussion before we propose a solution.

One requirement we have is the support for temporal metadata to store
things like geolocation data, e.g., GPS coordinates. The other is the
traditional global metadata, e.g., title, author, etc.
Initially we were thinking to define a separate standard for both
global and temporal, which would be stored in its own track. After a
bit of discussion it came to feel as though global was merely a
special case of the temporal, which we knew we wanted.

Consider some examples:
i) A video clip with an audio soundtrack that changes sources through the clip.
With one audio and one video track it would be simple enough to have
an artist label that covered each or both. With multiple audio sources
in one track you could similarly have an artists tag. This though
begins to decouple the attribution for each segment.
ii) Appending 2 or more unrelated videos.
This is a similar problem. You get into an issue with having to merge
metadata from each segment into one global blob. At that point which
takes precedence as the 'artist' for the clip?
iii) Live presentations.
Once more the performer, etc. can change throughout the clip, like a
shoutcast stream.

It is true that a global mapping could be constructed to handle the
above cases, but it seems that it might be simpler to have a timed
metadata track that could indicate the duration that the value applied
to. Global or live metadata could simply have no duration to indicate
it was for the entire clip or until a new value was encountered (for
the live case).

Does anyone have any thoughts on this? Is there any reason we
shouldn’t explore a single metadata solution using a timed track?


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Basil Mohamed Gohar  
View profile  
 More options Jan 18 2012, 3:31 pm
From: Basil Mohamed Gohar <abu_huray...@hidayahonline.org>
Date: Wed, 18 Jan 2012 15:31:11 -0500
Local: Wed, Jan 18 2012 3:31 pm
Subject: Re: [RFC] WebM metadata
On 01/18/2012 03:20 PM, James Zern wrote:

(Note, I'm neither a codec nor a container format developer, just a
geeky user, so take all of this with that knowledge first.)

I see the argument for the global metadata being a special case of the
temporal, but in the global case, there is usually a high likelihood
that the metadata is always in the same place (e.g., either at the
beginning or the end of the file) which yields a much, much simpler
method of extraction for client software.

In the temporal case, I suppose it could be constructed in such a way
that, in the case that it doesn't real change, then it would effectively
behave as the global case - that is, it would always be located in the
same place, and remain easily extracted.

I would suggest something along the lines of temporal data being
considered updates to existing metadata, and if a previous value is not
marked as having been replaced by subsequent metadata, then it should
persist as long as its associated tracks do.

Finally, and I'm sure this has already been considered, but what already
exists within the Matroska world with regards to metadata?  I would
strongly urge that whatever is developed be made as compatible as
possible with what is already out there.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
James Zern  
View profile  
 More options Jan 18 2012, 7:39 pm
From: James Zern <jz...@google.com>
Date: Wed, 18 Jan 2012 16:39:07 -0800
Local: Wed, Jan 18 2012 7:39 pm
Subject: Re: [RFC] WebM metadata
On Wed, Jan 18, 2012 at 12:31, Basil Mohamed Gohar

Semantically this sounds similar to special casing the global
metadata. It sounds as though you're more concerned about where the
base data lives in the file and how to extract that.

> Finally, and I'm sure this has already been considered, but what already
> exists within the Matroska world with regards to metadata?  I would
> strongly urge that whatever is developed be made as compatible as
> possible with what is already out there.

Matroska defines a hierarchical tag system [1], which allows tags to
be attached to tracks or chapters. Note chapters are not part of the
webm specification currently.
I agree that using an existing system for which there are tools to
manipulate the data is usually best, which is part of the reason for
this thread. With tags, for instance though, I think we'd have to
extend them to reference clusters or blocks. That or an excessive
amount of chapters might be needed.
Beyond this, will all tag systems, Matroska tags, XMP, etc. we will
need to have a list of well-known entities as well as define new
entities where we see a need. In this case some of the tools for
extraction will need to be updated as well. Given we're talking about
a web format, should we use these as a reference and provide a
solution that fits better in this framework rather than worry about
compatibility?

[1]: http://matroska.org/technical/specs/tagging/index.html


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Silvia Pfeiffer  
View profile  
 More options Jan 18 2012, 7:51 pm
From: Silvia Pfeiffer <silviapfeiff...@gmail.com>
Date: Thu, 19 Jan 2012 11:51:52 +1100
Local: Wed, Jan 18 2012 7:51 pm
Subject: Re: [RFC] WebM metadata
Talking about metadata and timed metadata: have you considered how
this hooks into what is being done in HTML5?

There, we have defined WebVTT as a file format for external
time-synchronized data (including captions, subtitles, descriptions,
and - yes - general metadata).

In the past it has been stated that the idea for captions in WebM
would be to use the solution that is being used in HTML5 and
encapsulate it into WebM, i.e. encapsulate WebVTT into WebM. Since
WebVTT is similar to SRT and there are existing specs for how to
encapsulate SRT into Matroska, putting WebVTT into WebM should be
possible in a similar manner.

I would be totally supportive of solving the timed metadata challenge
with WebVTT and by creating a WebVTT encapsulation spec for WebM.

As for the non-timed metadata: Matroska also has a solution for
header-style metadata, i.e. metadata such as id3 tags that need to be
available to seach in apps such as iTunes. I would suggest building on
that existing solution.

HTH.

Cheers,
Silvia.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Frank Galligan  
View profile  
 More options Jan 18 2012, 9:46 pm
From: Frank Galligan <fgalli...@google.com>
Date: Wed, 18 Jan 2012 21:46:23 -0500
Local: Wed, Jan 18 2012 9:46 pm
Subject: Re: [RFC] WebM metadata

> I see the argument for the global metadata being a special case of the
> temporal, but in the global case, there is usually a high likelihood
> that the metadata is always in the same place (e.g., either at the
> beginning or the end of the file) which yields a much, much simpler
> method of extraction for client software.

I agree, if you are only looking at supporting global metadata vs temporal
metadata. If you want to support both then having global metadata be a
special case of temporal is most likely simpler because you only need to
support one method of extraction/insertion vs two if they are use separate
storing methods.

> In the temporal case, I suppose it could be constructed in such a way
> that, in the case that it doesn't real change, then it would effectively
> behave as the global case - that is, it would always be located in the
> same place, and remain easily extracted.

Yeah, that is the idea. If you wanted some temporal metadata to behave like
global metadata you would set the time from the start of the file to the
duration of the file.

> I would suggest something along the lines of temporal data being
> considered updates to existing metadata, and if a previous value is not
> marked as having been replaced by subsequent metadata, then it should
> persist as long as its associated tracks do.

One issue with this is that there will be temporal metadata that should
only be valid during playback at certain times and not at setup time. The
other issue is implementation wise we will still be using two different
formats to store the data.

> Finally, and I'm sure this has already been considered, but what already
> exists within the Matroska world with regards to metadata?  I would
> strongly urge that whatever is developed be made as compatible as
> possible with what is already out there.

As James mentioned Tags would work for global metadata but not for temporal
metadata. Silvia mentioned WebVTT, which I think would be a nice fit for
temporal metadata. It is very close to SRT format which is already in use
by Matroska for some subtitles today.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Basil Mohamed Gohar  
View profile  
 More options Jan 18 2012, 11:34 pm
From: Basil Mohamed Gohar <abu_huray...@hidayahonline.org>
Date: Wed, 18 Jan 2012 23:34:18 -0500
Local: Wed, Jan 18 2012 11:34 pm
Subject: Re: [RFC] WebM metadata
On 01/18/2012 07:51 PM, Silvia Pfeiffer wrote:

I don't know the specifics of WebVTT nor SRT, but if what Silvia has
described really is feasible, then it sounds great.  I would break it
down as follows:

For "global" metadata, we use Matroska's existing features for
"tag"-style information.  This would require basically zero modification
to existing implementations that already support.

For temporal metadata, as this is a new feature, this WebVTT
encapsulation seems to be appropriate.  It would not conflict with
anything, and support for temporal metadata already requires new code to
be written, and it would be one less bit of technology to have to deal
with (namely, HTML5 is already pushing for this format for metadata of a
similar nature).

Now, does the HTML5 spec itself mandate that the metadata actually be
external to the stream, or just that it be stored separately in WebVTT
format (allowing it to be encapsulated and/or extracted)?  This is more
a question for Silvia.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
James Zern  
View profile  
 More options Jan 19 2012, 1:31 am
From: James Zern <jz...@google.com>
Date: Wed, 18 Jan 2012 22:31:20 -0800
Local: Thurs, Jan 19 2012 1:31 am
Subject: Re: [RFC] WebM metadata
Thanks for adding the background to the thread.

On Wed, Jan 18, 2012 at 16:51, Silvia Pfeiffer

<silviapfeiff...@gmail.com> wrote:
> Talking about metadata and timed metadata: have you considered how
> this hooks into what is being done in HTML5?

> There, we have defined WebVTT as a file format for external
> time-synchronized data (including captions, subtitles, descriptions,
> and - yes - general metadata).

Yes this is what initially got our discussion going. Using something
along these lines we'd then only need one implementation for metadata
rather than two.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Vladimir Pantelic  
View profile  
 More options Jan 19 2012, 4:28 am
From: Vladimir Pantelic <vlado...@gmail.com>
Date: Thu, 19 Jan 2012 10:28:47 +0100
Local: Thurs, Jan 19 2012 4:28 am
Subject: Re: [RFC] WebM metadata

James Zern wrote:
> Does anyone have any thoughts on this? Is there any reason we
> shouldn t explore a single metadata solution using a timed track?

In 99% of all use cases, you will have only global metadata, so
whatever you do, please make sure that global metadata, aka artist,
album, song title can be extracted extremely fast and easily.

This means making it part of the matroska header section and not
having to parse a data track to access that. Even for a video
that has N different performers, it's annoying to have to seek
through a potentially huge file to access the metadata only,
the file could be on some slow HTTP connection after all..


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Silvia Pfeiffer  
View profile  
 More options Jan 19 2012, 10:39 pm
From: Silvia Pfeiffer <silviapfeiff...@gmail.com>
Date: Fri, 20 Jan 2012 14:39:58 +1100
Local: Thurs, Jan 19 2012 10:39 pm
Subject: Re: [RFC] WebM metadata
On Thu, Jan 19, 2012 at 3:34 PM, Basil Mohamed Gohar

The TextTrack API for HTML5 supports both in-band and external text
tracks. WebVTT is the format that all browsers have basically agreed
to implement support for as the baseline external text track file
format. On top of that, the TextTrack API also interfaces with text
tracks provided in-band. They are basically mapped to the same data
structure as is being parsed from a WebVTT file. What format browsers
use there is still up in the air, but since we have the choice for
WebM it makes sense to pick WebVTT itself.

For some side information:
1. I've heard MPEG people talk about defining a encapsulation means
for WebVTT in MPEG-4, too.
2. I also think that WebVTT in Ogg would be simple and should be
supported. We could even re-use KATE tracks for WebVTT encapsulation.

Cheers,
Silvia.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Silvia Pfeiffer  
View profile  
 More options Jan 19 2012, 11:13 pm
From: Silvia Pfeiffer <silviapfeiff...@gmail.com>
Date: Fri, 20 Jan 2012 15:13:09 +1100
Local: Thurs, Jan 19 2012 11:13 pm
Subject: Re: [RFC] WebM metadata

On Thu, Jan 19, 2012 at 1:46 PM, Frank Galligan <fgalli...@google.com> wrote:

>> I see the argument for the global metadata being a special case of the
>> temporal, but in the global case, there is usually a high likelihood
>> that the metadata is always in the same place (e.g., either at the
>> beginning or the end of the file) which yields a much, much simpler
>> method of extraction for client software.

> I agree, if you are only looking at supporting global metadata vs temporal
> metadata. If you want to support both then having global metadata be a
> special case of temporal is most likely simpler because you only need to
> support one method of extraction/insertion vs two if they are use separate
> storing methods.

I think it would be a mistake to deal with them in the same manner.

Applications such as iTunes and other media players as well as asset
management systems typically find metadata in a defined location in a
media file without having to seek, without having to parse more than
the first few KB of data, and without having to parse all text tracks
to determine where to find metadata.

Thus, the disadvantages of having a single method of dealing with
metadata in my mind far outweigh the advantages. Header-style metadata
(i.e. "tags") and timed metadata are two fundamentally different types
of data and should be handled in two separate ways.

In Ogg we solved the problem of having changing file-wide metadata by
allowing chaining of media files, i.e. essentially concatenating media
resources. I am not sure that would be possible with WebM nor whether
that is a good solution. I would actually much prefer introducing the
concept of playlists for this situation and managing it in this way.
It is a problem that I don't think we should solve on the file level.

Cheers,
Silvia.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ralph Giles  
View profile  
 More options Jan 24 2012, 8:56 pm
From: Ralph Giles <gi...@xiph.org>
Date: Wed, 25 Jan 2012 14:56:37 +1300
Local: Tues, Jan 24 2012 8:56 pm
Subject: Re: [RFC] WebM metadata
On 20 January 2012 17:13, Silvia Pfeiffer <silviapfeiff...@gmail.com> wrote:

> Header-style metadata
> (i.e. "tags") and timed metadata are two fundamentally different types
> of data and should be handled in two separate ways.

I generally agree with this. File level metadata like title, creator,
language, license, etc. have a different use case. Moreover, Matroska
already has an established tag mechanism which many media players
already know. I am in favour of using that encapsulation for WebM over
a custom format, or the XMP blob idea mentioned on IRC.

That doesn't give a fixed offset for the metadata, but one can at
least require it to be at the start (or end) of the file so the
buffering requirements are minimal. The ebml parser subset needed is
quite small.

For Ogg we did define a baseline semantic vocabulary for tags. I think
that was helpful for interoperability, so I would support publishing
such a set for WebM. Afaict Matroska itself doesn't itself do so?

Metadata of this type is generally for the convenience of indexers
(online or in a media player). For example, our media code in Firefox
completely ignores the tags. I'm not sure it's especially necessary to
provide an interface for this either, since one can parse the resource
directly in javascript.

I'm also excited to hear you're interested in timed metadata. For that
I would point out the kind=metadata variant of webvtt.

Timed metadata is always going to be a niche application, and needs
specific application support to be useful. We're already implementing
webvtt as a format for HTML5 <track> elements, so it's easy to attach
to files; the specification also allows embedding the same data in the
media resource itself. The most webby thing to do would be to use the
same format for subtitles and for timed metadata so we content can use
the same interface to support whatever it wants to. Right now the
interpretation of kind=metadata webvtt is completely up to the
application, but for interoperability we could suggest a general
framework, like json cue text with a defined semantic vocabulary for
common use cases like geolocation, camera parameters and so on.

FWIW,
 -r

--
Ralph Giles
Xiph.org Foundation for open multimedia


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Frank Galligan  
View profile  
 More options Jan 25 2012, 10:23 am
From: Frank Galligan <fgalli...@google.com>
Date: Wed, 25 Jan 2012 10:23:32 -0500
Local: Wed, Jan 25 2012 10:23 am
Subject: Re: [RFC] WebM metadata

CIL

Matroska does define a baseline of tags.
http://matroska.org/technical/specs/tagging/index.html Scroll down to the
"Official Tags" section.

The plan is to define a set of standard metadata for WebM, both global and
temporal.

> Metadata of this type is generally for the convenience of indexers
> (online or in a media player). For example, our media code in Firefox
> completely ignores the tags. I'm not sure it's especially necessary to
> provide an interface for this either, since one can parse the resource
> directly in javascript.

I'm not sure about this either. That will be up to the clients whether they
want to expose this information.

> I'm also excited to hear you're interested in timed metadata. For that
> I would point out the kind=metadata variant of webvtt.

Good to know (my vote too by the way). We first wanted to get everyone's
opinion on the idea of just changing all metadata to be stored temporally.
The next step I think will be to decide how to store the metadata within
the WebM files. Then define a standard set of metadata.

> Timed metadata is always going to be a niche application, and needs
> specific application support to be useful. We're already implementing
> webvtt as a format for HTML5 <track> elements, so it's easy to attach
> to files; the specification also allows embedding the same data in the
> media resource itself.

This was one of the pros for storing all data temporally (and if we store
it as WebVTT) we will pretty much get all metadata supported very quickly
by the browsers.

The most webby thing to do would be to use the

> same format for subtitles and for timed metadata so we content can use
> the same interface to support whatever it wants to. Right now the
> interpretation of kind=metadata webvtt is completely up to the
> application, but for interoperability we could suggest a general
> framework, like json cue text with a defined semantic vocabulary for
> common use cases like geolocation, camera parameters and so on.

The thinking was we would standardize a set of metadata for temporal as
well.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Basil Mohamed Gohar  
View profile  
 More options Jan 25 2012, 10:38 am
From: Basil Mohamed Gohar <abu_huray...@hidayahonline.org>
Date: Wed, 25 Jan 2012 10:38:12 -0500
Local: Wed, Jan 25 2012 10:38 am
Subject: Re: [RFC] WebM metadata
On 01/25/2012 10:23 AM, Frank Galligan wrote:

I know that WebM is frequently touted as a Web format, and sometimes I
worry that this loses sight of the fact that it will be used, regardless
of the intentions of the original implementers, as a normal file format
as well.  Why I bring this is up is that a lot of the decisions related
to WebM seem to be focused on its usage as planned in the web browser,
and sometimes that is to the detriment of usages outside of that framework.

For example, as Matroska already has a lot of metadata support, and
implementations of Matroska already have good support for that, it seems
like it should be paramount that this also be utilized as extensively as
possible within WebM so as to make support for WebM within the wider
Matroska infrastructure as easy as possible.  Yes, WebM has the
distinction of being a Web-prioritized format, but I don't think this
should come at the expense of compatibility with other implementations
of the parent format.

What I mean is, if something that this metadata proposal hopes to
achieve can already be done by existing implementations, and doing so
would basically require little to no work to support, then it should be
the goal to make it be so.  If it's not possible (as opposed to being
just not favorable), then fine, we should go ahead and propose new
ideas, but still in a way that wouldn't be "annoying" to existing
implementations.

I hope I don't sound overly hostile, but I want WebM to reach the widest
audience possible, and there is an installed base of Matroska users and
developers already existing, and just dumping a new set of requirements
to implement that incompatible will just cause an annoyance and, in my
humble opinion, will stifle adoption of an otherwise outstanding free
format.

<key points>
So, to summarize my concerns, it seems that the temporal metadata
appears to be a novel idea, and there is nothing significantly
standardized or pre-existing within the Matroska world to support it,
and HTML5 already is standardizing on WebVTT, and there exists an
encapsulation of WebVTT for Matroska already (I hope I got that right),
so the way forward for this seems clear - use and/or build on the
existing support for WebVTT in Matroska, in a way that is compliant with
the spirit and the letter of the HTML5 standard for temporal metadata.

As for so-called global and non-temporal metadata, I find (again, as a
non-developer and a user only) no reason to not use Matroska's existing
infrastructure for metadata/tag support.  It already works, and doing
something else seems foolish.  On top of that, Matroska *does* seem to
have published some guidelines as to a standard set of metadata, and we
should take as much as possible from that, so as to take advantage of
existing infrastructure.
</key points>

Could someone better in the know point out to me what, if anything,
seems faulty in the above two paragraphs that needs to be addressed, or
is a case of "devil in the details", and we all agree on the basic idea
of not reinventing the wheel, just making sure it's round enough? :)


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
James Zern  
View profile  
 More options Jan 25 2012, 2:09 pm
From: James Zern <jz...@google.com>
Date: Wed, 25 Jan 2012 11:09:57 -0800
Local: Wed, Jan 25 2012 2:09 pm
Subject: Re: [RFC] WebM metadata
On Wed, Jan 25, 2012 at 07:38, Basil Mohamed Gohar

Yes I think so. We can now handle these in two separate tracks and
eventually start a new discussion around webvtt metadata and how we
might extend or update the global entries using it.

That's fair. Some of the initial debate was focused on making life
easier for the browser in extracting/parsing, that's why we brought
the discussion here. I think the cons presented currently out weigh
any pros (presumed or otherwise), however.

> I hope I don't sound overly hostile, but I want WebM to reach the widest
> audience possible, and there is an installed base of Matroska users and
> developers already existing, and just dumping a new set of requirements
> to implement that incompatible will just cause an annoyance and, in my
> humble opinion, will stifle adoption of an otherwise outstanding free
> format.

> <key points>
> So, to summarize my concerns, it seems that the temporal metadata
> appears to be a novel idea, and there is nothing significantly
> standardized or pre-existing within the Matroska world to support it,
> and HTML5 already is standardizing on WebVTT, and there exists an
> encapsulation of WebVTT for Matroska already (I hope I got that right),

Not quite yet, that will be coming in parallel with some of this.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Basil Mohamed Gohar  
View profile  
 More options Jan 25 2012, 2:23 pm
From: Basil Mohamed Gohar <abu_huray...@hidayahonline.org>
Date: Wed, 25 Jan 2012 14:23:08 -0500
Local: Wed, Jan 25 2012 2:23 pm
Subject: Re: [RFC] WebM metadata
On 01/25/2012 02:09 PM, James Zern wrote:
> On Wed, Jan 25, 2012 at 07:38, Basil Mohamed Gohar
> <abu_huray...@hidayahonline.org> wrote:

>> <key points>
>> So, to summarize my concerns, it seems that the temporal metadata
>> appears to be a novel idea, and there is nothing significantly
>> standardized or pre-existing within the Matroska world to support it,
>> and HTML5 already is standardizing on WebVTT, and there exists an
>> encapsulation of WebVTT for Matroska already (I hope I got that right),
> Not quite yet, that will be coming in parallel with some of this.

Right.  I misremembered something Silvia mentioned earlier in the
thread.  *SRT* has an encapsulation, WebVTT is *like* SRT, so it should
be *possible*.  I hope I got *that* right now...


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ralph Giles  
View profile  
 More options Jan 25 2012, 5:18 pm
From: Ralph Giles <gi...@xiph.org>
Date: Thu, 26 Jan 2012 11:18:54 +1300
Local: Wed, Jan 25 2012 5:18 pm
Subject: Re: [RFC] WebM metadata
On 26 January 2012 08:23, Basil Mohamed Gohar

<abu_huray...@hidayahonline.org> wrote:
> Right.  I misremembered something Silvia mentioned earlier in the
> thread.  *SRT* has an encapsulation, WebVTT is *like* SRT, so it should
> be *possible*.  I hope I got *that* right now...

That's my understanding as well. There's no proposal for how exactly
to encapsulate webvtt in webm, but we should should be able to reuse
the current matroska srt mapping:
http://matroska.org/technical/specs/subtitles/srt.html

An open question is how to handle any of the positioning directives.

 -r

--
Ralph Giles
Xiph.org Foundation for open multimedia


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Silvia Pfeiffer  
View profile  
 More options Jan 25 2012, 9:25 pm
From: Silvia Pfeiffer <silviapfeiff...@gmail.com>
Date: Thu, 26 Jan 2012 13:25:41 +1100
Local: Wed, Jan 25 2012 9:25 pm
Subject: Re: [RFC] WebM metadata
On Thu, Jan 26, 2012 at 2:38 AM, Basil Mohamed Gohar
<abu_huray...@hidayahonline.org> wrote:

<...>

So, there are several things at work here:

Firstly we want to make sure WebM has the best possible solution both
for global and timed metadata.
Secondly we want to make sure that it works both with the Web and with
Desktop applications.
Thirdly it would be nice to be able to re-use existing tools that had
been built for Matroska also for WebM.

I must admit that I am not completely opposed to reinventing the wheel
if that means we get a better wheel. I.e. I would take the first goal
over the third goal. However, it has to be very clear that it is
indeed a better solution. For example, if WebM had a much better way
of storing global metadata than the existing Matroska way, I would go
for it - since we want to look forward to the future with WebM and not
back.

Now, what criteria would we use for deciding whether one thing is
better than another? I have some that I care about - do add your own,
cause I'm sure I've overlooked a few.

I believe a good solution must satisfy the following:
* it works well with what HTML5 has specified
* it does not conflict with how existing tools work for Matroska
* the way to use it is obvious: e.g. global metadata is not used for
the same purpose as timed metadata
* it does not confuse people as to what to do: e.g. there is only one
way of doing global metadata

I can't think of anything else right now, so do add your own.

So, back to the technical discussion about global/mutiplexed metadata:

* I agree that WebVTT's timed metadata mechanism is the way to go for
timed metadata in WebM, simply because that's how we do it in HTML5
and there is no mechanism for that in Matroska yet. Thus, as we
determine how to encapsulate captions, subtitles and descriptions in
WebM, we should encapsulate WebVTT metadata in exactly the same way
and use that as the solution for timed metadata in WebM.

* Global metadata is a different issue: it really depends on what we
want to be able to handle.

Is the global metadata that we want to support per track? If so, then
it relates to more than just the text tracks and needs to also be able
to be carried for audio and video tracks. In Ogg we do this with
skeleton by having message header fields, and also by having
VorbisComment headers on each track. This is useful because as you rip
out certain tracks from a multitrack resource, you retain the metadata
that relates to the individual track.

Or is it really global metadata that we want to support here? Then it
should logically be carried independently of a track (independently of
WebVTT tracks, too, which can have their own separate metadata). In
Ogg we don't actually have a means for such global metadata.

Matroska's existing metadata (tagging) mechanism is very general: it
allows to provide tags that either belong to a track, to the full
resource, to a chapter, to a edition, or an attachment (IIUC). This
may be too generic for us to support in WebM - in particular it seems
to allow mixing track-based metadata with truely global metadata,
which may be too confusing.

So, overall, I don't think we've properly specified the problem yet
that we want to solve.

Also note that in HTML5 we actually don't have a way to expose global
metadata to JavaScript (not truely global, not track-based global
metadata): there is no API. The only thing that HTML5 knows right now
is timed metadata through WebVTT. I would like to see such an API,
which would also be used to e.g. expose ID3 tags for MPEG-based
content to JavaScript, but I don't have high hopes for it because
there also is no API to expose image metadata (e.g. EXIM) to
JavaScript. The point that has been made in the past is that if
JavaScript needs access to such metadata, the server should extract it
from the file and hand it to the Web app rather than JS doing it
itself.

Cheers,
Silvia.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
James Zern  
View profile  
 More options Jan 26 2012, 2:48 am
From: James Zern <jz...@google.com>
Date: Wed, 25 Jan 2012 23:48:52 -0800
Local: Thurs, Jan 26 2012 2:48 am
Subject: Re: [RFC] WebM metadata
On Wed, Jan 25, 2012 at 14:18, Ralph Giles <gi...@xiph.org> wrote:
> On 26 January 2012 08:23, Basil Mohamed Gohar
> <abu_huray...@hidayahonline.org> wrote:

>> Right.  I misremembered something Silvia mentioned earlier in the
>> thread.  *SRT* has an encapsulation, WebVTT is *like* SRT, so it should
>> be *possible*.  I hope I got *that* right now...

> That's my understanding as well. There's no proposal for how exactly
> to encapsulate webvtt in webm, but we should should be able to reuse
> the current matroska srt mapping:
> http://matroska.org/technical/specs/subtitles/srt.html

> An open question is how to handle any of the positioning directives.

A thread regarding WebVTT encapsulation was started here [1].

[1]: https://groups.google.com/a/webmproject.org/group/webm-discuss/browse...


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Frank Galligan  
View profile  
 More options Jan 26 2012, 8:46 am
From: Frank Galligan <fgalli...@google.com>
Date: Thu, 26 Jan 2012 08:46:37 -0500
Local: Thurs, Jan 26 2012 8:46 am
Subject: Re: [RFC] WebM metadata

Hi Basil,

I don't think there is anything wrong with what you are saying. I think
most of us go out of our way to make sure any new features are compatible
with what is out there. I know when I'm looking at new features I always
think how it is going to effect current tools and regularly shoot down
ideas that would force a change to existing muxers/demuxers if there is a
viable alternative. With that being said sometimes you need to look at
ideas that might changes some things if you think in the long run
the benefit will outweigh the pain. This thread was started as a RFC to see
what people thought of the idea of treating all metadata as temporal. This
wasn't to benefit the web, but to benefit all implementations as they
didn't have to treat metadata separately as all data is temporal in media
files (global being from start to duration). So far pretty much everyone
has said they would not like to make this change.

I pretty much agree with your point that if a feature that people
want implemented in WebM can already be achieved in Matroska we should look
there first. But that doesn't mean we should use that
feature without looking to make sure that is the best route long term for
all groups. (Personally I look at current Matroska tools and clients, HTML5
browsers, and other video tools and clients.) So yes I don't want to
reinvent the wheel, unless it is not round enough.

It looks like pretty much most people want separate metadata, global and
temporal, and most people have said they would like to use Matroska Tags
for the global metadata. How do people use MKV tags today? Are there
any deficiencies with the tags spec?

Frank

On Wed, Jan 25, 2012 at 10:38 AM, Basil Mohamed Gohar <


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Frank Galligan  
View profile  
 More options Jan 26 2012, 9:10 am
From: Frank Galligan <fgalli...@google.com>
Date: Thu, 26 Jan 2012 09:10:59 -0500
Local: Thurs, Jan 26 2012 9:10 am
Subject: Re: [RFC] WebM metadata

When defining global metadata I think we should go with most people think
of. Most people think of global metadata as "title", "creator", "license",
.. These are tied to the file. I do understand that if you tied metadata to
the track you satisfy some smaller use cases requirements (e.g. adding a
music track to a video sequence), but for most uses cases you are going to
be adding complexity and rules to define how global metadata should be
resolved.

I think we should define global metadata as:
* Pertaining to the duration of the file (or live stream). I.e. not to
individual streams.
* Not temporal.

Anything else anyone want to add?

Frank

On Wed, Jan 25, 2012 at 9:25 PM, Silvia Pfeiffer
<silviapfeiff...@gmail.com>wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Basil Mohamed Gohar  
View profile  
 More options Jan 26 2012, 9:18 am
From: Basil Mohamed Gohar <abu_huray...@hidayahonline.org>
Date: Thu, 26 Jan 2012 09:18:33 -0500
Local: Thurs, Jan 26 2012 9:18 am
Subject: Re: [RFC] WebM metadata

On 01/26/2012 09:10 AM, Frank Galligan wrote:

> When defining global metadata I think we should go with most people
> think of. Most people think of global metadata as "title", "creator",
> "license", .. These are tied to the file. I do understand that if you
> tied metadata to the track you satisfy some smaller use cases
> requirements (e.g. adding a music track to a video sequence), but for
> most uses cases you are going to be adding complexity and rules to
> define how global metadata should be resolved.

I believe this would cover the vast majority of cases and is also what
people expect, because, at least in my experience, most metadata/tags in
multimedia files are treated globally, and applied to all content of the
file as a whole, as opposed to individual tracks.  I believe the same is
true for any multimedia used in a streaming or Web context (e.g.,
YouTube videos, streaming media, etc.) which could be considered some of
possible new uses of WebM that were not so widespread before in a
standard format.

> I think we should define global metadata as:
> * Pertaining to the duration of the file (or live stream). I.e. not to
> individual streams.
> * Not temporal.

> Anything else anyone want to add?

I think this sounds found.  Now, to be "that guy", I want to ask the
question if this means there will basically be no way left to add useful
and/or equivalent metadata on a track-by-track basis (e.g., maybe you do
want to label a secondary audio track as a translation and attribute it
to the translator as "creator").  Is that something that would be
completely ruled-out?  I am assuming that such a feature is already
supported by Matroska.

I think this is a minor feature (i.e., being able to add metadata to
tracks individually), but it would be nice to have it be *possible*, if
not required.  This way, pretty-much all options are there, and if an
implementation does not want to bother with track-by-track metadata,
then there'll be no blame on them, as long as they're still properly
supporting the global metadata (which would apply to the file as a whole).


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Frank Galligan  
View profile  
 More options Jan 26 2012, 10:14 am
From: Frank Galligan <fgalli...@google.com>
Date: Thu, 26 Jan 2012 10:14:33 -0500
Local: Thurs, Jan 26 2012 10:14 am
Subject: Re: [RFC] WebM metadata

I think what you are asking for basically boils down to a specific subset
of non-standard global metadata.

Like I said before I think the high-level process to define metadata in
WebM should be:
1. Define what metadata is. I.E. global vs temporal, global definition, ...
2. Specify how metadata is stored. I.E. MKV tags, xmp, ...
3. Standardize a set of the metadata vocabulary.

Currently for 2. I have only heard of Tags and some people mention xmp.
Both of which have support for track specific metadata. MKV tags
has TrackUID element. XMP has pantries.

So I think what you want to do, you could do two different ways (unless
someone comes up with another solution for #2 that everyone decides they
want to use).

The first way would be to use the unsupported metadata implementation
(assuming most people want to keep global metadata to the file only)  that
supports track specific metadata. e.g. for MKV tags you would set
the TrackUID for your metadata. I think this will work for most
muxers/demuxers but there could be some muxers/demuxers out there that
would treat this file as invalid or strip the data.

The second way would be to use the supported metadata implementation with
non-standard metadata. So basically you could define your names of the
metadata like "audio track 1 creator", "audio 2 creator", "audio 3
creator", ...

I would vote to use the second method as it will be guaranteed to work with
muxers/demuxers that implement the Webm metadata standard, even if the base
standard has support for the first method.

Frank

On Thu, Jan 26, 2012 at 9:18 AM, Basil Mohamed Gohar <

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Silvia Pfeiffer  
View profile  
 More options Jan 26 2012, 4:25 pm
From: Silvia Pfeiffer <silviapfeiff...@gmail.com>
Date: Fri, 27 Jan 2012 08:25:09 +1100
Local: Thurs, Jan 26 2012 4:25 pm
Subject: Re: [RFC] WebM metadata

This is a lot harder to parse with tools than the structured approach where the track is called out explicitly in a field. Why not use the field when it already exists? Have you come across tools that ignore that field for MKV files?

Silvia.

On 27/01/2012, at 2:14 AM, Frank Galligan <fgalli...@google.com> wrote:

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Frank Galligan  
View profile  
 More options Jan 26 2012, 11:18 pm
From: Frank Galligan <fgalli...@google.com>
Date: Thu, 26 Jan 2012 23:18:31 -0500
Local: Thurs, Jan 26 2012 11:18 pm
Subject: Re: [RFC] WebM metadata

On Thu, Jan 26, 2012 at 4:25 PM, Silvia Pfeiffer
<silviapfeiff...@gmail.com>wrote:

> This is a lot harder to parse with tools than the structured approach
> where the track is called out explicitly in a field.

I don't understand. What is a lot harder to parse?

> Why not use the field when it already exists?

Just because something exists doesn't necessarily means it is a good idea
to use it.

If we think it is a good idea to allow Tracks to have separate metadata
from themselves and the file metadata that adds complexity to the whole
system. E.g. if you take your example of adding an API to HTML5 to get the
metadata. With only file metadata the api might just return a list of name
value pairs. With file and tracks metadata the api must have a way of
distinguishing the file metadata vs all of the tracks that may have
metadata. The documentation becomes more complex for developers/users as
now they need to know what a media file is and what a stream/track is. We
may also have to define precedence rules. E.g. what happens if the file and
tracks define different licenses?

Also it is much easier to add a feature to a spec or API later then it is
to deprecate one.

> Have you come across tools that ignore that field for MKV files?

No, but most of my experience has been with WebM tools (tags aren't in
spec) and FFmpeg which has support for it. I haven't come across any MKV
files that had track specific data either, or maybe I have but the client
app didn't have a track specific metadata UI. If you know of any I would
like to check them out.

Frank

...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Silvia Pfeiffer  
View profile  
 More options Jan 27 2012, 2:39 am
From: Silvia Pfeiffer <silviapfeiff...@gmail.com>
Date: Fri, 27 Jan 2012 18:39:59 +1100
Local: Fri, Jan 27 2012 2:39 am
Subject: Re: [RFC] WebM metadata

On Fri, Jan 27, 2012 at 3:18 PM, Frank Galligan <fgalli...@google.com> wrote:
> On Thu, Jan 26, 2012 at 4:25 PM, Silvia Pfeiffer <silviapfeiff...@gmail.com>
> wrote:

>> This is a lot harder to parse with tools than the structured approach
>> where the track is called out explicitly in a field.

> I don't understand. What is a lot harder to parse?

If be bury the fact that a certain name-value metadata pair applies to
a track rather than the full file in the name of the name-value pair,
then it becomes difficult to determine what that name-value pair
applies to. For example:

name="audio track 1 creator"
value="John Smith"

rather than

name="creator"
value="John Smith"
track="audio track 1"

I was under the impression that you were suggesting the first option.

>> Why not use the field when it already exists?

> Just because something exists doesn't necessarily means it is a good idea to
> use it.

Sure.

> If we think it is a good idea to allow Tracks to have separate metadata from
> themselves and the file metadata that adds complexity to the whole system.

Sure, I was replying under the assumption that we wanted to support it
and your suggestion was to include it in the "name" field to which I
object. If we don't want to support it, then sure we don't need this.
But in this case we also should not try to support a hack for
track-related metadata.

> E.g. if you take your example of adding an API to HTML5 to get the metadata.
> With only file metadata the api might just return a list of name value
> pairs. With file and tracks metadata the api must have a way of
> distinguishing the file metadata vs all of the tracks that may have
> metadata.

Right. There is one more field to parse. And that field already exists
in the Matroska Tags.

We could certainly instead decide not to support that extra field and
instead expect the tracks themselves to take care of their metadata.
For example, text tracks in WebVTT may have metadata header fields
that will be encoded in the CodePrivateData as per the spec proposal.
That's another option for supporting track-related metadata. IIUC
VorbisComment headers are already included in Vorbis tracks. So,
track-related metadata would be another parsing step away, but it
would be possible already.

> The documentation becomes more complex for developers/users as now
> they need to know what a media file is and what a stream/track is. We may
> also have to define precedence rules. E.g. what happens if the file and
> tracks define different licenses?

It'a actually already a legal problem that a combination of content
can have a different license to the individual components. This would
be a way to represent the actual legal situation.

> Also it is much easier to add a feature to a spec or API later then it is to
> deprecate one.

Yes, sure. I didn't want to say that we have to do it. I was just
objecting to the proposed solution.

We should probably make a collection of Matroska files that have
metadata and inspect them to see what is currently done. I'm pretty
sure VLC supports it, but not sure to what extent.

Cheers,
Silvia.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Messages 1 - 25 of 79   Newer >
« Back to Discussions « Newer topic     Older topic »