私が取り組んでいるプロジェクトでは、タイムコードの入力csvファイルをループする小さなbashスクリプトがあり、ffmpegを使用して各タイムコードで特定の映画のスクリーンショットを作成します。 csvファイルの形式は、HHである:mm:ssの、ID - それはこのようになります(抜粋)ffmpeg - 無効な時間
00:00:08,1
00:00:49,2
00:01:30,3
00:02:38,4
00:03:46,5
00:04:08,6
00:04:26,7
00:04:37,8
00:04:49,9
00:05:29,10
00:05:52,11
00:06:00,12
00:06:44,13
00:07:49,14
00:08:32,15
00:09:28,16
00:10:17,17
00:10:44,18
00:11:48,19
00:12:07,20
私は過去に問題なく、それを使用しましたが、今日、私はいくつかのを更新するために来ています映画と私は、ffmpegが正しいフォーマットであるにもかかわらず、私の入力タイムコードが無効であると不平を言っている不思議な問題を抱えています。
新しい入力csvファイルは古いものと同じ形式ですが、ffmpegはhh:mm:ssタイムスタンプから時を逸脱するように見えます。 ffmpeg行をコメントアウトすると、すべてが期待通りに端末に出力されます(ただし、明らかにスクリーンショットは表示されません)。 - 時間は01
にオーバーダニまで働き、私は余分な0とCSVパディングを含め、すべての種類を試してみたwhile read code a
do
echo $code
f="$(printf "%03d" $i)"
ffmpeg -loglevel error -y -ss $code -i $FILM -vframes 1 -q:v 2 $OUTPUT/$f.jpg
((i++))
done < $INPUT
:
は、これは私のループのコードです
誰にもアイデアはありますか?私は頭を傷つけている。
乾杯