« Code:Powershell-script video conversion-010.ps1 » : différence entre les versions

Aller à la navigation Aller à la recherche
mAucun résumé des modifications
mAucun résumé des modifications
Ligne 1 : Ligne 1 :
<source>
<source>$CheminSource = "C:\Video\AConvertir\"
$CheminSource = "D:\vid\aTraiter"
$CheminDestinationOriginal = "C:\Video\AConvertir\original\"
$CheminDestinationOriginal = "D:\vid\Original\"
$CheminDestinationTraite =  "C:\Video\AConvertir\conv\"
$CheminDestinationTraite =  "D:\vid\Traite\"
$Suffixe="-q23"
$Suffixe="-1024"
 
set-location $CheminSource
 
$CheminSource = $CheminSource+"\*"
 
$VideoListeATraiter = Get-Item -Include @("*.mp4", "*.avi", "*.divx", "*.mov", "*.mpg", "*.wmv", "*.mkv") -Path $CheminSource;


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


Clear-Host
Clear-Host
Ligne 28 : Ligne 32 :
      
      
         # Déclaration des arguments pour ffmpeg.exe
         # Déclaration des arguments pour ffmpeg.exe
     $ArgumentListe = '-i "{0}" -vf scale=1024:0 "{1}"' -f $VideoATraiter, $VideoTraite;
        # -c:v libx264 -preset slow -crf 22
     #$ArgumentListe = '-i "{0}" -vf scale=1024:0 "{1}"' -f $VideoATraiter, $VideoTraite;
    $ArgumentListe = '-i "{0}" -preset medium -map 0:v -c:v libx264 -map 0:a -c:a copy -vf scale=1024:0 "{1}"' -f $VideoATraiter, $VideoTraite;
        # $ArgumentListe = '-i {0} -c:v libx264 -crf 23 -c:a copy {1}' -f $VideoATraiter, $VideoTraite;
   
    # Write-Host $ArgumentListe
      
      
         # Démarrage du traitement
         # Démarrage du traitement
     Start-Process -FilePath D:\vid\aTraiter\ffmpeg.exe -ArgumentList $ArgumentListe -Wait -NoNewWindow;
     Start-Process -FilePath "C:\Video\AConvertir\ffmpeg.exe" -ArgumentList $ArgumentListe -Wait -NoNewWindow;


     Move-Item -Path $VideoATraiter -Destination $CheminDestinationOriginal
     Move-Item -Path $VideoATraiter -Destination $CheminDestinationOriginal

Version du 7 mars 2022 à 21:46

$CheminSource = "C:\Video\AConvertir\"
$CheminDestinationOriginal = "C:\Video\AConvertir\original\"
$CheminDestinationTraite =   "C:\Video\AConvertir\conv\"
$Suffixe="-q23"

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 = $VideoATraiter.BaseName+$Suffixe+$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 = '-i "{0}" -preset medium -map 0:v -c:v libx264 -map 0:a -c:a copy -vf scale=1024:0 "{1}"' -f $VideoATraiter, $VideoTraite;
        # $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 -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"