-fs limit_size (输出) 设置文件大小限制,以字节表示。超过限制后,不再写入更多字节块。输出文件的大小略大于请求的文件大小。
这很让人困惑。如果文件大小略大于所请求的文件大小,那么我有以下问题:
-fs
实际上不能工作,那么拥有它有什么意义呢?发布于 2019-11-26 14:46:02
是什么决定了文件将消耗多少(比请求的文件大小还要多)?
由输出文件muxer编写的拖车的大小(如果有的话)。已发送到muxer但尚未刷新到磁盘的任何数据包的大小。第一种是事先不可能知道的;第二种可能在理论上是可能的,但不是简单明了的。
该文件将超过所请求的文件大小多少?
请参见上面的。
有办法准确地设置文件大小吗?
不是的。在ffmpeg中转码是一个多层的过程。-fs
的工作级别相对较高,在ffmpeg中有几十个输出muxer,每个都有自己的开销。因此,fs
在原则上不能严格执行,同时仍然生成一个有效的文件。
如果-fs实际上不能工作,那么拥有它有什么意义呢?
它是在2005年增加的,此后几乎没有改变。由于媒体文件的构造方式,它的实现可以有所改进,但并不完美。我怀疑很少有人尝试进行改进,因为很少有有效的用例--可能是为了避免破坏帐户/文件系统配额--所以实用程序与工作的比率很低。
大多数用户希望有一个完整的转码操作,并考虑到目标文件的大小。为此,设置编码器比特率是正确的方法。-fs
不是为了这个目的而设计的。
https://stackoverflow.com/questions/59051058
复制相似问题