Code:Powershell-script video conversion-010.ps1
Aller à la navigation
Aller à la recherche
$CheminSource = "C:\Video\AConvertir\" $CheminDestinationOriginal = "C:\Video\AConvertir\original\" $CheminDestinationTraite = "C:\Video\AConvertir\conv\" $Suffixe_q23="-q23" $Suffixe_q23_1280="-q23-1280" set-location $CheminSource $CheminSource = $CheminSource+"\*" $VideoListeATraiter = Get-Item -Include @("*.mp4", "*.avi", "*.divx", "*.mov", "*.mpg", "*.wmv", "*.mkv") -Path $CheminSource; Clear-Host Write-Host Write-Host "Liste des vidéos à traiter"; $Compteur=1; foreach ($VideoATraiter in $VideoListeATraiter) { Write-Host $Compteur ".- " $VideoATraiter; $Compteur++ } Write-Host # Pause $null = Read-Host -Prompt 'Appuyer sur une touche pour continuer.'; Write-Host -ForegroundColor Green "Début du traitement" $Compteur=1; foreach ($VideoATraiter in $VideoListeATraiter) { $VideoTraite_q23 = $VideoATraiter.BaseName+$Suffixe_q23+$VideoATraiter.Extension $VideoTraite_q23_1280 = $VideoATraiter.BaseName+$Suffixe_q23_1280+$VideoATraiter.Extension Write-Host $Compteur ".- " $VideoATraiter # Déclaration des arguments pour ffmpeg.exe # -c:v libx264 -preset slow -crf 22 #$ArgumentListe = '-i "{0}" -vf scale=1024:0 "{1}"' -f $VideoATraiter, $VideoTraite; $ArgumentListe_q23 = '-i "{0}" -r 25 -preset medium -map 0:v -c:v libx264 -map 0:a -c:a copy "{1}"' -f $VideoATraiter, $VideoTraite_q23; $ArgumentListe_q23_1280 = '-i "{0}" -r 25 -preset medium -map 0:v -c:v libx264 -map 0:a -c:a copy -vf scale=1280:0 "{1}"' -f $VideoATraiter, $VideoTraite_q23_1280; # $ArgumentListe = '-i {0} -c:v libx264 -crf 23 -c:a copy {1}' -f $VideoATraiter, $VideoTraite; # Write-Host $ArgumentListe # Démarrage du traitement Start-Process -FilePath "C:\Video\AConvertir\ffmpeg.exe" -ArgumentList $ArgumentListe_q23 -Wait -NoNewWindow; Start-Process -FilePath "C:\Video\AConvertir\ffmpeg.exe" -ArgumentList $ArgumentListe_q23_1280 -Wait -NoNewWindow; Move-Item -Path $VideoATraiter -Destination $CheminDestinationOriginal Move-Item -Path $VideoTraite_q23 -Destination $CheminDestinationTraite Move-Item -Path $VideoTraite_q23_1280 -Destination $CheminDestinationTraite Write-Host -ForegroundColor Cyan " ==> traitement terminé" Write-Host $Compteur++ } Write-Host -ForegroundColor Green "Fin du traitement"