listen 1935; max_connections 1000; daemon off; srs_log_tank console; http_api { enabled on; listen 1985; } http_server { enabled on; listen 8080; } rtc_server { enabled on; listen 8000; candidate *; } vhost transcode { hls { enabled on; hls_dispose 30; hls_fragment 2; hls_window 10; } rtc { enabled on; rtmp_to_rtc on; rtc_to_rtmp on; } http_remux { enabled on; mount [vhost]/[app]/[stream].ts; } http_hooks { enabled on; on_publish http://10.100.2.226:5295/api/srs; on_unpublish http://10.100.2.226:5295/api/srs; on_hls http://10.100.2.226:5295/api/srs; } } vhost __defaultVhost__ { transcode { enabled on; ffmpeg ./objs/ffmpeg/bin/ffmpeg; engine source { enabled on; vcodec copy; acodec copy; output rtmp://127.0.0.1:[port]/[app]/[engine]/[stream]?vhost=transcode; } engine 720p { enabled on; vcodec libx264; vbitrate 3000; vfps 30; vprofile baseline; vpreset veryfast; vfilter { vf 'scale=-2:720'; } vparams { g 60; tune 'zerolatency'; } acodec libfdk_aac; abitrate 160; asample_rate 44100; achannels 2; output rtmp://127.0.0.1:[port]/[app]/[engine]/[stream]?vhost=transcode; } engine 480p { enabled off; vcodec libx264; vbitrate 1000; vfps 30; vprofile baseline; vpreset veryfast; vfilter { vf 'scale=-2:480'; } vparams { g 60; tune 'zerolatency'; } acodec libfdk_aac; abitrate 96; asample_rate 44100; achannels 2; output rtmp://127.0.0.1:[port]/[app]/[engine]/[stream]?vhost=transcode; } engine 240p { enabled off; vcodec libx264; vbitrate 500; vfps 30; vprofile baseline; vpreset veryfast; vfilter { vf 'scale=-2:240'; } vparams { g 60; tune 'zerolatency'; } acodec libfdk_aac; abitrate 72; asample_rate 44100; achannels 2; output rtmp://127.0.0.1:[port]/[app]/[engine]/[stream]?vhost=transcode; } } }