Image 使用 jrottenberg/ffmpeg:vaapi
, 但目前未用到 vaapi. 參數說明如下
- -acodec copy: 直接使用 audio 的 encoding type 不進行 transcoding
- -vcodec copy: 直接使用 video 的 encoding type, 不進行 transcoding
- -f segment: 配合 segment 這種 muxer 進行分段
- -segment_time 10: 10 秒或是超過 10 秒後碰到了 keyframe 時進行分段
- -segment_list_flags live: 我們的來源是 live stream
- -segment_format mpegts: 分段後各檔使用 mpegts 進行 muxing. 用像是 mp4 muxer 時, 產生的檔案播放時的時間會不正確.
- -strftime 1: 改用
strftime()
parsing file path, 而非單純的以數字遞增產生檔名
docker run --rm -v $PWD:/data jrottenberg/ffmpeg:vaapi -i rtsp://10.9.1.151:554 -acodec copy -vcodec copy -f segment -segment_time 10 -segment_list_flags live -segment_format mpegts -strftime 1 /data/cam1-%Y%m%d-%H%M.mpg
另外, Hikvision 的 RTSP URL 格式說明可參考這頁
https://codertw.com/程式語言/532878/