Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Juancfernandez en 20 Septiembre 2019, 03:08 am



Título: Es posible trascribir archivo de audio a .txt? como dictado por voz con un batch
Publicado por: Juancfernandez en 20 Septiembre 2019, 03:08 am
Buenas noches. ;) ;)

 Estoy aprendiendo a programar batch para facilitarme la vida ;-) ;-), y llevando adelante una idea que se me ocurrió me tope con una duda. :-\

Es posible que un batch tome un archivo .mp3 y lo traduzca a .txt? Porque arme un batch que me envía audios con el api de telegram y me gustaría que cuando ese audio contenga una palabra especifica me envié una alerta. He buscado toda la semana y no encontré nada.


Título: Re: Es posible traducir .mp3 a .txt?
Publicado por: MCKSys Argentina en 20 Septiembre 2019, 16:55 pm
Lo puedes encodear en base 64 y mandarlo como texto.

Porque arme un batch que me envía audios con el api de telegram y me gustaría que cuando ese audio contenga una palabra especifica me envié una alerta.

No se a que te refieres con eso, porque va a depender directamente de la "conversion" que hagas de los datos.

Por las dudas, busca info sobre el formato mp3.

Saludos!


Título: Re: Es posible traducir .mp3 a .txt?
Publicado por: Shell Root en 20 Septiembre 2019, 17:26 pm
Creo que se refiere a que si en el audio contiene la palabra "HOLA" se envie, es decir, deberá de interpretar el sonido para encontrar la palabra.

Lo ve complejo we


Título: Re: Es posible traducir .mp3 a .txt?
Publicado por: EdePC en 20 Septiembre 2019, 18:06 pm
Saludos,

- Por lo que he estado buscando, existen servicios Cloud para esto, por ejemplo Azure: https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/batch-transcription o IBM Watson: https://speech-to-text-demo.ng.bluemix.net/

- En particular he utilizado el IBM Watson pero solo OnLine, ya que otra opción Dragon Speaking que se supone es muy bueno para ambientes OffLine pero es muy pesado XD.


Título: Re: Es posible traducir .mp3 a .txt?
Publicado por: Serapis en 20 Septiembre 2019, 19:44 pm
Lo que yo entiendo es que pretende tomar los bytes de un fichero (*.mp3), y codificarlos (por ejemplo en base-64, UUEncode, BinHex, etc..), y guardar el contenido así convertido en un *.txt ...luego lo que haga con el fichero, será lo que sea. Tarde o temprano, se supone que tendrá que hacer la operación inversa.

Los lenguajes de script, suelen ser mas o menos limitados, así que dependerá de cual se elija para que sea más sencillo o más complicado.
La idea es ir leyendo y reconociendo los bytes, 3 bytes (3*8=24bits), se codifican en 4 caracteres (4+6=24 bits). Esos 4 caracteres cuando se guarden ocuparán 32 bits, por lo que el tamaño del fichero resultante aumentará 1/3 en tamaño. Así el tamaño total del nuevo fichero será x = ((x /3) * 4)

Si al final el lenguaje elegido es tan limitado que no permite ciertas cosas, como leer un fichero y procesar en un bucle, todavía desde ellos puede invocarse alguna funcionalidad externa... Esto es, un programa externo que recibe algunos parámetros, como comando (entre ellos la ruta del fichero y la operación deseada 'code/decode'...) y que lleva a cabo la tarea deseada, constando en el script, simplemente la llamada a dicha funcionalidad... en fin, no es insalvable...


Mmmmm... ahora releyendo, creo que lo que en realidad intenta es convertir la voz (letra) de las canciones a texto (TextToSpeech , más bien SongToSpeech) a un fichero de texto...
Si resulta ser esto... Decir que yo no conozco ningún programa que sea capaz de hacer eso bien, la voz es una cosa, cantando es otro 'cantar', algo muy distinto... hay veces que ni un humano alcanza a entender alguna palabra cantada incluso en su propio idioma.
Lo que si hay es multitud de sitios en la red, donde puedes localizar las letras de tal o cual canción e incluso del álbum completo...


Título: Re: Es posible traducir .mp3 a .txt?
Publicado por: @XSStringManolo en 20 Septiembre 2019, 23:20 pm
Como siempre que se da información ambigua cada uno entiende una cosa jajaja.
Yo entendí que quiere trabajar con los metadatos tipo; Album, Artista, Titulo, Fecha.



Título: Re: Es posible traducir .mp3 a .txt?
Publicado por: Juancfernandez en 20 Septiembre 2019, 23:55 pm
Perdón, me exprese mal. Estoy tratando de hacer un batch que transcriba un audio x.mp3 de una reunión por ejemplo a un .txt como funciona el dictado de google.

Generalmente los audios que quiero transcribir no son mas de 60 segundos. Encontré por la web algunos comandos en python pero estoy aprendiendo batch y uso windows y se me complica mucho. Si no es posible tendre que empezar a estudiar python

Seguramente debería empezar por el comando CURL.


Título: Re: Es posible traducir .mp3 a .txt?
Publicado por: Juancfernandez en 20 Septiembre 2019, 23:57 pm
Creo que se refiere a que si en el audio contiene la palabra "HOLA" se envie, es decir, deberá de interpretar el sonido para encontrar la palabra.

Lo ve complejo we

Claro, eso mismo quiero hacer


Título: Re: Es posible traducir .mp3 a .txt?
Publicado por: @XSStringManolo en 21 Septiembre 2019, 06:35 am
Perdón, me exprese mal. Estoy tratando de hacer un batch que transcriba un audio x.mp3 de una reunión por ejemplo a un .txt como funciona el dictado de google.

Generalmente los audios que quiero transcribir no son mas de 60 segundos. Encontré por la web algunos comandos en python pero estoy aprendiendo batch y uso windows y se me complica mucho. Si no es posible tendre que empezar a estudiar python

Seguramente debería empezar por el comando CURL.
Tu viste los malos que son los subtítulos en videos de Youtube generados automáticamente? Y en muchos casos de Youtuber son gente que hace énfasis en la vocalización, modulación de voz, graban en entorno muy silencioso, habitación y algunos estudio, con muy buenas calidades de audio, con micros que cuestan 1000€+ y a 5 centímetros de ellos.
Y aún así el algoritmo de Youtube no pilla ni la mitad de las palabras correctamente.

Lo siento pero no vas a poder hacer algo así, y menos de audios de una reunión. Contrata a alguien para que lo haga con un contrato de confidencialidad.

Podrías poner el audio contra un sistema como los asistentes de voz que están bastante avanzados, pero el problema que veo es que no tienes forma de comprobar que lo que está traduciendo sea lo correcto. Por eso comento lo de ML.

Pd: Batch no está pensado para esas cosas. Opta por alguno de los lenguajes top 10 de popularidad. Mírate las librerías que tienen sobre el tema.