Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Imagenes a video con audio con ffmpeg

90 views
Skip to first unread message

rantis cares

unread,
Jan 24, 2010, 2:40:01 AM1/24/10
to
Estimada lista:

He leido el manual de ffmpeg, sin embargo no puedo resolver un pequeño problemiga:

- Tengo un audio en formato ogg, que dura 9 minutos.
- Tengo una sola imagen en formato png

mediante el siguiente comando hago que la imagen quede empalmada con el audio, es decir, creo un video con extension avi. Pero la imagen pasa demasiado rápido y yo quiero que esa unica imagen dure el mismo tiempo que el audio. En pocas palabras, que la imagen arranque cuando el audio arranque, que la imagen desaparezca cuando termine el audio.

ffmpeg -f image2 -i image.png 01.avi

¿Alguna sugerencia?

Rantiscares

Camaleón

unread,
Jan 24, 2010, 7:40:02 AM1/24/10
to

¿Es una imagen estática, sin animación?

Hay un parámetro que te podría servir:

***
`-loop_input'
Loop over the input stream. Currently it works only for image streams.
This option is used for automatic FFserver testing.
***

ffmpeg -loop_input -f image2 -i image.png 01.avi

Saludos,

--
Camaleón


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

rantis cares

unread,
Jan 24, 2010, 1:10:02 PM1/24/10
to

Efectivamente Camaleón, es una imagen totalmente estática.

El parámetro que gentilmente me enviaste esta funcionando, la imagen ya no pasa tan rapidamente, ahora solo es el problema que el audio termina y la imagen sigue indefinidamente. De hecho cuando esta codificando la información, el archivo crece en grandes dimensiones, por lo que tengo que usar la opcion "q" para detener el proceso, ya que asi tuviera un disco de 20 theras, seguramente lo llenaria por la opcion loop_input

¿Habrá alguna manera de que esta opcion loop_input se detenga al momento en que el audio termine?

Me imagino que ffmpeg tiene alguna opcion que permita determinar la cantidad de segundos que queremos asignarle a una imagen dentro de un video, si esta opción la conoces o la conoce alguien, ¿Podrían enviarme dicha información?

¡Claro que con esta opción que me enviaste camaleon, ya podría editar el video, cortarlo y listo, pero creo que eso sería muy poco elegante para las capacidades de linux y ffmpeg y por supuesto que si no hubise dicha opción, entonces no tendría mas que crear un pequeño script que hiciera dicho proceso!.

Gracias


 

rantis cares

unread,
Jan 24, 2010, 1:40:02 PM1/24/10
to
PROBLEMA RESUELTO
Video realizado con una imagen estatica y con audio integrado usando ffmpeg

- Tengo audio llamado audio.ogg que dura 9 minutos (540 seg)
- Tengo imagen que estara estatica llamada imagen.png que se repetira durante 540 segundos.

ffmpeg -i audio.ogg -loop_input -f image2 -i imagen.png -t 540 01.avi

Explicacion:

ffmpeg es nuestro software

-i audio.ogg Esta es la opción que le dira a ffmpeg que tome audio.ogg

-loop_input Esta opción le dice a ffmpeg que repita imagen.png indefinidamente hasta que se lo indiquemos

-f image2 -i imagen.png Esta opción le dice que se hará un video con una imagen estatica y que la imagen que tomara será imagen.png

-t 540 Indica a ffmpeg que el video tendra una duración de 540 segundos y que cuando llegue a esta cantidad de segundos, debe detenerse.

01.avi Este es el resultado en video de todo el proceso arriba mencionado.

Agradezco la ayuda de Camaleón y a todos los que forman parte de toda esta comunidad, de todos los listeros linux.

Rantiscares

Camaleón

unread,
Jan 24, 2010, 1:50:02 PM1/24/10
to
El Sun, 24 Jan 2010 12:01:03 -0600, rantis cares escribió:

> Efectivamente Camaleón, es una imagen totalmente estática.
>
> El parámetro que gentilmente me enviaste esta funcionando, la imagen ya
> no pasa tan rapidamente, ahora solo es el problema que el audio termina
> y la imagen sigue indefinidamente. De hecho cuando esta codificando la
> información, el archivo crece en grandes dimensiones, por lo que tengo
> que usar la opcion "q" para detener el proceso, ya que asi tuviera un
> disco de 20 theras, seguramente lo llenaria por la opcion loop_input
>
> ¿Habrá alguna manera de que esta opcion loop_input se detenga al momento
> en que el audio termine?

Hay un parámetro que te permite definir el tiempo de la grabación:

`-t duration'
Restrict the transcoded/captured video sequence to the duration specified
in seconds. hh:mm:ss[.xxx] syntax is also supported.

Podrías especificar que la captura dure el mismo intervalo de tiempo que
el sonido.

Puedes consultar todas las opciones desde el manual:

http://ffmpeg.org/ffmpeg-doc.html

0 new messages