moq-wg / moq-transport

draft-ietf-moq-transport
Other
79 stars 17 forks source link

Naming for tracks and terminology #50

Closed vasilvv closed 1 year ago

vasilvv commented 1 year ago

It has been pointed out to me by multiple people that "track" usually can refer to multiple versions of the same video/audio (e.g. 360p and 720p would be same track, but different renditions). We might want to change terminology in the draft.

acbegen commented 1 year ago

"Track" has a specific meaning in the ISO BMFF/mp4/CMAF world, so do segment, fragment and chunk. If you are talking about the variation of the same content, DASH calls them representations and HLS calls them renditions or variant streams. These could be in separate "track" files but in that case you are referring to the physical - addressable media - objects rather than the concept itself. The bottomline is that whatever we decide to use, we should be dead clear about their definitions.

wilaw commented 1 year ago

I discussed this with Suhas. We concur that 'track' is overloaded especially with the CMAF context, and prefer the term "representation" as describing a sequence of media objects which have a consistent codec, framerate, resolution and content-focus. "Rendition" is also an option, but that is something the CIA does when no-one's watching and I've heard objections to its media use on those grounds.

suhasHere commented 1 year ago

It might help define terms and say how is that maps to CMAF when using CMAF containers and say RTP when using RTP based containers .. thoughts ?

kixelated commented 1 year ago

I'm certainly not the most well-versed with video terminology, so definitely correct me if I'm wrong. Also +1 to @acbegen; there will always be inconsistent naming in the industry so we need to clearly define what we're talking about.

My understanding is that "tracks" in ISOBMFF refer to a single encoding. For example, you could have an MP4 file:

track 1: english audio AAC track 2: spanish audio AAC track 3: english audio OPUS track 4: spanish audio OPUS track 5: H.264 video track 6: AV1 video track 7: english subtitles track 8: spanish subtitles

Each of these would have a separate track_id and trak box. In VLC, you would switch between these by selecing them in the "audio track" and "video track" drop down.

suhasHere commented 1 year ago

I feel we need to define our terminology and work back to think how it maps to existing names in different contexts. this will keep our terminology clean of ambiguity and also helps someone coming from different contexts to get an idea of how it maps to the terms they are familair

To that extent, i am willing to propose the following

Media Representations:

These are the media representations examples

Media Representation Groups

Media Object This is any media payload that is being sent and can have one or more container encapsulations. Each container defines how to call the thing inside a given MediaObject ( CMAF Segment, RTP Payload Enc ... )

This can then be explains how it maps to CMAF track for example in the text

suhasHere commented 1 year ago

For RTP we did a similar effort and it was pretty useful

https://datatracker.ietf.org/doc/rfc7656/

vasilvv commented 1 year ago

My current proposal would be something:

We also need some terminology for feeds that are interchangeable.

kixelated commented 1 year ago

I started exploring terminology in some existing specifications: #56

afrind commented 1 year ago

55 is also relevant

wilaw commented 1 year ago

I'd like to propose the term "catalog" to refer to a text file describing the media feeds available in a broadcast (to use Victor's taxonomy). This is as an alternative to "manifest" or "playlist", both of which have overloaded meaning in HLS and DASH.

afrind commented 1 year ago

I think catalog/track/group/object are reasonably well explained now, do we need more?

afrind commented 1 year ago

@vasilvv are you ok to close this? We seem to have baked track into the draft at this point, including naming concepts like "Full Track Name".

vasilvv commented 1 year ago

Agreed, let's close this.