【发布时间】:2019-02-21 18:18:54
【问题描述】:
我写了一个脚本,以便从我记录在时间戳上的视频快速创建简短的预览剪辑,我发现这些视频值得稍后查看以进行剪辑。 我的带有时间戳的文件是这样写的
FILE_NAME1#MM:SS MM:SS
FILE_NAME2#MM:SS MM:SS MM:SS MM:SS
示例:
MAH01728#02:47 03:34 03:44 05:00 06:08 06:55
脚本如下所示:
#!/bin/bash
while read f
do
file=$(echo $f | cut -d"#" -f1)
filename=${file}".MP4"
timestamps=$(echo $f | cut -d"#" -f2)
for time in $timestamps
do
ffmpeg -ss 00:${time}.0 -i "orig/${filename}" -c copy -t 10 "preview/${file}_${time}.MP4"
done
done < $1
脚本获得了我想要的一半预览,另一方面,文件名被弄乱了,ffmpeg 抱怨找不到文件:
orig/714.MP4: No such file or directory
orig/00:58 01:25.MP4: No such file or directory
所以我修改了故障排除脚本,只是在 ffmpeg 命令前面加上了一个 echo - 现在所有文件名都是正确的。我错过了什么?
ffmpeg -ss 00:01:47.0 -i orig/MAH01714.MP4 -c copy -t 10 preview/MAH01714_01:47.MP4
ffmpeg -ss 00:02:00.0 -i orig/MAH01713.MP4 -c copy -t 10 preview/MAH01713_02:00.MP4
ffmpeg -ss 00:00:58.0 -i orig/MAH01712.MP4 -c copy -t 10 preview/MAH01712_00:58.MP4
ffmpeg -ss 00:01:25.0 -i orig/MAH01712.MP4 -c copy -t 10 preview/MAH01712_01:25.MP4
【问题讨论】:
-
这可能会有所帮助:shellcheck.net