Programma per generare automaticamente i sottotitoli usando la sintesi vocale?


12

Ho un video per cui voglio creare i sottotitoli. Esiste un programma in grado di eseguire una sintesi vocale rudimentale al fine di

  1. impostare l'avvio / arresto corretti di ogni singolo sottotitolo
  2. creare sottotitoli testuali rudimentali (usando una sorta di sintesi vocale)

Conosco i sottotitoli di gnome. Tuttavia, è necessario uno sforzo estremo per creare manualmente quei sottotitoli. Devi selezionare te stesso l'inizio e la fine per ogni frase.

Youtube ha le funzionalità di cui sopra (crea sottotitoli di testo rudimentali ai tempi corretti, usando la sintesi vocale). Tuttavia preferirei non caricare i video su Youtube solo per ottenere i miei sottotitoli. È possibile eseguire i sottotitoli in modo efficiente in Ubuntu?

Aggiornamento : ho intenzione di utilizzare solo i sottotitoli .srt e non ho bisogno di codificarli sul video. Il mio più grande requisito è che il programma trovi automaticamente l'inizio / fine per ogni frase, in modo che io scriva il testo in essa.

Aggiornamento n. 2 : è disponibile il software Speech-to-Text per Linux, con il pacchetto CMU Sphinx. È possibile utilizzare CMU Sphinx con un programma di sottotitoli secondo http://sourceforge.net/projects/cmusphinx/forums/forum/5471/topic/3949891 Inoltre, uno strumento di sottotitoli è a conoscenza di questa funzionalità di Sfinge di CMU, http: //groups.google.com/group/universal-subtitles-testing/browse_thread/thread/613361ffb921b43b (strumento basato sul web), tuttavia non vi è alcun riferimento nell'ultimo codice sorgente che hanno aggiunto CMU Sphinx. La ricerca continua a trovare un programma che utilizza CMU Sphinx per un rudimentale discorso al testo (che imposterà anche i tempi corretti), come già fa Youtube.


c'è un'applicazione chiamata magpie che fa qualcosa del genere credo.
RolandiXor

Risposte:


3

Ho usato Aegisub su Windows alcuni anni fa, e ne sono rimasto davvero contento. Apparentemente è disponibile per Linux. È piuttosto autoesplicativo.

Aegisub crea solo il file dei sottotitoli, ad esempio un file .srt. Per combinare il video e i sottotitoli per creare un sottotitolo codificato, è comunque necessario utilizzare un secondo programma.
Su Windows ho usato VirtualDub, ma non è disponibile per Linux. Puoi usare VLC per farlo su Linux :

Crea i tuoi sottotitoli in Aegisub, salvandolo come al solito come file .ass.

Usa VLC per aggiungere quella traccia di sottotitoli al tuo video. Sottotitoli -> Aggiungi file sottotitoli ...

Configura lo stile di visualizzazione dei sottotitoli e le impostazioni in modo che vengano visualizzate a tuo piacimento. Strumenti -> Preferenze -> Sottotitoli / OSD

Ora puoi guardare il video per assicurarti che i sottotitoli vengano visualizzati come previsto. Ad esempio, posso controllare alcuni sottotitoli che ho specificato in Aegisub per essere visualizzati nella parte superiore dello schermo anziché nella parte inferiore.

L'output sarà identico a come appare ora, quindi assicurati che tutto vada bene.

  1. Vai a Media -> Converti / Salva ... (Ctrl + R).

  2. In Selezione file, aggiungi il tuo file video. Seleziona "Usa un file di sottotitoli" e cerca il tuo file secondario .ass.

  3. Fai clic sulla freccia giù sul pulsante Converti / Salva e fai clic su Converti ... (Alt + O).

  4. In Impostazioni, assicurati che l'opzione Converti sia selezionata. Selezionare l'opzione Visualizza l'uscita. I sottotitoli non vengono aggiunti per qualche motivo a meno che non si spunta questo.

  5. Modifica il profilo in modo che le impostazioni audio e video siano quelle che desideri. Nella scheda dei sottotitoli, selezionare la casella Sottotitoli e utilizzare il codec DVB per i sottotitoli. Assicurati di selezionare "Sottotitoli sovrapposti sul video". Premi Salva.

  6. Immettere una cartella di destinazione e un nome file nella casella Destinazione.

  7. Premi start.

Aspetta che sia fatto, e basta. L'avvertenza con questo metodo è che la codifica avverrà in tempo reale con il video, quindi se hai un video di 2 ore, ci vorranno 2 ore. Ciò è dovuto alla spunta della casella "Visualizza l'output". Ma per qualche motivo funziona solo quando si spunta questo.

Ci sono anche altri editor di sottotitoli .

Aggiornamento:
non ricordo che Aegisub abbia una funzionalità per impostare automaticamente l'inizio e la fine di una frase pronunciata nel file dei sottotitoli. E non vedo alcuna menzione di tale funzione da nessuna parte sul sito. Tuttavia, con (combinazioni di tasti) è abbastanza facile impostare questi tempi manualmente.

Esiste un programma che ha una tale funzione (in qualsiasi sistema operativo)?


Anch'io ho usato Aegsub su Windows, non mi rendevo conto che era disponibile per Linux .. grazie Pit :) ... Aegsub è un sottotitolatore molto competente ... il suo formato predefinito è ASS (un'evoluzione da SSA .. Sottostazione StationAlpha formato) .. gestisce Unicode e ha strumenti speciali per la preparazione del testo Karaoke ....
Peter.O

2
Grazie per Aegisub. Sto cercando di capire il flusso di lavoro per questo programma. Può scansionare l'intero video e creare i tempi per ogni frase dei sottotitoli? Non sembra avere una funzionalità di sintesi vocale.
user4124

Potresti voler leggere docs.aegisub.org/manual/… .
Pit

Aegisub non sta generando automaticamente i sottotitoli. Dobbiamo scrivere i sottotitoli utilizzandolo. Quindi probabilmente questa non è la soluzione per questa domanda.
Harshitha Palihawadana,

Le domande sono state modificate 3 anni (!) Dopo la mia risposta. L'originale "Quale programma utilizzare per creare i sottotitoli per un video" non menzionava nulla di automatico o di sintesi vocale.
Pit

3

Non ho trovato un modo per ottenere il programma di sottotitoli per aggiungere automaticamente i sottotitoli rudimentali, analizzando le voci nel video.

Pertanto, l'alternativa che uso è

  1. Carica il video su Youtube (ad esempio, privatamente) e utilizza la funzione integrata per creare automaticamente i sottotitoli rudimentali.

Poi,

  1. Aggiungi il video a http://www.universalsubtitles.org/ e crea manualmente i tempi per ogni frase, se il modo automatizzato in Youtube non ha funzionato o se le frasi sono sbagliate.
  2. Usa i sottotitoli GNOME (disponibili nel Software Center) per ripulire i sottotitoli e correggere eventuali tempi.

1
Questa risposta sembra essere la più rilevante per la questione della generazione automatica dei file dei sottotitoli.
Garrett,

È sorprendente che YouTube sia in grado di generare automaticamente sottotitoli (approssimativi), ma a quanto pare non esiste un programma in grado di farlo.
Garrett,

3

Personalmente mi piace Gnome Sottotitoli è disponibile nei repository.

sudo apt-get install gnome-subtitles

1

È possibile utilizzare questa utilità da riga di comando

Autosub è un'utilità per il riconoscimento vocale automatico e la generazione di sottotitoli. Prende un video o un file audio come input, esegue il rilevamento dell'attività vocale per trovare aree vocali, invia richieste parallele all'API di Google Web Speech per generare trascrizioni per tali regioni, (facoltativamente) le traduce in una lingua diversa e infine salva il risultato sottotitoli su disco.

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

Utenti Python3, procedere come segue:

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

Assicurati di aver installato ffmpeg.


0

Ok, ho trovato uno strumento che sembra carino e simile all'officina dei sottotitoli: l'editor dei sottotitoli (apt-get install subtitleeditor).

Ho provato a confrontarlo con i sottotitoli di Gnome, l'editor dei sottotitoli sembra uno strumento più avanzato.


0

Per KDE, un buon editor di sottotitoli è composto da sottotitoli. Installalo con il comando

sudo apt-get install subtitlecomposer

o usando il link subtitlecomposer Installa subtitlecomposer

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.