[x264-devel] [PATCH] Relaxed parameter checking at encoder/encoder.c

Jason Garrett-Glaser jason at x264.com
Sun Dec 12 00:52:54 CET 2010


2010/12/11 Marco Aurélio Graciotto Silva <magsilva at gmail.com>:
> On Sat, Dec 11, 2010 at 9:00 PM, Jason Garrett-Glaser <jason at x264.com> wrote:
>> As I already told you on the ffmpeg thread, this is not a bug; this is
>> entirely intentional behavior.  x264 uses the broken defaults of
>> ffmpeg to detect when a user has not set a -vpre.  Relaxing these to
>> allow users to remove parts of the ffmpeg preset is entirely
>> contradictory to the purpose of said code.
>
> So, the preset is not something user's should edit, but rather an
> design/development option: instead of hardcoding everything in C,
> define a external file and use it. Ok, I got it.

In x264 option handling, a "preset" applies before all other options.
This defines the defaults.  Users are of course free to define options
that override these defaults.  x264's default preset is "medium".

Unfortunately, because of how ffmpeg works internally, it overrides
all of x264's defaults with completely broken options.  This
effectively means the defaults aren't set properly.

Therefore, the user must set a preset with -vpre to fix this.  The
user is, of course, free to set *other* presets of his own after that.

Yes, this system sucks.  Yes, patches are welcome to ffmpeg to improve
this (that is, patches to use per-codec options to eliminate this
hackery).

Jason


More information about the x264-devel mailing list