使用ffmpeg进行转换时覆盖文件的问题

use*_*550 10 ffmpeg

我正在使用ffpmeg将我的所有视频转换为mp4:

 ffmpeg -i InpuFile -vcodec h264 -acodec aac -strict -2 OutputFile.mp4
Run Code Online (Sandbox Code Playgroud)

问题是,如果我覆盖输入文件,即输出和输入文件是相同的:

 ffmpeg -i InpuFile -vcodec h264 -acodec aac -strict -2 InpuFile.mp4 -y
Run Code Online (Sandbox Code Playgroud)

要么

 ffmpeg -i InpuFile -y -vcodec h264 -acodec aac -strict -2 InpuFile.mp4
Run Code Online (Sandbox Code Playgroud)

新文件不好.他持续一秒钟,他的体型非常小.

有任何想法吗?

我想在我的服务器中使用它作为脚本,因此覆盖对我来说是最方便的方式,我更喜欢这种方式,而不是创建临时文件,然后用原始文件替换临时文件.

Rod*_*Rod 10

我有同样的(令人沮丧的)问题,您可能已经注意到这是因为ffmpeg正在写入正在读取的文件,您在进程完成之前损坏了源... ffmpeg没有将文件放在某个缓冲区中,所以你不能这样做,你将不得不使用一个临时文件.

以防万一