passage de variables VBScript
Bonjour,
Je souhaite convertir tous mes CD enregistrés de wave en mp3 pour les emporter en vacances.
J'ai réalisé un script qui scan tous les répertoires et sous répertoires et liste les fichiers wave pour les convertir (en gardant l'original wave)
Je n'arrive pas à passer une variable dans un script VBScript.
Ma commande manuelle passe très bien:
Code:
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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
'On Error Resume Next
Const outFile = "file.txt"
Path = "D:\Musique"
Const wav = ".wav"
Dim oFilesys
Set oFilesys = CreateObject("Scripting.FileSystemObject")
Set oFiletxt = oFilesys.CreateTextFile(outFile,True)
Set Ws = CreateObject("Wscript.Shell")
oFiletxt.WriteLine(List(path))
oFiletxt.Close
MsgBox "Script Termine !"
Ws.Run outFile
Function List(directory)
On Error Resume next
Set fsoFolder = CreateObject("Scripting.FileSystemObject")
Set folder = fsoFolder.GetFolder(directory)
Set subfolders = folder.SubFolders
Set subfiles = folder.Files
For each objFile in subfiles
titrewav = objFile.Path
if InStr(titrewav,".wav") > 0 then
oFiletxt.WriteLine(titrewav)
titremp3 = Replace(objFile.Path,"wav","mp3")
oFiletxt.WriteLine(titremp3)
D:\Musique\_Utilitaires\ffmpeg-7.0.2-full_build\bin\ffmpeg -i titrewav -ab 320k titremp3
End if
Next
For each objFolder in subfolders
oFiletxt.WriteLine(objFolder.Path)
List(objFolder) 'Appel récusive de la fonction List
Next
End Function |
Mais quand les fichiers sont paramétrés, ça ne fonctionne plus
Le fichier de sortie contient les bons paramètres. Par exemple:
Code:
1 2 3 4 5
|
...
D:\Musique\Chanson\Agnès Bihl\24 heurs dans la vie d'une femme\01-La sieste crapuleuse.wav
D:\Musique\Chanson\Agnès Bihl\24 heurs dans la vie d'une femme\01-La sieste crapuleuse.mp3
... |
L'erreur est systématiquement dans la ligne:
Code:
D:\Musique\_Utilitaires\ffmpeg-7.0.2-full_build\bin\ffmpeg -i titrewav -ab 320k titremp3
Alors que la ligne de commande suivante passe très bien:
Code:
1 2
|
D:\Musique\_Utilitaires\ffmpeg-7.0.2-full_build\bin\ffmpeg -i "D:\Musique\Chanson\Agnès Bihl\24 heurs dans la vie d'une femme\01-La sieste crapuleuse.wav" -ab 320k "D:\Musique\Chanson\Agnès Bihl\24 heurs dans la vie d'une femme\01-La sieste crapuleuse.mp3" |
Si je retire la ligne ligne de transcodage, le script fonctionne... mais pas de transcodage bien sur!
Je ne vois pas comment résoudre ce problème... Quelqu'un a-t-il une idée?