Programme pour générer automatiquement des sous-titres en utilisant la synthèse vocale?

12

J'ai une vidéo pour laquelle je veux créer des sous-titres. Existe-t-il un programme qui peut effectuer la synthèse vocale rudimentaire afin de

  1. définir le bon début / fin de chaque sous-titre individuel
  2. créer des sous-titres de texte rudimentaires (en utilisant une sorte de synthèse vocale)

Je connais les sous-titres de gnome. Cependant, il faut beaucoup d'efforts pour créer ces sous-titres manuellement. Vous devez sélectionner vous-même le début et la fin de chaque phrase.

Youtube a les fonctionnalités ci-dessus (crée des sous-titres de texte rudimentaires au bon moment, en utilisant la synthèse vocale). Cependant, je préfère ne pas télécharger les vidéos sur Youtube juste pour obtenir mes sous-titres. Est-il possible de faire les sous-titres efficacement dans Ubuntu?

Mise à jour : je prévois d'utiliser uniquement les sous-titres .srt et je n'ai pas besoin de les coder en dur sur les vidéos. Ma plus grande exigence est que le programme trouve automatiquement le début / la fin de chaque phrase, afin que j'y écrive le texte.

Mise à jour # 2 : Il existe un logiciel Speech-to-Text pour Linux, avec le package CMU Sphinx. Il est possible d'utiliser CMU Sphinx avec un programme de sous-titres selon http://sourceforge.net/projects/cmusphinx/forums/forum/5471/topic/3949891 De plus, un outil de sous-titres connaît cette fonctionnalité CMU Sphinx, http: //groups.google.com/group/universal-subtitles-testing/browse_thread/thread/613361ffb921b43b (outil Web), mais il n'y a aucune référence dans le dernier code source auquel ils ont ajouté CMU Sphinx. La quête continue de trouver un programme qui utilise CMU Sphinx pour la synthèse vocale rudimentaire (qui définirait également le bon timing), comme Youtube le fait déjà.

user4124
la source
il y a une application appelée pie qui fait quelque chose comme ça, je pense.
RolandiXor

Réponses:

3

J'ai utilisé Aegisub sur Windows il y a quelques années et j'en étais vraiment content. Apparemment, il est disponible pour Linux. C'est assez explicite.

Aegisub crée uniquement le fichier de sous-titres, par exemple un fichier .srt. Pour combiner la vidéo et les sous-titres pour créer un sous-titre codé en dur, vous devez toujours utiliser un deuxième programme.
Sous Windows, j'ai utilisé VirtualDub, mais il n'est pas disponible pour Linux. Vous pouvez utiliser VLC pour le faire sous Linux :

Créez vos sous-marins dans Aegisub, en l'enregistrant comme d'habitude sous la forme d'un fichier .ass.

Utilisez VLC pour ajouter cette piste de sous-titres à votre vidéo. Sous-titre -> Ajouter un fichier de sous-titres ...

Configurez le style et les paramètres d'affichage des sous-titres afin qu'ils s'affichent à votre guise. Outils -> Préférences -> Sous-titres / OSD

Vous pouvez maintenant regarder la vidéo pour vous assurer que les sous-marins s'affichent comme vous le vouliez. Par exemple, je peux vérifier que certains sous-marins que j'ai spécifiés dans Aegisub s'affichent en haut de l'écran plutôt qu'en bas.

La sortie sera identique à son apparence actuelle, alors assurez-vous que tout va bien.

  1. Allez dans Média -> Convertir / Enregistrer ... (Ctrl + R).

  2. Sous Sélection de fichiers, ajoutez votre fichier vidéo. Cochez "Utiliser un fichier de sous-titres" et accédez à votre sous-fichier .ass.

  3. Cliquez sur la flèche vers le bas du bouton Convertir / Enregistrer et cliquez sur Convertir ... (Alt + O).

  4. Sous Paramètres, assurez-vous que l'option Convertir est cochée. Cochez l'option Afficher la sortie. Les abonnements ne sont pas ajoutés pour une raison quelconque, sauf si vous cochez cette case.

  5. Modifiez le profil pour que les paramètres vidéo et audio soient ceux que vous souhaitez. Sous l'onglet de sous-titres, cochez la case Sous-titres et utilisez le codec de sous-titres DVB. Assurez-vous de cocher «Superposer les sous-titres sur la vidéo». Appuyez sur enregistrer.

  6. Entrez un dossier de destination et un nom de fichier dans la zone Destination.

  7. Appuyez sur Start.

Attendez que ce soit fait, et c'est tout. La mise en garde avec cette méthode est que l'encodage se fera en temps réel avec la vidéo, donc si vous avez une vidéo de 2 heures, cela prendra 2 heures. Cela est dû au fait de cocher la case «Afficher la sortie». Mais pour une raison quelconque, cela ne fonctionne que lorsque vous cochez cette case.

Il existe également d'autres éditeurs de sous-titres .

Mise à jour:
je ne me souviens pas qu'Aegisub ait une fonctionnalité pour définir automatiquement le début et la fin d'une phrase parlée dans le fichier de sous-titres. Et je ne vois aucune mention d'une telle fonction sur le site. Il est cependant assez facile de (régler les combinaisons de touches) régler ces heures manuellement.

Y a-t-il même un programme qui a une telle fonction (dans n'importe quel OS)?

Fosse
la source
J'ai aussi utilisé Aegsub sur Windows, je ne savais pas qu'il était disponible pour Linux .. merci Pit :) ... Aegsub est un sous-titreur très compétent ... son format par défaut est ASS (une évolution de SSA .. Sub-StationAlpha format) .. il gère Unicode et a des outils spéciaux pour préparer du texte karaoké ....
Peter.O
2
Merci pour Aegisub. J'essaie de comprendre le flux de travail pour ce programme. Peut-il scanner la vidéo entière et créer les timings pour chaque phrase de sous-titre? Il ne semble pas avoir de fonction de synthèse vocale.
user4124
Vous voudrez peut-être lire docs.aegisub.org/manual/… .
Pit
Aegisub ne génère pas automatiquement de sous-titres. Nous devons écrire des sous-titres en l'utilisant. Ce n'est donc probablement pas la solution à cette question.
Harshitha Palihawadana
Les questions ont été éditées 3 ans (!) Après ma réponse. L'original «Quel programme utiliser pour créer des sous-titres pour une vidéo» ne mentionnait rien d'automatique ou de synthèse vocale.
Pit
3

Je n'ai pas trouvé de moyen d'obtenir le programme de sous-titres pour ajouter automatiquement des sous-titres rudimentaires, en analysant les voix dans la vidéo.

Par conséquent, l'alternative que j'utilise est

  1. Téléchargez la vidéo sur Youtube (par exemple, en privé) et utilisez la fonction intégrée pour créer automatiquement des sous-titres rudimentaires.

Puis,

  1. Ajoutez la vidéo à http://www.universalsubtitles.org/ et créez manuellement les délais pour chaque phrase, si la manière automatisée sur Youtube n'a pas fonctionné, ou si les phrases font des erreurs.
  2. Utilisez les sous-titres GNOME (trouvés dans le Software Center) afin de nettoyer les sous-titres et de corriger les horaires.
user4124
la source
1
Cette réponse semble être la plus pertinente pour la question de la génération automatique des fichiers de sous-titres.
Garrett
Il est surprenant que YouTube puisse générer automatiquement des sous-titres (approximatifs), mais il n'y a apparemment aucun programme qui le puisse.
Garrett
3

Personnellement, j'aime les sous-titres Gnome, il est disponible dans les référentiels.

sudo apt-get install gnome-subtitles
Marlinc
la source
1

Vous pouvez utiliser cet utilitaire de ligne de commande

Autosub est un utilitaire pour la reconnaissance automatique de la parole et la génération de sous-titres. Il prend une vidéo ou un fichier audio en entrée, effectue une détection d'activité vocale pour trouver des régions vocales, fait des demandes parallèles à l'API Google Web Speech pour générer des transcriptions pour ces régions, (éventuellement) les traduit dans une langue différente, et enregistre enfin le résultat sous-titres sur le disque.

https://github.com/agermanidis/autosub/

Utilisateurs de Python3, procédez comme suit:

pip install git+https://github.com/BingLingGroup/autosub.git@alpha

Assurez-vous que ffmpeg est installé.

Mohammad Efazati
la source
0

Ok, j'ai trouvé un outil qui a l'air sympa et similaire à l'atelier de sous-titres - éditeur de sous-titres (apt-get install subtitleeditor).

J'ai essayé de le comparer aux sous-titres de Gnome, l'éditeur de sous-titres semble plus avancé.

idgar
la source
0

Pour KDE, un bon éditeur de sous-titres est subtitlecomposer. Installez-le avec la commande

sudo apt-get install subtitlecomposer

ou en utilisant le lien subtitlecomposer Installer le sous-titreur

Anwar
la source