我需要FFmpeg /批次的帮助。我有几个大批图像(每批图像+14000个文件,每个图像+5 MB,所有文件均为.TIFF),我正在使用FFmpeg将它们串在一起成为.mp4视频。
元数据中的日期由于在创建时的存储方式而中断,因此时间和日期(T / D)在file_name上。我需要将每个帧的各自的T / D(因此其File_Name)刻录到它们上,以进行精确的测量(科学目的)。
在google和reddit的帮助下,我设法像这样半自动化:
Master.bat:
forfiles /p "D:\InputPath" /m "*.TIFF" /S /C "cmd /c C:\SlavePath\slave.bat @file @fname"
Slave.bat:
ffmpeg -i "%~1" -vf "drawtext=text=%~2: fontcolor=white: fontsize=30: fontfile='C\:\\FontPath\\OpenSans-Regular.ttf'" "D:\OutputPath\mod_%~1"
运行Master.bat
将输出每个单独的图像,其上带有文本的文字,并将File_Name更改为mod_'File_name'.TIFF
真实示例:2018-06-05--16-00-01.0034.TIFF变成mod_2018-06-05--16-00-01.0034.TIFF
问题在于当我的文件中包含“-”(“ date--time.miliseconds.TIFF”)时,FFmpeg不喜欢它,并且也不喜欢毫秒,因此我必须使用批量重命名实用程序(BRU)“手动”更改所有文件的名称。因此,使用BRU,我将所有文件重命名为00001.TIFF, 00002.TIFF,
等,而FFmpeg再次喜欢我。效果很好,但这意味着我不能AFK。
在那之后,我必须回到cmd并手动启动图像到视频的转换。
此外,FFmpeg似乎并没有使用所有内核。
我需要帮助来找到一种方法:
master.bat
的输出更改为00001.TIFF
等(即,首先要处理的是1.TIFF,第二个是2.TIFF)64位Windows,i7 7700hq,gtx 1050 4Gb,C:SSD,D:HDD
答案 0 :(得分:0)
尝试一下:
ffmpeg -i“ 2018-06-05--16-00-01。%4d.TIFF” -threads 4 out.mp4
https://en.wikibooks.org/wiki/FFMPEG_An_Intermediate_Guide/image_sequence