如何将ffmpeg输入流的输出文件大小限制为10兆字节

时间:2016-04-12 16:07:07

标签: ffmpeg

我正在使用ffmpeg订阅来自tvheadend的输入流,我正在不断地将该流写入磁盘。我想限制此输出流,以便在任何时候最多存储10兆字节的数据。

我已经从moreutils和linux buffer命令中查看了海绵,以构建某种管道。虽然,我找不到一个有效的解决方案。谁能指出我正确的方向?

1 个答案:

答案 0 :(得分:4)

您只需要-fs密钥。 它以字节为单位设置输出文件大小限制。

您可以输入ffmpeg -i input -fs 10M -c copy output,其中input是您的输入地址,output - 您希望文件拥有的文件名。 M指定您希望以兆字节为单位的大小(也允许{千兆字节为k。)

如果要覆盖,你可以使用像这样的小sript

#!/bin/bash

t=1
while :
do
 ffmpeg -i input -fs 10M -c copy output$t
 t=`expr $t + 1`
done

我认为这比使用ffmpeg尝试做所有事情更优雅。