hongzimao / pensieve

Neural Adaptive Video Streaming with Pensieve (SIGCOMM '17)
http://web.mit.edu/pensieve/
MIT License
521 stars 281 forks source link

Optimal Buffer Level control ? #95

Open peterbangert opened 4 years ago

peterbangert commented 4 years ago

Do I have any control over pensive in telling the network what an optimal buffer level would be?

Comparing with algorithms festive [1] and panda [2]. There is included functionality for maintaining a certain buffer level, ~30 seconds in both papers. Festive [1] section 3.1, Panda [2] section III paragraph 4.

--> pretense: Allowing the application to delay video download request to maintain a buffer level promotes better bandwidth sharing as well prevents possible waste of resources should the client decide to exit before finishing.

The pensive network just returns a bitrate selection, not a timing delay, so I understand that receiving a download delay estimation is out of scope, however if i manually add a request delay based on my desired buffer level outside of pensive, then pensive appears to observe the buffer level not growing despite there being a high throughput estimation and decreases video quality.

Are there any variables or control options to telling pensive what an optimal buffer level would be, so that it may request high bitrate chunks until the buffer decreases significantly below a certain threshold or notices a significant throughput drop ?

[1] Junchen Jiang, Vyas Sekar, and Hui Zhang. 2012. Improving fairness, efficiency, and stability in HTTP-based adaptive video streaming with FESTIVE.

[2] Z. Li et al. 2014. Probe and Adapt: Rate Adaptation for HTTP Video Streaming At Scale. IEEE Journal on Selected Areas in Communications (2014).

hongzimao commented 4 years ago

Thanks for your question. What you have proposed is along the line of buffer-based algorithms. If you like, you can change the implementation in bb.py with the logic you described above: https://github.com/hongzimao/pensieve/blob/master/test/bb.py#L77-L84. Hope this helps.