Skip to content
This repository has been archived by the owner on Aug 4, 2019. It is now read-only.

Automatically adjust video bitrate/resolution when network quality degrades #88

Open
Chuongv opened this issue Aug 4, 2015 · 5 comments

Comments

@Chuongv
Copy link
Member

Chuongv commented Aug 4, 2015

When network quality goes bad, objcTox should be either lower the resolution or ask toxav to lower the video bitrate.

@Chuongv Chuongv added this to the Audio/video milestone Aug 4, 2015
@Chuongv
Copy link
Member Author

Chuongv commented Oct 18, 2015

With the new toxAV, we receive a call back that actually suggests the bitrate we should move to. However the call back will never suggest a higher bit rate. So we will need to set a timer that will set the bit rate higher after it has been lowered. If we move it to high, toxAV will suggest a more appropriate bit rate.

So for example, we start a call with 48kb/s bit rate audio.
ToxAV callback with 24kb/s for audio.
ObjcTox sets bitrate to 24kb/s for audio.
ObjcTox sets timer to attempt to move bitrate back to 48 after 3 minutes.
3 minutes pass.. ObjcTox sets bitrate to 48.
ToxAV callback with 36 kb/s.
ObjcTox sets bitrate to 36 kb/s

@DanTheBritish
Copy link

3 minutes is a long time, could it not be 1 minute (or even 30 seconds)?

@dvor
Copy link
Member

dvor commented Oct 23, 2015

@Chuongv what will happen when we'll set bit rate to too high value? Would toxav immediately lower it? In this case we can try to increase it really often (like 10 seconds maybe?).

@Chuongv
Copy link
Member Author

Chuongv commented Oct 23, 2015

According to mannol, if we set it too high, it will suggest a new bit rate after 2 seconds. So yea we could make it increase often every 10 seconds.

@Chuongv
Copy link
Member Author

Chuongv commented Nov 24, 2015

Depends on irungentoo/toxcore#1469

@dvor dvor removed this from the Audio/video milestone Mar 30, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants