Skip to content

Адаптивная публикация по WebRTC

При публикации из браузера на Flussonic, Flussonic управляет браузером, чтобы тот подстраивал битрейт публикации под пропускную способность канала. Это позволяет исключить потерю пакетов при недостаточной пропускной способности интернет-соединения. Если снизить ширину канала, клиент должен уменьшить битрейт публикации, если расширить канал, клиент должен увеличить битрейт публикации.

Эта функция используется по умолчанию и обычно не требует настройки, поскольку параметры по умолчанию подобраны оптимально. Тем не менее, вы можете менять значения по своему усмотрению, чтобы добиться еще большей эффективности.

Настройки ABR публикации через веб-интерфейес

Для указания дополнительных настроек источника публикации, нажмите options напротив URL источника. Настройки адаптивного битрейта находятся под заголовком WebRTC > ABR.

Настройки адаптивной публикации WebRTC

Этим настройкам в UI соответствуют следующие настройки в файле:

stream published_stream_name {
  input publish:// abr_loss_lower=2 abr_loss_upper=10 abr_mode=1 abr_stepdown=50 frames_timeout=1 max_bitrate=2200 min_bitrate=500 output_audio=aac priority=0 source_timeout=5;
}

Flussonic рекомендует браузеру битрейт в пределах min_bitrate - max_bitrate в зависимости от наличия и количества потерь пакетов при публикации. Flussonic рекомендует понижать битрейт при количестве потерь более, чем abr_loss_upper процентов и повышать при количестве потерь менее, чем abr_loss_lower процентов. Понижение и повышение происходит шагами размером abr_stepdown и abr_stepup соответственно. После указанного количества циклов автоподстройки (abr_cycles) Flussonic считает битрейт оптимальным и больше не анализирует его. По умолчанию abr_cycles=5. При abr_cycles=0 процесс подстройки происходит всё время, пока длится публикация.

Также Flussonic вычисляет текущий максимальный битрейт. Он запоминает значения битрейта, после которых потери выросли до abr_loss_upper и принимает их среднее значение за прошедшее количество циклов новым максимальным значением битрейта (текущим).