moq-wg / moq-transport

draft-ietf-moq-transport
Other
70 stars 16 forks source link

Delivery Preference for VOD and reliable live (and absolute start/end offsets) #428

Closed kixelated closed 2 months ago

kixelated commented 2 months ago

The default behavior for live streams will be prefer-skip as encoded in the priority field. This doesn't work for VOD and reliable live, as they want to receive objects in creation order instead.

This is a counter-proposal to the FETCH keyword which attempts to accomplish something similar, but in a way that won't work for reliable live.

This PR also removes relative start/end offsets because SUBSCRIBE was getting too complex. An application that wants to start N groups back needs to use use #425 or a timeline to learn about the absolute group/object IDs.

kixelated commented 2 months ago

This is half of #411. The other half would be to add a Track Priority field to the SUBSCRIBE message itself, otherwise you can't prioritize between the tracks themselves. Note that FETCH would need something similar too.

As a future cleanup, we could also remove priority from the stream header and put Default Delivery Preference in TRACK_INFO instead. This would prevent a broadcaster from doing custom priorities, but that's probably fine?

kixelated commented 2 months ago

Replaced partially by #432

I'll make a separate PR for the prioritization stuff.