ffmpeg でフォルダーのスクリーンショットを撮るための .bat を作成する

ffmpeg でフォルダーのスクリーンショットを撮るための .bat を作成する

ffmpegの.batスクリプトを探していたところ、こちらのフォーラムのスレッド

問題のコードは

for %%F in (*.mp4) do (
If not Exist "%%~nF" MkDir "%%~nF"
ffmpeg -i %%F -r 1 -qscale:v 2 %%~nF\%%~nF-%%3d.jpg
)

FFMPEG が PATH に追加され、このバッチ スクリプトをフォルダーで使用しようとすると、フォルダーは作成されますが、画像は表示されません。

スクリーンショットをフォルダーに表示するだけでなく、複数のファイル形式を含めるためのより優れたコマンドがあるかどうかを知りたいです。コンテンツのほとんどは .mkv ですが、他の形式もランダムに含まれています。

だろう

for %%F in (*.mp4, *.mkv) do (

そのために働くのですか?

追加するのを忘れましたが、重要かどうかはわかりませんが、ファイルは外付けハードドライブ (C:/ ではない) にあり、スクリプトはファイルを含むフォルダー内から実行されました。

新しい投稿を作成して申し訳ありません。その投稿にコメントして、コメントした人が返信してくれることを期待していましたが、私は新しいアカウントで、評判がありませんでした。どんな助けでも大歓迎です。お時間をいただきありがとうございます。

答え1

ffmpegコピーされたコードの行は、スペースを含むパス/ファイル名では保存されません。

ffmpeg-line を次のように変更します。

ffmpeg -i "%%F" -r 1 -qscale:v 2 "%%~nF\%%~nF-%%3d.jpg"

追加された引用に注意してください。


複数のファイル形式を含めるためのよりよいコマンドがあるかどうかを知りたいだけです。コンテンツのほとんどは .mkv ですが、他の形式もランダムに含まれています。

だろう

for %%F in (*.mp4, *.mkv) do (

そのために働くのですか?

この既知のコードを自分でテストしてみませんか? これをテストするのはまったく簡単です。自分で簡単に解決できる質問は礼儀正しくありません。 — それは私たちが他の人を助けることを禁じます。

しかし、そうです。拡張子によって異なるファイル形式を捕捉するには、コードに独自の提案を加えるのが最も簡単です。


アップデート

残念ながら、行を変更しましたが、すぐに閉じてしまい、フォルダーに何も表示されません。

これは、開いているコマンド シェル内からではなく、ショートカット アイコンからバッチを開始することを示唆しています。

コードが動作するか確認するには、コマンド シェルを開き、スクリプトをシェル コマンドとして起動してください。質問の更新として出力をコピーしてください。

おそらく、出力を適切な量に制限するために、ビデオ コレクションの小さなテスト構造を生成したい場合があります。

関連情報