私は、特定のサイズを超えるすべてのビデオファイルを再帰的に検索してサイズを変更するpowershellスクリプトを作成しました。PowershellとFFMPEG - FFMPEGが実行されない
私のスクリプトはFFMPEGを実際には実行しないので、画面上で実行するコマンドが表示されるだけなので、ここで何かが分からないように感じます。私は解決策に直面するだろうと確信しています。私は、スクリプトを実行したときに
$SearchPath = "N:\baseball"
$oldVideos = Get-ChildItem -Include @("*.mkv", "*.mov", "*.mpg", "*.wmv", "*.avi") -Path $SearchPath -Recurse | where-object {$_.length -gt 500MB};
Set-Location -Path 'C:\Program Files\ffmpeg\bin';
foreach ($OldVideo in $oldVideos)
{
$outputfolder = "O:\resized"
$oldname = Get-Item $oldvideo | Select-Object -ExpandProperty BaseName
$suffix = "_resized.mp4"
$newname = "$($oldname)_$($suffix)"
$ffmpeg = ".'C:\Program Files\ffmpeg\bin\ffmpeg.exe'"
$arguments = " -i `"$($OldVideo)`" -vf scale=720:trunc(ow/a/2)*2 -c:v libx264 -f mp4 `"$outputfolder\$newname`" -y"
$ffmpeg + $arguments}
はここで画面に実際の出力です .'C:\プログラムファイル\のffmpegの\ビン\のffmpeg.exe」-i "N:\野球\ \ 067.MOVを打ちます" -vf scale = 720:trunc(ow/a/2)* 2 -c:v libx264 -f mp4 "O:¥resized¥067__resized.mp4" -y
このコマンドは実行する必要があります窓)。
文字列変数を作成するだけです。あなたは実際にこれらの変数を実際に使用しません。 –
最後に私は$ ffmpeg + $引数を使用しています –
あなたはこのために 'invoke-expression'を使うことができます –