Powershell Command for Ffmpeg to Process Items in a Folder Recursively

I'm trying to figure out what PowerShell command [or script if necessary] might allow ffmpeg to recursively traverse a directory, pull stills via the -vf flag, and put all the stills into a folder without any filename conflicts that would cause overwriting.

So I know that this works fine for an individual file:

ffmpeg -i input.mov -vf fps=10/60 still%04d.jpg

The files generated start from still0001.jpg and count up to still0002.jpg, still0003.jpg, etc.

I have a directory that looks like this, with video files at different levels:

  • topFolder1
    • midFolder1
      • video1.mov
      • video2.mov
    • midFolder2
      • video3.mov
      • video4.mov

I'm trying to use a PowerShell command that can pull stills from all the videos video1.mov, video2.mov, video3.mov, and video4.mov and drop them into one folder.

I found a PowerShell command that purports to have ffmpeg traverse a directory recursively, but when I try to adapt it, it's not working.

I run:

PS T:\Exports\1 - Dailies\stills test> for /F "tokens=*" "%G" IN ('dir "T:\Exports\1 - Dailies" *.mov') do ffmpeg -i "%G" -vf fps=10/60 still%05d.jpg

But I get this error:

At line:1 char:4
+ for /F "tokens=*" "%G" IN ('dir "T:\Exports\1 - Dailies" *.mov') do f...
+    ~
Missing opening '(' after keyword 'for'.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : MissingOpenParenthesisAfterKeyword

Where am I going wrong?

5

1 Answer

Here's an example of a powershell command for converting all files in a directory to mp4 and resizing to 1280x720:

dir *.* | foreach-object { $newname = $_.Name.Remove($_.Name.Length - $_.Extension.Length) + ".mp4"; .\ffmpeg.exe -i "$_" -s 1280x720 $newname }
1

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Chloe Bennett

Chloe Bennett

Culture, Media & Entertainment Columnist

Chloe Bennett explores the intersection of pop culture, streaming entertainment, digital trends, and contemporary lifestyle. Her weekly commentary reaches thousands of culture enthusiasts.

Share this article
Twitter Facebook Pinterest