Uniendo videos con Cacarulo

Enviado por PabliNet el 18 Septiembre, 2010 - 03:57.

Me pasó algo gracioso en Kubuntu con «mencoder» y es algo que nunca logré en Windows...

Tenía 12 videos .flv, los quería en uno solo, pero antes quise convertirlos en .avi. Entonces hice lo siguiente:

$ mencoder ../*.flv -oac pcm -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:autoaspect -o *.avi

Los videos estaban en ~/Videos/Mensajes, y yo me había posicionado en: ~/Videos/Mensajes/avi.

Después de un largo tiempo cuando termina, le doy un ls y me aparece esto:

$ ls
*.avi

No lo podía creer:

$ ls
-rw-r--r-- 1 pablinet pablinet 1861596040 2010-09-17 19:43 *.avi

Seguí sin creerlo:

$ ls -lh
-rw-r--r-- 1 pablinet pablinet 1.8G 2010-09-17 19:43 *.avi

A continuación le cambié el nombre con Dolphin, entonces me fijé si funcionaba con VLC y quedó bárbaro. Es más, tenía pensado glooglear, pero se ve que mi PC me leyó el pensamiento.

Imagen de eliminado001
Enviado por eliminado001 el 18 Septiembre, 2010 - 12:05.

Que entrada más surrealista.

Imagen de PabliNet
Enviado por PabliNet el 18 Septiembre, 2010 - 22:52.
elsenyordelcaos escribió:

Que entrada más surrealista.

¿Quisiste decir al divino botón? yo no sabía que con «mencoder» se podía unir los videos...

Imagen de Viorel
Enviado por Viorel el 19 Septiembre, 2010 - 03:52.
PabliNet escribió:

yo no sabía que con «mencoder» se podía unir los videos...

Lo correcto debería ser, supongo por lo que se ve a simple vista, usar un for para convertir archivo por archivo. Si tomas todos los archivos como *.flv no estás haciendo ninguna relación que diga que convertiras de flv a avi con el mismo nombre base sino que estas tomando esa lista de archivos como uno solo. Lo extraño es, en todo caso que te haya haceptado como nombre de salida "*.avi"

Ahora, ¿por qué Cacarulo? según veo googleando por encima es un mago pero no explicas eso en la entrada.

Imagen de PabliNet
Enviado por PabliNet el 19 Septiembre, 2010 - 05:48.
Viorel escribió:

Lo correcto debería ser, supongo por lo que se ve a simple vista, usar un for para convertir archivo por archivo. Si tomas todos los archivos como *.flv no estás haciendo ninguna relación que diga que convertiras de flv a avi con el mismo nombre base sino que estas tomando esa lista de archivos como uno solo. Lo extraño es, en todo caso que te haya aceptado como nombre de salida "*.avi"

  1. Yo pensé que el * lo iba a tomar como un comodín y que iban a quedar todos igual convertidos por separado.
  2. El objetivo final era que queden todos los videos unidos.
  3. Tampoco comprendo cómo aceptó el archivo: *.avi
Viorel escribió:

Ahora, ¿por qué Cacarulo? según veo googleando por encima es un mago pero no explicas eso en la entrada.

Sí, por el mago Cacarulo, en Argentina se lo llama a los magos que le salen los trucos de "suerte" (para no decir la palabra que rima con "cacarulo").

Imagen de Viorel
Enviado por Viorel el 19 Septiembre, 2010 - 06:56.
PabliNet escribió:
  1. Yo pensé que el * lo iba a tomar como un comodín y que iban a quedar todos igual convertidos por separado.

No, el asterisco sirve para hacer referencia a todos los archivos pero no crea ninguna referencia ni nada para ser usado a futuro. Lo correcto debería ser (si no se me escapa algo de la sintaxis y corrigiendo las rutas) algo así:

$ for i in *.flv; do mencoder $i -oac pcm -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:autoaspect -o `basename $i .flv`.avi; done
PabliNet escribió:
  1. El objetivo final era que queden todos los videos unidos.

Pues a saber si es la manera correcta, puede ser también que no haya ningún problema, obviamente salvo el nombre de salida que es un grave error de concepto. A final de cuentas son el mismo formato, con archivos de texto plano no habría ningún problema pero desconozco el manejo de estos, no edito ni audio ni video.

Imagen de PabliNet
Enviado por PabliNet el 19 Septiembre, 2010 - 19:53.
Viorel escribió:

No, el asterisco sirve para hacer referencia a todos los archivos pero no crea ninguna referencia ni nada para ser usado a futuro. Lo correcto debería ser (si no se me escapa algo de la sintaxis y corrigiendo las rutas) algo así:

$ for i in *.flv; do mencoder $i -oac pcm -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:autoaspect -o `basename $i .flv`.avi; done

Entendiste mal lo que te quise decir, el asterisco es un comodín para una cadena de caracteres, el *.flv significa: todos los archivos terminados en .flv.

Imagen de AllsSecs
Enviado por AllsSecs el 19 Septiembre, 2010 - 20:13.

Que chasco, yo había entendido que habías unido todos los vídeos en uno que se llamaba *.avi literalmenet y por eso lo habías llamado caraculo, por la similitud entre el asterisco y el ojete (*).

Imagen de Alf
Enviado por Alf el 15 Octubre, 2010 - 20:07.

Vaya que chasco me lleve, que me di a la tarea de buscar como instalar cacarulo en ubuntu meparto meparto meparto y ya cai en la cuenta que es mencoder dumb

Imagen de Pack_0
Enviado por Pack_0 el 11 Febrero, 2011 - 21:20.
AllsSecs escribió:

Que chasco, yo había entendido que habías unido todos los vídeos en uno que se llamaba *.avi literalmenet y por eso lo habías llamado caraculo, por la similitud entre el asterisco y el ojete (*).

¡¡¡Ya somos 2!!! A veces los malos pensamientos son demasiado rápidos.......... redface

Imagen de krafa
Enviado por krafa el 2 Junio, 2011 - 17:58.

Ya me habia pasado cosas parecidas. Si esto hubiese sido MS-Dos hubiese funcionado

Por decir algo, en msdos:

rename *.old *.txt

Hubiese pasado todos los archivos ".old" a ".txt" manteniendo el nombre de cada uno de ellos.

Nunca supe hacer lo mismo en linux ya que...

mv ./*.old ./*.txt

Da el error

mv: el destino, «*.txt», no es un directorio

¿Cómo narices se hace esto?

Por cierto para unir archivos multimedia se puede usar "cat"

cat *.mpg > nombre.mpg

cat *.avi > nombre.avi

etc...

Esto sólo funciona si los todos los archivos a unir tienen los mismos codecs.