Search code examples
ffmpegstreamstreamingrtspip-camera

How to record from many cameras without consuming all CPU


I'm trying to record using ffmpeg.exe by starting process of it with some parameter but ffmpeg.exe is eating my CPU two process of them comsume about 90% of my CPU

so how to reduce this usage to record about 20 cameras ???

Edit:

CPU : Xeron 2.4 GHz

fps: 28

resolution : 1280X720

bitrate : 512

Format : H264


Solution

  • After few search to see some RTSP Client how dose it works to build my own I found ffmpeg eating RAM and CPU because I tells it to process all images received from camera

    Old command used :

    -i rtsp://[user name]:[password]@[My IP Camera]/h264/ch1/main/av_stream -f segment -strftime 1 -segment_time 3600 -s 1280X720 -r 28 -b:v 128k -c:v libx264 [Storage Direction]/[File Name].flv

    this parameter is the problem -s 1280X720 -r 28 -b:v 128k

    after removing this parameter it consumes 0% of CPU and around 5 - 10 MB in RAM

    New command :

    -i rtsp://[user name]:[password]@[My IP Camera]/h264/ch1/main/av_stream -f segment -strftime 1 -segment_time 3600 -vcodec copy[Storage Direction]/[File Name].flv