Programa para generar automáticamente subtítulos usando voz a texto?

12

Tengo un video para el que quiero crear subtítulos. ¿Existe un programa que pueda realizar voz a texto rudimentario para

  1. establecer el inicio / parada correctos de cada subtítulo individual
  2. crear subtítulos de texto rudimentarios (usando algún tipo de voz a texto)

Sé sobre gnome-subtítulos. Sin embargo, se requiere un gran esfuerzo para crear esos subtítulos manualmente. Debe seleccionar el inicio y el final de cada oración.

Youtube tiene las características anteriores (crea subtítulos de texto rudimentarios en los tiempos correctos, usando voz a texto). Sin embargo, preferiría no subir los videos a Youtube solo para obtener mis subtítulos. ¿Es posible hacer los subtítulos de manera eficiente en Ubuntu?

Actualización : planeo usar solo los subtítulos .srt, y no necesito codificarlos en los videos. Mi mayor requisito es que el programa encuentre automáticamente el inicio / parada de cada oración, para que pueda escribir el texto en ella.

Actualización n. ° 2 : Existe el software Speech-to-Text para Linux, con el paquete CMU Sphinx. Es posible usar CMU Sphinx con un programa de subtítulos de acuerdo con http://sourceforge.net/projects/cmusphinx/forums/forum/5471/topic/3949891 Además, una herramienta de subtítulos conoce esta función de CMU Sphinx, http: //groups.google.com/group/universal-subtitles-testing/browse_thread/thread/613361ffb921b43b (herramienta basada en la web), sin embargo, no hay ninguna referencia en el último código fuente que agregaron CMU Sphinx. La búsqueda continúa para encontrar un programa que use CMU Sphinx para voz rudimentaria a texto (que también establecería los tiempos correctos), como ya lo hace Youtube.

usuario4124
fuente
hay una aplicación llamada urraca que hace algo como esto, creo.
RolandiXor

Respuestas:

3

Utilicé Aegisub en Windows hace algunos años, y quedé muy contento con él. Aparentemente está disponible para Linux. Es bastante autoexplicativo.

Aegisub solo crea el archivo de subtítulos, por ejemplo, un archivo .srt. Para combinar el video y los subtítulos para crear un subtítulo codificado, aún necesita usar un segundo programa.
En Windows utilicé VirtualDub, pero no está disponible para Linux. Puede usar VLC para hacer esto en Linux :

Cree sus subs en Aegisub, guardándolo como de costumbre como un archivo .ass.

Use VLC para agregar esa pista de subtítulos a su video. Subtítulo -> Agregar archivo de subtítulos ...

Configure el estilo y la configuración de visualización de subtítulos para que se muestren a su gusto. Herramientas -> Preferencias -> Subtítulos / OSD

Ahora puede ver el video para asegurarse de que los subs se muestren como lo desea. Por ejemplo, puedo verificar que ciertos subs que he especificado en Aegisub se muestren en la parte superior de la pantalla en lugar de en la parte inferior.

El resultado será idéntico a cómo se ve ahora, así que asegúrese de que todo esté bien.

  1. Vaya a Medios -> Convertir / Guardar ... (Ctrl + R).

  2. En Selección de archivo, agregue su archivo de video. Marque "Usar un archivo de subtítulos" y busque su subarchivo .ass.

  3. Haga clic en la flecha hacia abajo en el botón Convertir / Guardar y haga clic en Convertir ... (Alt + O).

  4. En Configuración, asegúrese de que la opción Convertir esté marcada. Marque la opción Mostrar la salida. Los subs no se agregan por alguna razón a menos que marques esto.

  5. Edite el perfil para que la configuración de video y audio sea lo que desea. Debajo de la pestaña de subtítulos, marque la casilla Subtítulos y use el códec de subtítulos DVB. Asegúrate de marcar "Superponer subtítulos en el video". Presione guardar.

  6. Ingrese una carpeta de destino y un nombre de archivo en el cuadro Destino.

  7. Presiona inicio.

Espera a que se haga, y listo. La advertencia con este método es que la codificación ocurrirá en tiempo real con el video, por lo que si tiene un video de 2 horas, tomará 2 horas. Esto se debe a que marca la casilla 'Mostrar la salida'. Pero por alguna razón solo funciona cuando marcas esto.

También hay otros editores de subtítulos .

Actualización:
no recuerdo que Aegisub tenga una funcionalidad para establecer automáticamente el comienzo y el final de una oración hablada en el archivo de subtítulos. Y no veo una mención de tal función en ninguna parte del sitio. Sin embargo, con (combinaciones de teclas) es bastante fácil establecer esos tiempos manualmente.

¿Hay algún programa que tenga tal función (en cualquier sistema operativo)?

Pozo
fuente
Yo también usé Aegsub en Windows, no me di cuenta de que estaba disponible para Linux ... gracias Pit :) ... Aegsub es un subtitulador muy competente ... su formato predeterminado es ASS (una evolución de SSA ... Sub-StationAlpha formato) ... maneja Unicode y tiene herramientas especiales para preparar texto de Karaoke ...
Peter.O
2
Gracias por Aegisub. Estoy tratando de averiguar el flujo de trabajo para este programa. ¿Puede escanear todo el video y crear los tiempos para cada oración de subtítulos? No parece tener una función de voz a texto.
user4124
Es posible que desee leer docs.aegisub.org/manual/… .
Pit
Aegisub no genera subtítulos automáticamente. Tenemos que escribir subtítulos usándolo. Entonces, probablemente esta no sea la solución para esta pregunta.
Harshitha Palihawadana
Las preguntas fueron editadas 3 años (!) Después de mi respuesta. El original "Qué programa usar para crear subtítulos para un video" no mencionó nada de automático o de texto a voz.
Hoyo
3

No encontré una manera de hacer que el programa de subtítulos agregue automáticamente subtítulos rudimentarios, analizando las voces en el video.

Por lo tanto, la alternativa que uso es

  1. Suba el video a Youtube (por ejemplo, en privado) y use la función integrada para crear subtítulos automáticamente rudimentarios.

Entonces,

  1. Agregue el video a http://www.universalsubtitles.org/ y cree manualmente los marcos de tiempo para cada oración, si la forma automatizada en Youtube no funcionó, o las oraciones están fallando.
  2. Utilice los subtítulos de GNOME (que se encuentran en el Centro de software) para limpiar los subtítulos y corregir los tiempos.
usuario4124
fuente
1
Esta respuesta parece ser la más relevante para la cuestión de generar automáticamente los archivos de subtítulos.
Garrett
Es sorprendente que YouTube pueda generar automáticamente subtítulos (aproximados), pero aparentemente no hay ningún programa que pueda hacerlo.
Garrett
3

Personalmente me gustan los subtítulos de Gnome, está disponible en los repositorios.

sudo apt-get install gnome-subtitles
Marlinc
fuente
1

Puedes usar esta utilidad de línea de comandos

Autosub es una utilidad para el reconocimiento automático de voz y la generación de subtítulos. Toma un video o un archivo de audio como entrada, realiza la detección de actividad de voz para encontrar regiones de voz, realiza solicitudes paralelas a la API de Google Web Speech para generar transcripciones para esas regiones, (opcionalmente) las traduce a un idioma diferente y finalmente guarda el resultado subtítulos al disco.

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

Usuarios de Python3, hagan esto:

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

Asegúrese de tener instalado ffmpeg.

Mohammad Efazati
fuente
0

Ok, encontré alguna herramienta que se ve bien y similar al taller de subtítulos: editor de subtítulos (apt-get install subtitleeditor).

Intenté compararlo con Gnome Subtitles, el editor de subtítulos parece una herramienta más avanzada.

idgar
fuente
0

Para KDE, un buen editor de subtítulos es subtitlecomposer. Instalarlo con el comando

sudo apt-get install subtitlecomposer

o usando el enlace subtitlecomposer Instalar subtitlecomposer

Anwar
fuente