moq-wg / moq-transport

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

Producer Rendition Selection #6

Closed kixelated closed 1 year ago

kixelated commented 2 years ago

The current draft has a brief section on ABR. The claim is that the producer should choose renditions because it has better insight into the state of the network.

Does the producer have enough information to choose the rendition, and should any additional information required be part of the protocol? For example, the current buffer size.

Additionally, should the consumer influence the decision? For example, the player is muted/backgrounded and we should save bandwidth by choosing from lower renditions.

VMatrix1900 commented 2 years ago

Those two questions are related. Consumer should influence the decision because:

  1. consumer has the final judgement of the QoE. Sending the QoE metric back to the producer can help the sender-side optimization. One exmaple is xlink for multi-path transport. For single path, reporting the application layer buffer size would be helpful too.
  2. consumer application behavior may influence the QoE dramatically such as fast forwarding (which affects the application layer buffer size ) and backgrounding (which changes the QoE model).

Those metric/behavior can not be inferred from simple ACKs of transport layer. It would be great that the protocol can provide an application-layer feedback channel from the consumer to the producer.

acbegen commented 2 years ago

The current draft has a brief section on ABR. The claim is that the producer should choose renditions because it has better insight into the state of the network.

I don't agree with this claim as I mentioned before. There are a lot of things that do happen on the client side that the sender will never be aware of unless it is explicitly told by the client. Either the client provides all the other relevant details (some were listed by you and @VMatrix1900) to the sender so it can do a better decision or the sender tells the client what the current network conditions are and the client makes the decision and reports back to the sender.

kixelated commented 2 years ago

Yeah, I think I should remove this section. It's too much of an opinion rather than something to act upon. I just wanted a soapbox to complain about low-latency client-side ABR.

kixelated commented 1 year ago

Closing because the new draft does not specify track management yet. The plan is to support contribution and distribution.