La forma más rápida y sencilla de hacerlo es usar un reproductor multimedia que admita opciones de línea de comandos.
mpv es mi elección para la reproducción de medios de uso general, y estoy usando FFmpeg para extraer la duración del audio.
Antes de entrar en los detalles de mi solución propuesta, debe saber que mpv admite enlaces de teclas que también podrían ser suficientes para ayudar en las tareas de transcripción / traducción:
- ¿Cuál es la mejor estructura y algoritmo de datos para encontrar un valor máximo dentro de un subconjunto de una población de datos que satisfaga alguna condición de rango?
- ¿Cuál es tu recurso favorito para aprender sobre programación competitiva?
- ¿Qué es mejor para la programación competitiva, la introducción del MIT a los algoritmos o los tutoriales de TopCoder?
- No puedo entender algoritmos y estructuras de datos. ¿Cómo puedo aprender algoritmos y estructuras de datos de una manera simple?
- ¿Me puede explicar qué es una estructura de datos?
Izquierda y derecha
Busque hacia atrás / adelante 5 segundos. Shift + flecha realiza una búsqueda exacta de 1 segundo (ver –hr-seek).Arriba y abajo
Busque hacia adelante / hacia atrás 1 minuto. Shift + flecha realiza una búsqueda exacta de 5 segundos (ver –hr-seek).[y]
Disminuya / aumente la velocidad de reproducción actual en un 10%.{y}
Reducir a la mitad la velocidad de reproducción actual.Retroceso
Restablezca la velocidad de reproducción a la normal.p / ESPACIO
Pausa (presionar nuevamente para pausar).
Utilizo Linux como mi sistema operativo principal, pero MPV es multiplataforma, por lo que debería poder obtenerlo para cualquier sistema operativo que esté ejecutando. El siguiente es un script de shell rápido con valores estáticos que hace lo que solicitó.
#! / bin / bash
# Variables
# Archivo de audio que queremos transcribir / traducir
playfile = ~ / sample.mp3
# Longitud calculada de nuestro audio, en segundos
longitud_total = $ (($ (ffprobe -i “$ {playfile}” -show_format -v quiet | grep Duration | cut -d “=” -f2 | cut -d “.” -f1) + 1))
# Posición de juego actual
curr_pos = 0
# Longitud del segmento que queremos escuchar
paso = 10
# Pausa de longitud
pausa = 15
# Duración del búfer para volver a la reproducción de cada segmento
buffer = 2
# Bucle principal, ciclos hasta que hayamos terminado
# mientras nuestra posición de juego actual está dentro de la longitud de la muestra
mientras que [$ {curr_pos} -lt $ {total_length}]; hacer
mpv –start = $ {curr_pos} –length = $ {step} “$ {playfile}”
dormir $ {pausa}
curr_pos = $ (($ {curr_pos} + $ {step} – $ {buffer}))
hecho
Si está utilizando una Mac, debería ser trivial adaptarse. Si está utilizando Windows, no debería ser demasiado complejo, pero no puedo ayudarlo allí.
Espero eso ayude.