[libav-tools] insert a logo with transparency

Anton Khirnov anton at khirnov.net
Tue Jun 26 22:12:51 CEST 2012


On Tue, 26 Jun 2012 16:46:16 -0300, Rossana Guerra <guerra.rossana at gmail.com> wrote:
> 2012/6/26 Anton Khirnov <anton at khirnov.net>
> 
> >
> > On Mon, 25 Jun 2012 21:46:44 -0300, Rossana Guerra <
> > guerra.rossana at gmail.com> wrote:
> > > Hello, this is the command I am using
> > >
> > > avconv -loglevel error -i video1.avi -vf "movie=logo.png [logo];
> > [in][logo]
> > > overlay=W-w-10:10:1[out]" -vcodec libx264 -acodec libmp3lame -b 1400k
> > -b:a
> > > 192k outlogov1.avi
> > >
> > > For a transparent png, it works, but it doesn't for a bmp.
> > > Is there a way to do that? (as GIMP for instance)
> > >
> >
> > What exactly do you mean by "doesn't work"? You should provide full
> > avconv output whenever you're asking for help with avconv.
> >
> > Also note that if your avconv is new enough to contain the
> > -filter_complex option, then you should use that instead of the movie
> > filter.
> >
> >
> Hello, thanks for your concern. Actually there's no output, it keeps
> hanged/suspended.
> 

I cannot reproduce it here. If it really hangs then it is a bug which
should be fixed. Can you run the command with -v verbose and provide the
output?

> Finally I could did it with FFmpeg, I thought avconv was a sort of fork,
> maybe I am using the wrong parameters.
> So, is there a correct command to do this?
> 

With a recent enough avconv (or ffmpeg, they take most of this code from
us), this command is the recommended way to use overlay:

avconv -i video -i logo -filter_complex "overlay=<overlay parameters>" output
(encoder parameters omitted for brevity)

It's important that the logo is the _second_ input file (or you can use
manual mappings, see documentation for -filter_complex for details).

-- 
Anton Khirnov


More information about the libav-tools mailing list