I need to record from an RTSP at two different resolutions (original and something lower). I also need to have the files broken up according to clock time on every even 30 minutes, ex. 1:00, 1:30, 2:00, etc.
I imagine the command would look like this.
ffmpeg -rtsp_transport tcp -i rtsp://<rtsp url> \
-filter_complex "[0:v]split=2[v1][v2];[v1]scale=1920:1080[out1];[v2]scale=448:252[out2]" \
-map "[out1]" \
-c:v -an -vcodec libx264 \
-f segment -segment_format mp4 -segment_time 00:30:00 -strftime 1 \
/mnt/data/original-%Y-%m-%d-%H.%M.%S.mp4 \
-map "[out2]" \
-c:v -an -vcodec libx264 \
-f segment -segment_format mp4 -segment_time 00:30:00 -strftime 1 \
/mnt/data/low-reso-%Y-%m-%d-%H.%M.%S.mp4 \
Of course, this doesn't work. The command above gives me this error.
[NULL @ 0x556c999c2140] Unable to find a suitable output format for 'segment'
segment: Invalid argument
I've tried so many perturbations of this command to get it to work without any luck. Does anyone know how to do this?