diff options
-rwxr-xr-x | bin/stream | 12 |
1 files changed, 9 insertions, 3 deletions
@@ -77,6 +77,10 @@ ABITRATE=32000 HEIGHT=360 VBITRATE=256000 +MKWEBM='[webm]' + +[ -z "$MKWEBM" ] || VCODECCOUNT=$((VCODECCOUNT+1)) + SAVESTEM="$SAVEDIR/$(date +%Y%m%d-%H%M%S)" ${SAVEDIR:+export FFREPORT=file="$SAVESTEM.log"} @@ -94,13 +98,15 @@ ffmpeg -hide_banner -threads auto -re \ ${LOGO:+-i "$LOGO"} \ ${HASVIDEO:+-filter_complex \ "[$VSTREAMINDEX:v]scale=-2:$HEIGHT${WATERMARK:-[v]}${WATERMARK:+[bg]${LOGO:+; - [bg][$((VSTREAMINDEX+1)):v]overlay=main_w-overlay_w-20:main_h-overlay_h-20[v]}}"} \ + [bg][$((VSTREAMINDEX+1)):v]overlay=main_w-overlay_w-20:main_h-overlay_h-20[v]}} + [v]split=$VCODECCOUNT$MKWEBM" } \ ${SAVEDIR:+-map '0:' ${TWOSOURCES:+-map '1:'} \ -codec copy \ -f segment -segment_format matroska -segment_format_options live=1:reserve_index_space=512kB \ -segment_list "$SAVESTEM.ffconcat" -segment_list_flags live \ -segment_time 600 -segment_atclocktime 1 -strftime 1 "$SAVESTEM-%H%M.mkv"} \ - ${HASAUDIO:+-map '0:a' } ${HASVIDEO:+-map '[v]' } \ + ${HASAUDIO:+-map '0:a' } ${HASVIDEO:+-map '[webm]' } \ + ${MKWEBM:+\ ${HASAUDIO:+\ -codec:a libopus -ac "$ACHANNELS" -ar "$AFRAMERATE" -b:a "$ABITRATE" } \ ${HASVIDEO:+\ @@ -112,4 +118,4 @@ ffmpeg -hide_banner -threads auto -re \ -qmin 4 -qmax 56 } \ -f tee \ "${HASAUDIO:+[select=\'a\':f=rtp:payload_type=111]rtp://$IP:$FIRSTPORT?pkt_size=1200| \ - }${HASVIDEO:+[select=\'v\':f=rtp:payload_type=100]rtp://$IP:$((FIRSTPORT+2))?pkt_size=1200}" + }${HASVIDEO:+[select=\'v\':f=rtp:payload_type=100]rtp://$IP:$((FIRSTPORT+2))?pkt_size=1200}" } |