【问题标题】:Using batch process to encode multiple files one at a time with ffmpeg使用批处理使用ffmpeg一次对多个文件进行编码
【发布时间】:2014-10-10 16:15:38
【问题描述】:

这里完全是初学者,可能会在一些(希望)非常容易实现的事情上寻求帮助。

我设置了一个放置文件夹以触发批处理,该批处理将使用 FFMPEG 将其中包含的任何视频编码为 5 种不同的格式。它还创建一个包含文件名的文本文件,然后我在单独的 php/api 进程中使用该文件将视频上传到互联网。

当只有一个视频被放入放置文件夹时,该过程完美运行。但是,只要有两个或更多,那么该过程就会中断。

这是批处理文件运行的 ffmpeg 脚本之一的示例:

for %%a in ("C:\live\dropfolder\transcode\*.*") do ffmpeg\ffmpeg -i "%%a" (encoding settings) "C:\live\dropfolder\output\%%~na.mp4"
pause
for %%g in (C:\live\dropfolder\output\*.mp4) do echo %%~nxg > C:\live\dropfolder\filename\filename_format.txt

因此,当有 2 个或更多文件时,该回显生成的文件名可能用于文件 A,而转码会话可能用于文件 B。

理想情况下,我希望整个过程完成第一个视频的转码 - 包括为每种格式生成文本文件 - 然后返回到放置文件夹中下一个视频的过程的开头。

我如何实现这一目标?任何建议将不胜感激。

谢谢!

汤姆

【问题讨论】:

    标签: batch-file video ffmpeg


    【解决方案1】:

    试试这个,不确定它是否真的是你想要的......

    if exist C:\live\dropfolder\filename\filename_format.txt del C:\live\dropfolder\filename\filename_format.txt
    for %%a in ("C:\live\dropfolder\transcode\*.*") do (
        ffmpeg\ffmpeg -i "%%a" (encoding settings) "C:\live\dropfolder\output\%%~na.mp4"
        echo %%~na.mp4 >> C:\live\dropfolder\filename\filename_format.txt
    )
    

    【讨论】:

      猜你喜欢
      • 2019-05-17
      • 2015-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-15
      • 2015-11-21
      相关资源
      最近更新 更多