@@ -159,24 +159,30 @@ pub-hls name relay="http://localhost:4443/anon":
159159 rm -rf " $OUT_DIR"
160160 mkdir -p " $OUT_DIR"
161161
162- echo " >>> Generating HLS stream to disk..."
162+ echo " >>> Generating HLS stream to disk (1280x720 + 256x144) ..."
163163
164164 # Start ffmpeg in the background to generate HLS
165- ffmpeg -loglevel warning -re -stream_loop -1 -i " $INPUT" \
166- - map 0:v:0 -map 0:v:0 -map 0:a:0 \
165+ ffmpeg -hide_banner -loglevel warning -re -stream_loop -1 -i " $INPUT" \
166+ - filter_complex " \
167+ [0:v]split=2[v0][v1]; \
168+ [v0]scale=-2:720[v720]; \
169+ [v1]scale=-2:144[v144]" \
170+ - map " [v720]" -map " [v144]" -map 0:a:0 \
167171 - r 25 -preset veryfast -g 50 -keyint_min 50 -sc_threshold 0 \
168- - c:v:0 libx264 -profile:v:0 high -level:v:0 4.1 -pix_fmt:v:0 yuv420 p -tag:v:0 avc1 -bsf:v:0 dump_extra -b:v:0 4 M -vf:0 " scale=1920:-2" \
169- - c:v:1 libx264 -profile:v:1 high -level:v:1 4.1 -pix_fmt:v:1 yuv420 p -tag:v:1 avc1 -bsf:v:1 dump_extra -b:v:1 300 k -vf:1 " scale=256:-2" \
172+ - c:v:0 libx264 -profile:v:0 high -level:v:0 4.1 -pix_fmt:v:0 yuv420 p -tag:v:0 avc1 \
173+ - b:v:0 4 M -maxrate:v:0 4.4 M -bufsize:v:0 8 M \
174+ - c:v:1 libx264 -profile:v:1 high -level:v:1 4.1 -pix_fmt:v:1 yuv420 p -tag:v:1 avc1 \
175+ - b:v:1 300 k -maxrate:v:1 330 k -bufsize:v:1 600 k \
170176 - c:a aac -b:a 128 k \
171- - f hls \
172- - hls_time 2 -hls_list_size 12 \
177+ - f hls -hls_time 2 -hls_list_size 12 \
173178 - hls_flags independent_segments+ delete_segments \
174179 - hls_segment_type fmp4 \
175180 - master_pl_name master.m3u8 \
176- - var_stream_map " v:0,agroup:audio v:1,agroup:audio a:0,agroup:audio" \
181+ - var_stream_map " v:0,agroup:audio,name:720 v:1,agroup:audio,name:144 a:0,agroup:audio,name :audio" \
177182 - hls_segment_filename " $OUT_DIR/v%v/segment_%09d.m4s" \
178183 " $OUT_DIR/v%v/stream.m3u8" &
179184
185+
180186 FFMPEG_PID=$!
181187
182188 # Wait for master playlist to be generated
0 commit comments