Code:Powershell-script video conversion-010.ps1

Aller à la navigation Aller à la recherche
$CheminSource = "D:\vid\aTraiter"
$CheminDestinationOriginal = "D:\vid\Original\"
$CheminDestinationTraite =   "D:\vid\Traite\"
$Suffixe="-1024"

$VideoListeATraiter = Get-ChildItem -Include @("*.mp4", "*.avi", "*.divx", "*.mov", "*.mpg", "*.wmv", "*.mkv") -Path $CheminSource -recurse;

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 = $VideoATraiter.BaseName+$Suffixe+$VideoATraiter.Extension
    Write-Host $Compteur ".- " $VideoATraiter
    
        # Déclaration des arguments pour ffmpeg.exe
    $ArgumentListe = '-i "{0}" -vf scale=1024:0 "{1}"' -f $VideoATraiter, $VideoTraite;
    
        # Démarrage du traitement
    Start-Process -FilePath D:\vid\aTraiter\ffmpeg.exe -ArgumentList $ArgumentListe -Wait -NoNewWindow;

    Move-Item -Path $VideoATraiter -Destination $CheminDestinationOriginal
    Move-Item -Path $VideoTraite -Destination $CheminDestinationTraite
    Write-Host -ForegroundColor Cyan "   ==> traitement terminé"
    Write-Host 
    $Compteur++
    }
Write-Host -ForegroundColor Green "Fin du traitement"