Ver la Versión Completa : [ SOLUCIONADO ] Unir archivos de audio (mp3, mp4, 3gp...) en uno solo con Tasker
SmartPhoneLover
19/11/16, 15:40:06
Hola compis, he estado probado diferentes formas de unión para los archivos multimedia de audio. Todos mediante línea de consola.
El problema es que el comando 'cat' no registra los headers, por lo que en el 60-70% de las uniones que efectué con más de 3 archivos de audio en formato mp3, el archivo final acaba con la duración del primer audio, no la suma de todos. No sé si me he explicado bien.
Otras veces me los unió correctamente, y tenian la longitud de tiempo correspondiente a la suma de todos los audios a unir. Pero solo funcionó con archivos mp3. Con los mp4 o 3gp no dieron ningún resultado.
Conocen algún otro método?
SmartPhoneLover
19/11/16, 15:41:14
El comando CAT usado fué: 'cat audio1.mp3 audio2.mp3 audio3.mp3 > audiofinal.mp3'
WillyWeb
19/11/16, 21:17:56
...El problema es que el comando 'cat' no registra los headers, por lo que en el 60-70% de las uniones que efectué con más de 3 archivos de audio en formato mp3, el archivo final acaba con la duración del primer audio, no la suma de todos. No sé si me he explicado bien.
Eso no te ha pasado en el 60%-70% de los casos. Te ha pasado en el 100% pero no te has dado cuenta. :rolleyes:
El motivo lo has mencionado en la exposición del problema ... el sistema que estás usando no tiene en cuenta las cabeceras y el archivo de salida siempre tiene la del primer archivo que intentas concatenar. :silbando:
Otras veces me los unió correctamente, y tenian la longitud de tiempo correspondiente a la suma de todos los audios a unir.
:oh: eso tendría yo que verlo. Y si te ha salido algo que te ha hecho pensar que el resultado era el esperado lo más probable es que hayas interpretado mal ese resultado.
Conocen algún otro método?
-Estudia el formato del archivo que quieres leer. Google es tu amigo ;-)
-Lee las cabeceras de los archivos que quieres concatenar
-Comprueba que tienen formatos compatibles (no todos los son)
-Calcula una nueva cabecera
-Lee los datos a concatenar
-Genera un nuevo archivo con la cabecera calculada y los datos de cada archivo
Esa debería ser la forma, no usando un comando de consola pensado para concatenar/mostrar archivos de texto. :loco:
Caravantes
19/11/16, 21:55:15
Esa debería ser la forma, no usando un comando de consola pensado para concatenar/mostrar archivos de texto.
Creo que merece la pena explicarlo un poco más. El comando CAT está pensado para "concatenar" ficheros de texto plano; o sea que tienen que ser archivos que carezcan de cabeceras, metadatos o cualquier otra estructura. El CAT coge la secuencia de caracteres de un archivo y le añade a continuación la secuencia de caracteres del siguiente archivo, y así sucesivamente. Es por esto que hay muy pocas posibilidades de que funcione bien con ningún otro tipo de archivo actual como podrían ser documentos de Word, hojas de cálculo, imágenes, ficheros de audio actuales, etc.
Hace muchos años, cuando comenzaron a digitalizarse los primeros archivos de audio, sí se empezó por usar formatos que carecían de cabeceras; eran formatos también llamados "de tipo "raw". Utilizaban extensiones como SND, FSSD y UL; están totalmente en desuso porque carecen de compresión y de otras muchas ventajas que se utilizan actualmente como algo cotidiano. Con esos ficheros sí podría haber funcionado el comando CAT, pero creo que ahora te va a ser difícil encontrar una app que convierta los formatos actuales a uno de esos formatos sin cabecera.
Aún así, puede haber algunas opciones para conseguir lo que quieres. Una de ellas es tan simple como tratar de grabar el audio desde el micrófono del dispositivo, al tiempo que vas reproduciendo los ficheros de audio por el altavoz. Otra podría ser utilizar alguno de los servicios online que existen para unir archivos de audio. Y la última que se me ocurre es tratar de usar una app específica que permita unir los archivos en el smartphone. Pero con cualquiera de esas tres opciones creo que no va a ser nada fácil automatizar eso mediante Tasker. Más información en
https://www.google.es/search?num=50&newwindow=1&safe=off&espv=2&q=archivo+OR+fichero+formato+audio+%22sin+cabecera %22&oq=archivo+OR+fichero+formato+audio+%22sin+cabecer a%22&gs_l=serp.3...4895.7398.0.7734.6.6.0.0.0.0.191.752 .0j4.4.0....0...1c.1.64.serp..2.0.0.cOuBYmh3o7s
SmartPhoneLover
22/11/16, 12:01:04
Bueno, ya he logrado instalarme el ffmpeg en Android. Ahora toca ver como hacer para empezar con esa nueva forma y mucho más completa.
WillyWeb
22/11/16, 14:56:26
Revisa estos enlaces...
http://stackoverflow.com/questions/14498539/how-to-overlay-two-audio-files-using-ffmpeg
https://trac.ffmpeg.org/wiki/Concatenate
...y suerte. :ok:
SmartPhoneLover
09/12/16, 15:25:37
Pues nada ya esta.
El comando básico para concatenar archivos es:
LD_LIBRARY_PATH=/data/data/com.termux/files/usr/lib /data/data/com.termux/files/usr/bin/ffmpeg -i "concat:Archivo1.xxx|Archivo2.xxx|..." -acodec copy Out.xxx
Es simple, la primera parte del comando se encarga de cargar y crear los vínculos virtuales de las librerias necesarias, luego se ejecuta el comando, y listo.
Como se piede ver seguramente se producierán errores por no haber adaptado la información metadata de los tres archivos, cogiendose solo la de la primera pista de audio. Pero bueno es ya es otro cantar.
Marco el hilo como solucionado
vBulletin® v3.8.1, Copyright ©2000-2025, Jelsoft Enterprises Ltd.