Automatic and dynamic streaming quality/bandwidth (1 Viewer)

mrceolla

Portal Pro
December 11, 2010
136
12
Hello,

Some streaming services like SlingBox and Netflix don't require you to specify a streaming profile or specify your bandwidth. They seem to detect this and adjust automatically, even during playback. When watching SlingBox in a moving car over a cell network with their SlingPlayer app, the video will get crappy when you have a bad signal and good when you have a good signal, and playback doesn't stop. The video quality/bandwidth adjusts on the fly.

Is this possible with MPExtended and are there any plans for something like this in the future?

Thanks!
 

Oxan

Retired Team Member
  • Premium Supporter
  • August 29, 2009
    1,730
    1,124
    Home Country
    Netherlands Netherlands
    It's possible, but an enormous amount of work and probably require some low-level knowledge of encoders, codecs and containers. I lack both of them, so I personally won't implement it; but I'm happy to merge it if others do it.
     

    mrceolla

    Portal Pro
    December 11, 2010
    136
    12
    Hi Oxan,

    Thank you for your reply. Unfortunately, I lack them as well. As an alternative to 'fully dynamic' streaming which I imagine would be quite complicated, what about adding a feature that automatically selects a profile based on a short bandwidth test between the client and MPExtended. This should be a bit simpler. Perhaps the user would be required to select their encoder type (VLC, ffmpeg, http), but then the bandwidth test selects the profile for you.

    Or, perhaps each encoder type could have a special 'Automatic' profile which contains placeholders populated by numbers determined during the bandwidth test. This may be a better way to go.

    On a side note, somewhat related... I would personally find it very useful if bandwidth requirements were somehow indicated in the profile names. I know I can look them up in the XML but that's not extremely convenient. If I'm using aMPdroid on my phone and playback is pausing due to low signal/bandwidth, I could do a quick speed test w/ one of the many speed test apps and then use that number to determine which profile should provide me with pause-free playback. This versus the alternative of trial and error.

    Great job to you and any other contributors on MPExtended. Keep up the good work!
     

    Oxan

    Retired Team Member
  • Premium Supporter
  • August 29, 2009
    1,730
    1,124
    Home Country
    Netherlands Netherlands
    Thank you for your reply. Unfortunately, I lack them as well. As an alternative to 'fully dynamic' streaming which I imagine would be quite complicated, what about adding a feature that automatically selects a profile based on a short bandwidth test between the client and MPExtended. This should be a bit simpler. Perhaps the user would be required to select their encoder type (VLC, ffmpeg, http), but then the bandwidth test selects the profile for you.

    Or, perhaps each encoder type could have a special 'Automatic' profile which contains placeholders populated by numbers determined during the bandwidth test. This may be a better way to go.
    I remember talking with @DieBagger about this a long time ago, and if I remember correctly it was something that we'd like to implement in the long term. However, we're both pretty busy and it doesn't have very high priority, so it'll probably take quite some time before it gets implemented. (As always; patches welcome!)

    On a side note, somewhat related... I would personally find it very useful if bandwidth requirements were somehow indicated in the profile names. I know I can look them up in the XML but that's not extremely convenient. If I'm using aMPdroid on my phone and playback is pausing due to low signal/bandwidth, I could do a quick speed test w/ one of the many speed test apps and then use that number to determine which profile should provide me with pause-free playback. This versus the alternative of trial and error.[/uqote]
    The numbers in the XML are just a guess based on the transcoder settings and don't seem to match reality at all. I'm not sure whether they have even been updated for the 0.5 release. We'd need to have real data for the profiles first; before we can consider this.
     

    Users who are viewing this thread

    Top Bottom