Caractères japonais Batch [Résolu]

Signaler
Messages postés
18
Date d'inscription
samedi 30 septembre 2017
Statut
Membre
Dernière intervention
17 octobre 2019
-
Messages postés
3168
Date d'inscription
lundi 11 novembre 2013
Statut
Membre
Dernière intervention
2 août 2020
-
Bonjour bonjour
En fait, j'essaie de faire un programme en Batch qui me permettrait d'utiliser la repo youtube-dl (en .exe dans le même dossier que mon .bat) automatiquement.
Étape par étape, ça donne
1.) Demander l'url youtube à l'utilisateur
2.) Demander la qualité de la vidéo à choisir (selon les résultats de youtube-dl)
3.) Demander la qualité de l'audio à choisir (selon ces mêmes résultats)
4.) Télécharger les deux fichiers
5.) Utiliser ffmepg pour combiner les deux dans un fichier final renommé selon le titre de la vidéo youtube.


Donc là en fait j'suis sur l'étape 5. Techniquement, j'ai tout bien fait, mais.
Mon soucis est le suivant : Pour récupérer le titre de la vidéo Youtube, je récupère le résultat d'une commande de youtube-dl dans un fichier, fichier que je lis ensuite pour le mettre dans une variable.
Jusque là tout va bien.
Le seul souci, c'est que les caractères du titre de la vidéo ne sont pas tous pris en compte dans le fichier .txt, parce que ce sont des caractères spéciaux (japonais en l'occurence)
Donc je ne sais pas comment récupérer le résultat de la commande dans une variable avec les caractères japonais dedans. Encore l'affichage dans le cmd je m'en fiche un peu parce que si j'ai la variable et que j'ai le fichier je peux les renommer comme il faut.
Du coup là j'suis sur ce programme. :

setlocal enabledelayedexpansion

:FIRST

set /p url=Merci d'entrer l'url youtube pour la télecharger :
youtube-dl -F %url%
set /p formatv=Merci d'entrer le format de video a telecharger :
set /p formata=Merci d'entrer le format d'audio a telecharger :
youtube-dl -f %formatv%+%formata% %url%


youtube-dl --get-filename -f %formatv%+%formata% %url% > tmp.txt
set /p filename=<tmp.txt
del tmp.txt

youtube-dl --get-id -f %formatv%+%formata% %url% > tmp.txt
set /p fileid=<tmp.txt
del tmp.txt
set fileid=-!fileid!
set filenamea=!filename:webm=f%formata%.webm!
set filenamev=!filename:webm=f%formatv%.webm!
echo !filenamea!
echo !filenamev!
echo !fileid!

echo !filename:%fileid%=! > filenamewithoutid.txt

REM ffmpeg -i !filename:.webm=.f%formatv%.webm! -i!filename:.webm=.f%formata%.webm! -c copy -map 0:0 -map 1:0 !filename!
REM le code rem ci-dessus n’a pas encore été testé

set url=""
GOTO :FIRST


Si jamais vous voulez des explications sur pourquoi j'ai fait telle où telle chose sur le programme je vous le dirais.
Le seul truc que je vais supprimer une fois le programme terminé ce sera les echo qui ne vont pas dans un fichier
+ ajouter @ECHO OFF.
(mais j'avais besoin de voir les étapes)
Voilà voilà, merci d'avance !

3 réponses

Messages postés
12672
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
9 août 2020
3 445
Bonsoir,

Voilà comment "variabiliser" le titre de la vidéo :

for /f "delims=" %%A in ('youtube-dl --get-title "https://www.youtube.com/watch?v=isIj3tuQTDY"') do set "titre=%%A"

echo !titre!



“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
Messages postés
3168
Date d'inscription
lundi 11 novembre 2013
Statut
Membre
Dernière intervention
2 août 2020
1 288
Salut.

Pourquoi utiliser ffmpeg pour fusionner les 2 fichiers, sachant que youtube-dl le fait ?
Et pourquoi as-tu besoin de récupérer le titre de la vidéo ?

Si c'est pour que le titre du fichier correspond au titre de la vidéo, il y a plus simple.

Rien qu'avec ceci, j'ai téléchargé la vidéo, avec le bon titre :
youtube-dl.exe -o "%%(title)s" -f 18+140 https://www.youtube.com/watch?v=vvgW_YaZdFs



Ensuite, tu mets youtube-dl.exe (sans chemin complet) : pour que cela fonctionne, il faut à la fois que ton fichier batch se trouve dans le même dossier que l'exécutable, et que ce fichier batch ne SOIT PAS lancer en tant qu'administrateur.

En effet, si le batch est lancé normalement, le dossier actuel, est celui du fichier batch.
Si le batch est lancé en tant qu'adminstrateur, le dossier, c'est c:\windows\system32.


Il faut rajouter au début
cd "%~dp0"
pour éviter ce souci.



++
Messages postés
18
Date d'inscription
samedi 30 septembre 2017
Statut
Membre
Dernière intervention
17 octobre 2019

Bonjour,
Tout d'abord, merci de m'avoir accordé de ton temps.
J'ai donc ce code-ci :
@ECHO OFF
setlocal enabledelayedexpansion

:FIRST

set /p url=Merci d'entrer l'url youtube pour la télecharger :
youtube-dl -F %url%
set /p formatv=Merci d'entrer le format de video a telecharger :
set /p formata=Merci d'entrer le format d'audio a telecharger :
youtube-dl.exe -o "%%(title)s" -f %formatv%+%formata% %url%
set url=""

GOTO :FIRST
pause > null


Désormais, lorsque je télécharge une vidéo, les caractères japonais sont bien pris en compte, et je t'en remercie. Cependant, la vidéo et l'audio sont téléchargés dans deux fichiers différents :
J'ai deux fichiers désormais lorsque je télécharge une vidéo :
1.) Titre de la vidéo.f18 (18 par exemple pour le format 18 de vidéo, et sans extension mp4 ou m4a)
2.) Titre de la vidéo.f140 (140 pour le format de l'audio)

Merci d'avance, et je remerci également barnabe0057, dont je vais tester la solution de suite.
Messages postés
3168
Date d'inscription
lundi 11 novembre 2013
Statut
Membre
Dernière intervention
2 août 2020
1 288
Salut.

J'ai deux fichiers désormais lorsque je télécharge une vidéo :
1.) Titre de la vidéo.f18 (18 par exemple pour le format 18 de vidéo, et sans extension mp4 ou m4a)
2.) Titre de la vidéo.f140 (140 pour le format de l'audio)


Réponse en image :
https://i.imgur.com/xxu4xXu.png


Conclusion : il te manque ffmpeg dans le dit dossier.


++
Messages postés
18
Date d'inscription
samedi 30 septembre 2017
Statut
Membre
Dernière intervention
17 octobre 2019

Ah, je pensais qu'il était inutile ;)
Je teste ça
Messages postés
18
Date d'inscription
samedi 30 septembre 2017
Statut
Membre
Dernière intervention
17 octobre 2019

Je confirme, désolé du dérangement et merci de ta réponse
Messages postés
3168
Date d'inscription
lundi 11 novembre 2013
Statut
Membre
Dernière intervention
2 août 2020
1 288 >
Messages postés
18
Date d'inscription
samedi 30 septembre 2017
Statut
Membre
Dernière intervention
17 octobre 2019

De rien.

Et ne soit pas désolé, tu ne m'as pas dérangé. ^^
++
Messages postés
3168
Date d'inscription
lundi 11 novembre 2013
Statut
Membre
Dernière intervention
2 août 2020
1 288
Lu'

Pour info....

Conclusion : il te manque ffmpeg dans le dit dossier. 

Je t'avais dis avant :
Pourquoi utiliser ffmpeg pour fusionner les 2 fichiers, sachant que youtube-dl le fait ? 


Conclusion : j'suis Kon ^^

++