
Envoyé par
barnabe0057
Voilà une première optimisation :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
@ECHO OFF
setlocal enableextensions
call :effacement
for /F "delims=;" %%I in ('dir "*.mp4" /B') do (
if not exist "%%~nI" (md "%%~nI")
echo DirectShowSource("%%~I")>> %%~nI.avs
echo VirtualDub.video.SetFrameRate(0,300); VirtualDub.Open("%%~nI.avs","",0,"EAAAAAAAAAAB////gAAAAA==");VirtualDub.SaveImageSequence("%%~nI\\", ".jpeg", 4, 2, 95); >> script.vcf
)
vdub.exe /x /i "script.vcf"
if not exist "Photos" (md Photos)
for /F "delims=;" %%I in ('dir "*.mp4" /B') do (move /Y "%~dp0%%~nI" "Photos\%%~nI")
call :effacement
pause
exit
:effacement
if exist "script.vcf" (del /f /s "script.vcf")
if exist "*.avs" (del /s /f /q "*.avs")
goto :eof
rem |
Tu parles de quel dossier exactement ? Ce n'est pas très clair.
en faite parfois il y a un espace a la fin des mp4 du coup mon script s' arrête quand je le relance je ne veut pas que il extrait les photos déjà extraite.
donc mon script fait sa
a\01.jpeg
a\02.jpeg
etc etc
je veut que si il y a des photos dans un des dossier il passe direct au suivant.
j 'ai tester sa ne marche pas :
DirectShowSource("fichier1.mp4"
au lieu de sa
DirectShowSource("fichier1.mp4")
et j ai sa
VirtualDub.vidéo.SetFrameRate(0,300); VirtualDub.Open("%I.avs","",0,"EAAAAAAAAAAB////gAAAAA==");VirtualDub.SaveImageSequence("%I\\", ".jpeg", 4, 2, 95);
au lieu de sa
VirtualDub.video.SetFrameRate(0,300); VirtualDub.Open("nom du fichier.mp4.avs","",0,"EAAAAAAAAAAB////gAAAAA==");VirtualDub.SaveImageSequence("dossier qui porte de nom du fichier sans extension\\", ".jpeg", 4, 2, 95);
et j'ai ce message d’erreur :
VirtualDub CLI Video Processor Version 1.6.15 (build 24600/release) for 80x86
Copyright (C) Avery Lee 1998-2006. Licensed under GNU General Public License
Cannot open file "~nI.avs":
Le fichier spÚcifiÚ est introuvable.
voila j'ai modifier comme sa et la sa marche.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| @ECHO OFF
setlocal enableextensions
call :effacement
if exist "script.vcf" del /s "script.vcf"
if exist "*.avs" del /s "*.avs"
for /F "delims=;" %%I in ('dir "*.mp4" /B') do echo DirectShowSource("%%I")>> %%~nI.avs
for /F "delims=;" %%I in ('dir *.mp4 /B') do (
if not exist "%%~nI" (md "%%~nI"))
for /F "delims=;" %%I in ('dir *.avs /B') do echo VirtualDub.video.SetFrameRate(0,300); VirtualDub.Open("%%I","",0,"EAAAAAAAAAAB////gAAAAA==");VirtualDub.SaveImageSequence("%%~nI\\", ".jpeg", 4, 2, 95); >> script.vcf
vdub.exe /x /i "script.vcf"
if not exist "Photos" (md Photos)
for /F "delims=;" %%I in ('dir "*.mp4" /B') do (move /Y "%~dp0%%~nI" "Photos\%%~nI")
call :effacement
exit
:effacement
if exist "script.vcf" (del /f /s "script.vcf")
if exist "*.avs" (del /s /f /q "*.avs")
goto :eof |
Partager