I ran in to the stderr problem a while back. I do a lot of transcoding and upscaling work with libx264 and mkv and acc(no hwaccel for best quality). I never thought to just read it back through named pipes..
FYI
is the absolute best 16:9 4k upscale; better than Topaz AI filters even
for auto stereo channel transcode; aac supported by most blueray players. It will auto-separate 7.1 and 5.1 to stereo using dolby and dts metadata
all audio from source
all subs from source
most optimal denoise
Code: Select all
-protocol_whitelist https,tls,tcp,file
m3u8/HLS/every-video-stream-on-the-internet as source to single out-file
Code: Select all
-listen 1 -i <> -c:v libx264 -crf 21 -preset veryfast -c:a aac -b:a 128k -ac 2 -f hls -hls_time 4 -hls_playlist_type event stream.m3u8
FFMPEG also has a built in HLS server via RTMP. HLS is basically what every in-browser video and audio stream on the net is using; including YouTube, Netflix, Hulu, and Amazon. It also supports RTSP and about thirty other protocols. HTML5>Video tag supports m3u8
If you care about quality never use a hwaccel even with the slowest encode and CBR, and .mkv you can embed all sub in the video file and it works on any player that supports .mkv, which is most.. I don't think ffmpeg has audio normalization(removing loudness difference between audio tracks).
If you do want to use -hwaccel auto
Code: Select all
-c:v h264_amf -usage quality -cq 18
AMD(works through directX API on Windows)
Nvidia
Code: Select all
-c:v x264_qsv -preset veryslow -global_quality 18
Intel