[FFmpeg-user] Command line option to convert to square pixels?
Dan Flett
dflett at bigpond.net.au
Sun Nov 20 05:43:17 CET 2011
> On Nov 18, 2011, at 18:06 , Jamie Tufnell wrote:
>
> > How can I convert to square pixels IF necessary, AND
> maintain height
> > based the input file's display aspect ratio?
> >
> > I want to force the width of the output file, but set
> height based on
> > the input file's display aspect ratio and convert to square
> pixels if
> > necessary.
> >
> > Right now I use -vf "scale=640:-1" and I want to extend that to
> > convert to square pixels as well.
> >
> > e.g. the same command line option would have the following effects:
> >
> > (no square pixel conversion necessary)
> > in: 1440x810 PAR 1:1 DAR 16:9 => out: 640x360 PAR 1:1 DAR 16:9
> > in: 1440x1080 PAR 1:1 DAR 4:3 => out: 640x480 PAR 1:1 DAR 4:3
> >
> > (convert to square pixels)
> > in: 1440x1080 PAR 4:3 DAR 16:9 => out: 640x360 PAR 1:1 DAR 16:9
> >
> > Is there a way to do this?
> >
>
> have you tried using an expression in the scale filter that
> uses the sar constant (http://ffmpeg.org/ffmpeg.html#scale)
> to compute width correctly and then use the setsar filter
> with a value of 1:1 to force square pixels?
>
> I would guess that should do the job.
When doing any sort of scaling, the first thing in my -vf sequence is this:
-vf scale=iw*sar:ih
This scales the width to make square pixels. Any subsequent transformations
are then done on square pixel video.
More information about the ffmpeg-user
mailing list