SFU - Подвисают видеопотоки

ArnoldE

New Member
Добрый день Коллеги,
очень странное поведение видеопотоков в примере "Client", помогите разобраться.
В двух соседних вкладках браузера Chrome открываю приложение "Client", оно подключается к комнате и начинает отправлять/получать перекрестно видеотрэки. Картинка через разные промежутки времени подвисает (1-5 сек), потом секунд через 20 картинка замирает окончательно и все, больше она никогда не оживает. Ошибок в консоли нет. После зависания, можно в приложении добавить еще один видеотрэк, он начинает воспроизводиться, подлагивает и также зависает.

Пробовали разные устройства / интернет-соединения. Поведение одинаковое. Подскажите пожалуйста куда еще можно посмотреть?

Сервер: v.2.0.225-5.2.1466

Sfu-SDK: 2.0.130

flashphoner.properties
Code:
# Config flashphoner.properties
# To get more settings:
# ssh -p 2001 admin@localhost
# default password: admin
# show node-settings
# show node-settings | grep port

#server ip
ip                     =
ip_local               =

#webrtc ports range
media_port_from        =31001
media_port_to          =32000

#codecs
codecs                   =opus,alaw,ulaw,g729,speex16,g722,mpeg4-generic,telephone-event,h264,vp8,flv,mpv
codecs_exclude_sip     =mpeg4-generic,flv,mpv
codecs_exclude_streaming =flv,telephone-event
codecs_exclude_sip_rtmp  =opus,g729,g722,mpeg4-generic,vp8,mpv

#websocket ports
ws.port                 =8080
wss.port                =8443

webrtc_cc_min_bitrate=750000
webrtc_cc_max_bitrate=4000000

rtmp_transponder_full_url = true
rtmp_transponder_stream_name_prefix=
rtmp_flash_ver_subscriber=LNX 76.219.189.0
rtmp_transponder_send_metadata=true

periodic_fir_request=true
#periodic_fir_request_interval=2000

rtp_activity_audio=false
rtp_activity_video=false
 
Last edited:

Max

Administrator
Staff member
Добрый день.
SFU использует только UDP транспорт. Скорее всего, канала не хватает на то, чтобы передать 720p в обе стороны. Попробуйте в файле настройки клиента /usr/local/FlashphonerWebCallServer/client2/sfu/client/config.json указать максимальное качество 640x360:
Code:
    "video": {
      "tracks": [{
        "source": "camera",
        "width": 640,
        "height": 360,
        "codec": "H264",
        "encodings": [
          { "rid": "h", "active": true, "maxBitrate": 900000 },
          { "rid": "m", "active": true, "maxBitrate": 300000, "scaleResolutionDownBy": 2 }
        ]
      }]
    }
Такж обратите внимание, что по умолчанию используется кодек VP8, который дает большую нагрузку на клиента при кодировании, т.к. не поддерживает аппаратное ускорение. Чтобы публикровать H264, требуется настройка на стороне сервера: Публикация H264
Code:
codecs_exclude_sfu=alaw,ulaw,g729,speex16,g722,mpeg4-generic,telephone-event,flv,mpv
webrtc_cc_min_bitrate=1000000
profiles=42e01f,640028
 
Top