[FFmpeg-user] forcing x264 baseline
Lou
lou at lrcd.com
Mon Nov 7 22:33:58 CET 2011
On Mon, 7 Nov 2011 22:23:51 +0100
Robert Krüger <krueger at lesspain.de> wrote:
>
> On Nov 7, 2011, at 10:51 , Paolo wrote:
>
> > dear all,
> >
> > for a lot of time I used this command line to convert my video to a
> > format compatible with my android device:
> >
> > ffmpeg -i input.mp4 -strict experimental -s 320x240 -b 384k -vcodec
> > libx264 -flags +loop+mv4 -cmp 256 -partitions
> > +parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -subq 7 -trellis 1
> > -refs 5 -bf 0 -flags2 +mixed_refs -coder 0 -me_range 16 -g 250
> > -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -qmin 10 -qmax 51
> > -qdiff 4 -acodec aac -ac 2 -ab 128k -ar 44100 output.mp4
> >
> > using mediainfo I see that
> >
> > Format profile : Baseline at L1.3
> >
> > and the result file will play on android without problems
> >
> > Now, I suppose after an ffmpeg update, the same command line
> > produce a file with
> >
> > Format profile : Main at L1.3
> >
> > by this way the file mp4 will not play on my android device.
> >
> > I see in the man ffmpeg that "-profile" is deprecated, so, what will
>
> http://ffmpeg.org/ffmpeg.html#Options
>
> this doesn't look like it's deprecated. Have you tried -profile
> baseline?
-vprofile is required if audio is also being encoded otherwise ffmpeg
will output errors.
> And btw. it is recommended to use presets (i.e. -preset)
> instead of specifying all the encoder options. try x264 --fullhelp
> for docs.
I second this suggestion. Using a preset, a close approximation of your
command is:
ffmpeg -i input.mp4 -vcodec libx264 -preset medium -vprofile baseline \
-s 320x240 -b 384k -acodec aac -ac 2 -ab 128k -ar 44100 output.mp4
Using the presets ensures that your command will more likely continue
to work through any updates and API changes.
> HTH,
>
> Robert
More information about the ffmpeg-user
mailing list