Регулирование скорости передачи данных для WebRTC: меняется ли разрешение? - PullRequest
1 голос
/ 22 марта 2019

Кажется очевидным, что WebRTC использует свой собственный регулятор скорости (GCC) для управления битрейтом кодера, но я также не смог найти никакой информации о изменении разрешения .

Изменяет ли WebRTC (или другая видеосистема реального времени, например Hangout, Skype) только битрейт, а не разрешение во время прямой трансляции?
Если это не меняет разрешение, то почему?

В соответствии с битрейтом, кривой качества и разрешения, показанной ниже, enter image description here использование только одного фиксированного разрешения для покрытия изменений битрейта, кажется неэффективным.
Это потому, чтокачество резко ухудшается, если битрейт действительно низкий для одного разрешения.(из-за крутого наклона левой боковой кривой)
Поэтому, на мой взгляд, изменение разрешения, а также скорости передачи битов необходимо и разумно, но я не уверен, поддерживается ли это WebRTC, Hangouts,Skype или другая мобильная видеосистема реального времени.

Ссылка на изображение: https://teradek.com/blogs/articles/what-is-the-optimal-bitrate-for-your-resolution

1 Ответ

0 голосов
/ 22 марта 2019

Да, WebRTC также изменит разрешение в условиях ограничения пропускной способности.

Для этого даже запланирована контрольная поверхность, которая называется degradationPreference :

const p = sender.getParameters();
console.log(p.degradationPreference); // "balanced" by default 
p.degradationPreference = pick? "maintain-framerate" : "maintain-resolution";
await sender.setParameters(p);

Но элемент управления еще никем не реализован . Реализации, как правило, в данный момент делают свои собственные суждения (по умолчанию "balanced").

...