SergeyP
Member
Добрый день,
Никак не могу подобрать оптимальные значения для параметров webrtc_cc_min_bitrate и webrtc_cc_max_bitrate.
Если поставить слишком высокое значение в webrtc_cc_min_bitrate, например 3Мбит/с для трансляций 320х240, то fps некоторых пользователей проседает до пары кадров в секунду, подозреваю из-за их слабого канала.
Если поставить слишком низкое значение, например 1Мбит/с или ниже, то качество видео становится стабильнее для большинства пользователей, но появляются проблемы со звуком - трески, шуршание, странное эхо.
И самое главное, не смог найти ответ на вопрос, параметры webrtc_cc_*_bitrate задают ограничения индивидуально для видео и аудио или для их суммарного трафика?
У вас случайно нет инструкции, как правильно настроить эти параметры, чтобы у пользователей с хорошим интернетом было хорошее качество видео и аудио, если интернет некачественный то чтобы качество звука и видео понижались, но чтобы ftp в обоих случаях оставался приемлимым?
Я использовал некоторые советы с форума по улучшению качества озвука для кодека Opus, а также другие оптимизации.
Спасибо!
Моя конфигурация сервера:
Никак не могу подобрать оптимальные значения для параметров webrtc_cc_min_bitrate и webrtc_cc_max_bitrate.
Если поставить слишком высокое значение в webrtc_cc_min_bitrate, например 3Мбит/с для трансляций 320х240, то fps некоторых пользователей проседает до пары кадров в секунду, подозреваю из-за их слабого канала.
Если поставить слишком низкое значение, например 1Мбит/с или ниже, то качество видео становится стабильнее для большинства пользователей, но появляются проблемы со звуком - трески, шуршание, странное эхо.
И самое главное, не смог найти ответ на вопрос, параметры webrtc_cc_*_bitrate задают ограничения индивидуально для видео и аудио или для их суммарного трафика?
У вас случайно нет инструкции, как правильно настроить эти параметры, чтобы у пользователей с хорошим интернетом было хорошее качество видео и аудио, если интернет некачественный то чтобы качество звука и видео понижались, но чтобы ftp в обоих случаях оставался приемлимым?
Я использовал некоторые советы с форума по улучшению качества озвука для кодека Opus, а также другие оптимизации.
Спасибо!
Моя конфигурация сервера:
Code:
ip =178.118.210.37
ip_local =178.118.210.37
port_from =30000
port_to =31000
media_port_from =31001
media_port_to =64000
waiting_answer =60
user_agent =Flashphoner/1.0
balance_header =balance
cost_header =cost
video_enabled =true
domain =
outbound_proxy =
outbound_port =
log_level =5
enable_context_logs =false
rtp_activity_detecting =true,60
sip_msg_listener =com.flashphoner.sdk.sip.ChangeCallIdListener
call_record_listener =com.flashphoner.server.client.DefaultCallRecordListener
dtmf =rfc2833
auto_login_url =/usr/local/FlashphonerWebCallServer/conf/account.xml
get_callee_url =/usr/local/FlashphonerWebCallServer/conf/callee.xml
codecs =opus,alaw,ulaw,g729,speex16,g722,mpeg4-generic,telephone-event,vp8,h264,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
on_record_hook_script =on_record_hook.sh
rtmp_transponder_stream_name_prefix =rtmp_
ws.port =8080
wss.port =8443
wss.keystore.password =password
wss.cert.password =password
rtmp.port =1935
rtmfp.port =1935
keep_alive.algorithm =HIGH_LEVEL
keep_alive.peer_interval =2000
keep_alive.server_interval =5000
keep_alive.probes =10
video_reliable =partial
audio_reliable =partial
audio_frames_per_packet =6
burst_avoidance_count =100
flush_audio_interval =80
flush_video_interval =0
#The part below is moved from server.properties...
#Config
ws.port =8080
wss.port =8443
#File will be located in conf directory
wss.keystore.password =password
wss.cert.password =password
rtmp.port =1935
rtmfp.port =1935
#keep_alive_algorithm may be INTERNAL, NONE, HIGH_LEVEL
keep_alive.algorithm =HIGH_LEVEL
keep_alive.peer_interval =2000
keep_alive.server_interval =5000
keep_alive.probes =10
#Reliability: on, partial, off
video_reliable =partial
audio_reliable =partial
audio_frames_per_packet =6
burst_avoidance_count =100
flush_audio_interval =80
flush_video_interval =0
hls_server_enabled=true
######### CUSTOM CONFIGS FROM HERE ############
record_streams = false
webrtc_cc_min_bitrate=1000000
webrtc_cc_max_bitrate=3000000
opus_formats=maxplaybackrate=48000,sprop-maxcapturerate=48000,maxaveragebitrate=500000
# logging
enable_extended_logging = true
client_log_level = INFO
keep_extended_logs_max_days=1
# https://bit.ly/2wxdGK1
stun_freshness_timeout=1000000000
# https://bit.ly/2os22vB
webrtc_cc2_bitrate_overuse_event_threshold=1
# https://bit.ly/2wLmImG
webrtc_cc2_twcc=false
# https://docs.flashphoner.com/display/WCS5EN/Server+tuning+recommendations
rtp_receive_buffer_size=131072
rtp_send_buffer_size =131072