viernes, 29 de mayo de 2009

Unir multilples archivos mp4

Para unir y encodear multiples archivos mp4
mencoder parte1.mp4 parte2.mp4 parte3.mp4 parte4.mp4 parte5.mp4 parte6.mp4 parte7.mp4 parte8.mp4 -o video.mp4 -of lavf -lavfopts format=mp4 -vf harddup -oac lavc -ovc lavc -lavcopts acodec=libfaac:vcodec=libx264

4 comentarios:

  1. Gracias

    **** Cómo cortar fragmentos de un vídeo MP4 y luego pegarlos (terminal, Linux, mencoder, web de TV, rtmpdump o flvstreamer) ****

    El vídeo se bajó de un sitio web de una televisión de España, con ayuda de http://www.pydowntv.com/ y del comando de terminal rtmpdump. Tiene extensión mp4 (se llama algo así:nombre_tal.mp4), de códec de vídeo "H.264/AVC Video" y de códec de audio "MPEG-4 AAC audio". Todo se ha hecho en Linux Mint con GNOME clásico como entorno de escritorio.

    ------> Procedimiento (suponemos 3 fragmentos):

    * Si no tienes mencoder instálalo así desde una consola o terminal:
    sudo apt-get install mencoder
    * Ejecutamos en el terminal:
    mencoder /ruta/al/video_de_partida.mp4 -ovc copy -oac faac -ss segundo_de_inicio1 -endpos duracion_en_segundos1 -o /ruta/al/cacho1.mp4
    mencoder /ruta/al/video_de_partida.mp4 -ovc copy -oac faac -ss segundo_de_inicio2 -endpos duracion_en_segundos2 -o /ruta/al/cacho2.mp4
    mencoder /ruta/al/video_de_partida.mp4 -ovc copy -oac faac -ss segundo_de_inicio3 -endpos duracion_en_segundos3 -o /ruta/al/cacho3.mp4
    mencoder -ovc copy -oac copy -o /ruta/al/video_de_destino.mp4 /ruta/al/cacho1.mp4 /ruta/al/cacho2.mp4 /ruta/al/cacho3.mp4
    ¡Listo!

    ------> Historia:
    Por ahí leí de obtener los cachos o partes así:
    mencoder /ruta/al/video_de_partida.mp4 -ovc copy -oac copy -ss segundo_de_inicio1 -endpos duracion_en_segundos1 -o /ruta/al/cacho1.mp4
    Pero no me lo permitía. Me sugería cambiar "-oac copy" por "-oac pcm", pero así el fichero ocupaba mucho más y el proceso tardaba más que de esta forma, que me fue muy bien para la primera parte (obtener cachos), e iba rapidísimo:
    ffmpeg -i /ruta/al/video_de_partida.mp4 -vcodec copy -acodec copy -ss segundo_de_inicio1 -t duracion_en_segundos1 /ruta/al/cacho1.avi (si ponía cacho1.mp4 el sonido y la imagen no iban coordinados)
    Pero luego me las ví mal para unir estos fragmentos.
    Esto de http://es.scribd.com/doc/47949002/Manual-basico-del-comando-ffmpeg parecía funcionar ...:
    Primero se pasan a mpeg para que estén en un formato común:
    ffmpeg -i /ruta/al/cacho1.avi -sameq /ruta/al/cacho1.mpeg
    En segundo y último lugar se unen los vídeos resultantes usando cat:
    cat /ruta/al/cacho1.mpeg /ruta/al/cacho2.mpeg > /ruta/al/video_de_destino.mpeg
    ... pero la cosa iba lenta, parecía perderse algo de calidad y el resultado ocupaba mucho más.

    Tampoco conseguía juntar los fragmentos bien con avimerge ni con mencoder (ni con cat más mencoder) ni con lxsplit ni con mpeg3cat ni con mkvmerge (puestos a probar ... de perdidos al río).

    Por suerte en mis requetebúsquedas (buscando "menconder MPEG4 audio codec" o algo así) dí con esta página oficial de mencoder: http://www.mplayerhq.hu/DOCS/HTML/en/menc-feat-selecting-codec.html ... ví "faac | FAAC AAC audio encoder" y probé a cambiar "-oac copy" por "-oac faac" al obtener un fragmento y ¡tachán! Tardaba un poco más pero luego podía pegar las partes fenomenal con el mismo mencoder.

    Fuente: http://bandaancha.eu/foros/como-cortar-fragmentos-video-mp4-luego-1709763

    ResponderEliminar
  2. En Linux Mint 17 MATE, tras instalar mencoder y ejecutar algo así ...

    mencoder /ruta/al/video_de_partida.mp4 -ovc copy -oac faac -ss segundo_de_inicio1 -endpos duracion_en_segundos1 -o /ruta/al/cacho1.mp4

    ... me devuelve "MPlayer was compiled without libfaac", sin obtener el fragmento del vídeo.

    Tengo 3 alternativas: cambiar en el comando faac por ...

    a) pcm (la que menos tarda pero más ocupa -el fichero del fragmento-)

    b) lavc (tarda algo más que el anterior pero ocupa poco más de la mitad)

    c) mp3lame (tarda algo más que el anterior pero ocupa algo menos -más o menos la mitad que con pcm-)

    ResponderEliminar
    Respuestas
    1. A la hora de unir cachos obtenidos con pcm y mp3lame (cada uno con otros obtenidos de la misma forma) me dan ficheros de unión buenos, pero los obtenidos con lavc, al unirse me dan ficheros defectuosos (imágenes deficientes y vídeo y audio descoordinados).

      Eliminar