Не отображаются видео стримы в MCU.

Shiga

New Member
Добрый день, при добавление в микшер видео стирма, в MCU микшере он не отображается, хотя через rest-api/mixer/find_all показывает что он в микшере, при проигрывании видео стирма отдельно все ок.

WCS v.2.0.225-5.2.1481

Что менялось в flashphoner.properties:
Code:
mixer_realtime=true
mixer_lossless_video_processor_enabled=false
mixer_idle_timeout=3600000
mixer_voice_activity=false
mixer_show_separate_audio_frame=false
mixer_auto_start=true
mixer_mcu_audio=true
mixer_mcu_video=true
mixer_mcu_multithreaded_delivery=true
 

Max

Administrator
Staff member
Добрый день.
Микшеру требуется ключевой кадр, чтобы начать микширование потока. Поэтому для входящих WebRTC потоков необходимо обеспечить регулярную высылку ключевых кадров браузером:
Code:
periodic_fir_request=true
Обычно поведение, которое Вы описываете, связано с качеством публикуемого потока. Пожалуйста, проверьте метрики входящего потока: Получение общей информации о потоке. Если значения VIDEO_LOST и VIDEO_NACK растут, это означает проблемы с каналом паблишера. В этом случае необходимо публиковать WebRTC по TCP:
Code:
session.createStream({
    name: streamName,
    display: localVideo,
    ...,
    transport: "TCP"
}).on(STREAM_STATUS.PUBLISHING, function (stream) {
...
}).publish();
Если и в этом случае рост NACK сохраняется, необходимо снижать разрешение и/или битрейт
В браузере по WebRTC такой поток может играть (возможно, с фризами и артефактами), поскольку у браузера есть jitter буфер, который отфильтровывает потери, у микшера буфера с таким назначением нет.
Можно увеличить буферизацию на входе микшера (но это приведет к дополнительной задержке)
Code:
mixer_in_buffering_ms=600
Также можно включить jitter буфер на стороне сервера
Code:
use_strict_jitter_buffer=true
jitter_buffer_capacity=30
 
Top