如何在使用编解码器副本录制 RTSP 流时限制 FFmpeg 比特率?

如何在使用编解码器副本录制 RTSP 流时限制 FFmpeg 比特率?

我正在尝试使用 FFmpeg 从 RTSP 流录制短视频。我面临以下问题:视频尺寸太大。使用命令ffmpeg -i file.mp4,我得出的结论是,这是由于我从摄像机 RTSP 流接收的比特率造成的。

为了减小视频大小,我想限制比特率。我不介意这样做会损失质量。所以我使用以下ffmpeg 命令:

ffmpeg -i STREAM_URL -use_wallclock_as_timestamps 1
  -vcodec copy
  -an //Suppress audio stream
  -b:v 1000k  //Establish 1000 kbps for bitrate
  -minrate 500k
  -maxrate 1500k
  -bufsize 1000k
  -f segment
  -segment_time 300
  -segment_format mkv
  output%03d.mkv
  -max_muxing_queue_size 2048 //To fix bug: Too many packets buffered for output stream

我正在使用前面的命令来录制流。使用 时-vcodec copy,它不会限制比特率。

RTSP 流使用 H.264 视频编码。

是否可以限制比特率而不必重新编码视频?

相关内容