我正在使用ffmpeg订阅来自tvheadend的输入流,我正在不断地将该流写入磁盘。我想限制此输出流,以便在任何时候最多存储10兆字节的数据。
我已经从moreutils和linux buffer命令中查看了海绵,以构建某种管道。虽然,我找不到一个有效的解决方案。谁能指出我正确的方向?
答案 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尝试做所有事情更优雅。