Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
extraire_sous-titres_video [Le 31/12/2021, 14:03] – passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) wiki-corrector-botextraire_sous-titres_video [Le 11/09/2022, 12:17] (Version actuelle) – Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) moths-art
Ligne 1: Ligne 1:
- +{{tag>vidéo}} {{tag>ffmpeg}} {{tag>srt}} {{tag>Sous-titrage}}{{tag>vobsub2srt}} {{tag>mkvtoolnix}}
-{{tag>vidéo}} {{tag>ffmpeg}} {{tag>srt}} {{tag>Sous-titrage}}  {{tag>vobsub2srt}} {{tag>mkvtoolnix}}+
  
 ====== Extraction des sous-titres d'une vidéo ====== ====== Extraction des sous-titres d'une vidéo ======
Ligne 21: Ligne 20:
   * convertir fichier .sub et .idx en tiff;   * convertir fichier .sub et .idx en tiff;
   * reconnaissance de caractère de chaque tiff avec cunéiform   * reconnaissance de caractère de chaque tiff avec cunéiform
-  * création d'un fichier srt +  * création d'un fichier srt
  
 ====  Script bash correspondant à l'algorithme ==== ====  Script bash correspondant à l'algorithme ====
Ligne 36: Ligne 35:
  
 # Dépendances : ffmpeg,  mkvtoolnix, vobsub2srt # Dépendances : ffmpeg,  mkvtoolnix, vobsub2srt
-# Signale quel programme l'on exécute +# Signale quel programme l'on exécute
 # puis la composition du répertoire où le script s'exécute # puis la composition du répertoire où le script s'exécute
 echo -e "programme pour extraire des canaux de sous-titres d'une vidéo\n echo -e "programme pour extraire des canaux de sous-titres d'une vidéo\n
Ligne 47: Ligne 46:
  
 # Message pour informer l'utilisateur de son choix # Message pour informer l'utilisateur de son choix
-echo -e "Le fichier vidéo choisi est : \n $film_a_traiter" +echo -e "Le fichier vidéo choisi est : \n $film_a_traiter"
  
 # Exemple film_a_traiter="RetourVersLeFutur2.mp4" # Exemple film_a_traiter="RetourVersLeFutur2.mp4"
Ligne 56: Ligne 55:
  
 # metadata_sub="-map 0:4 -metadata:s:s:1 language=fra -map 0:5 -metadata:s:s:2 language=fra" # metadata_sub="-map 0:4 -metadata:s:s:1 language=fra -map 0:5 -metadata:s:s:2 language=fra"
-metadata_sub=$(for (( c=0; c<${#soustitres_array[@]}; c++));  do  echo -map 0:$(echo ${soustitres_array[$c]} | cut -d "|" -f1) -metadata:s:s:$(($c + 1)) language=$(echo ${soustitres_array[$c]} | cut -d "|" -f2) ; done)+metadata_sub=$(for (( c=0; c<${#soustitres_array[@]}; c++)); do  echo -map 0:$(echo ${soustitres_array[$c]} | cut -d "|" -f1) -metadata:s:s:$(($c + 1)) language=$(echo ${soustitres_array[$c]} | cut -d "|" -f2) ; done)
  
 # command1="ffmpeg -i RetourVersLeFutur2.mp4 -map 0:4 -metadata:s:s:1 language=fra -map 0:5 -metadata:s:s:2 language=fra -c:s dvdsub sous_titres_RetourVersLeFutur2.mp4.mk" # command1="ffmpeg -i RetourVersLeFutur2.mp4 -map 0:4 -metadata:s:s:1 language=fra -map 0:5 -metadata:s:s:2 language=fra -c:s dvdsub sous_titres_RetourVersLeFutur2.mp4.mk"
Ligne 65: Ligne 64:
  
 # vobsub_piste="0:0_ 1:1_" # vobsub_piste="0:0_ 1:1_"
-vobsub_piste=$(for (( c=0; c<${#soustitres_array[@]}; c++)); do echo $c:$c"_"; done)+vobsub_piste=$(for (( c=0; c<${#soustitres_array[@]}; c++));do echo $c:$c"_"; done)
  
 #command2="mkvextract tracks sous_titres_RetourVersLeFutur2.mp4.mkv -c ISO8859-1 0:0_ 1:1_" #command2="mkvextract tracks sous_titres_RetourVersLeFutur2.mp4.mkv -c ISO8859-1 0:0_ 1:1_"
Ligne 75: Ligne 74:
 # Exécution Roc des fichiers de sous-titres # Exécution Roc des fichiers de sous-titres
 #vobsub2srt 0_; vobsub2srt 1_;" #vobsub2srt 0_; vobsub2srt 1_;"
-for (( c=0; c<${#soustitres_array[@]}; c++)); +for (( c=0; c<${#soustitres_array[@]}; c++));
 do do
  vobsub2srt $c"_";  vobsub2srt $c"_";
Ligne 97: Ligne 96:
 </file> </file>
  
-====  Exemple de conversion de fichier TS en MKV avec FFMPEG  ====  +====  Exemple de conversion de fichier TS en MKV avec FFMPEG  ====
  
 La commande suivante permet d'obtenir l'info : <code>ffmpeg -i <vidéos étudiée> </code> La commande suivante permet d'obtenir l'info : <code>ffmpeg -i <vidéos étudiée> </code>
Ligne 124: Ligne 123:
 </code> </code>
  
-<note>//-threads// pour pouvoir utiliser un traitement multiprocesseurs +<note>//-threads// pour pouvoir utiliser un traitement multiprocesseurs
  
 -// map// pour spécifier toutes les pistes à utilisables -// map// pour spécifier toutes les pistes à utilisables
Ligne 130: Ligne 129:
 //-acodec// suivi de //copy//  pour le traitements des pistes audio //-acodec// suivi de //copy//  pour le traitements des pistes audio
  
-//-vcodec// suivi de //copy// pour le traitement de la piste vidéo  +//-vcodec// suivi de //copy// pour le traitement de la piste vidéo
 // //
--scodec// suivi de //dvdsub// pour le traitement des sous-titres +-scodec// suivi de //dvdsub// pour le traitement des sous-titres
  
 </note> </note>
Ligne 141: Ligne 140:
 **[[apt>ffmpeg]]** - une collection de logiciels libres destinés au traitement de flux audio ou vidéo **[[apt>ffmpeg]]** - une collection de logiciels libres destinés au traitement de flux audio ou vidéo
  
-**[[apt>mkvtoolnix]]** éventuellement aussi **[[apt>mkvtoolnix-gui]]** -  un ensemble d'outils permettant de créer, de modifier et d'inspecter des fichiers Matroska +**[[apt>mkvtoolnix]]** éventuellement aussi **[[apt>mkvtoolnix-gui]]** -  un ensemble d'outils permettant de créer, de modifier et d'inspecter des fichiers Matroska
  
-**[[apt>vobsub2srt]]** - Commande de reconnaissance optique de caractères multi-langue pour extraire des sous-titres +**[[apt>vobsub2srt]]** - Commande de reconnaissance optique de caractères multi-langue pour extraire des sous-titres
  
 **[[apt>cuneiform]]** - Système de reconnaissance optique de caractères multi-langue **[[apt>cuneiform]]** - Système de reconnaissance optique de caractères multi-langue
Ligne 168: Ligne 167:
 # Ce script permet d'extraire les sous-titres d'une video TS et de les transformer en SRT éditable. # Ce script permet d'extraire les sous-titres d'une video TS et de les transformer en SRT éditable.
 # #
-# Depends : +# Depends :
 # ffmpeg est une collection de logiciels libres destinés au traitement de flux audio ou vidéo # ffmpeg est une collection de logiciels libres destinés au traitement de flux audio ou vidéo
-# mkvToolnix (interface graphique pour mkvmerge) est un ensemble d'outils permettant de créer, de modifier et d'inspecter des fichiers Matroska +# mkvToolnix (interface graphique pour mkvmerge) est un ensemble d'outils permettant de créer, de modifier et d'inspecter des fichiers Matroska
 # cuneiform - Système de reconnaissance optique de caractères multi-langue # cuneiform - Système de reconnaissance optique de caractères multi-langue
 # ogmrip - Application pour extraire et encoder des DVDs # ogmrip - Application pour extraire et encoder des DVDs
Ligne 176: Ligne 175:
 # Date : 26/08/2015 # Date : 26/08/2015
 # version : 0.1 # version : 0.1
-# Mise-à-jour : +# Mise-à-jour :
 # ---------------------------------------------------- # ----------------------------------------------------
  
Ligne 238: Ligne 237:
   videoFiles=($( ls *.$extension ));   videoFiles=($( ls *.$extension ));
   cd $courant_directory;   cd $courant_directory;
- +}