How can I keep the flow (protocol rtsp, codec h264) in file (container mp4)? That is, on input an endless stream (with CCTV camera), and the output files in mp4 format size of 5-10 minutes of recording time.

OS: debian, ubuntu Software: vlc, ffmpeg (avconv)

Currently this scheme is used:

cvlc rtsp://admin:[email protected]:554/ch1-s1 --sout=file/ts:stream.ts
ffmpeg -i stream.ts -vcodec copy -f mp4 stream.mp4

But it can not record video continuously (between restarts vlc is a loss of about 10 seconds of live video)


VLC does not support segmenting the output file. You can try to use directly ffmpeg as it supports output segmentation:

ffmpeg -i rtsp://admin:[email protected]:554/ch1-s1 -c copy -map 0 -f segment -segment_time 600 -segment_format mp4 "out%03d.mp4"