Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have seen the use of ffmpeg in the command line, with the option -strict -2, or -strict experimental. I went to the command line documentation of ffmpeg, but I could not find information about this option.

Is there another site with more in-depth reference?

share|improve this question
up vote 6 down vote accepted

The FFmpeg documentation has recently been split up into multiple chapters, each describing components, including separate docs for the codecs.

Here, there's a section about the strict option:

strict integer (decoding/encoding,audio,video)

Specify how strictly to follow the standards.

Possible values:

  • very: strictly conform to a older more strict version of the spec or reference software
  • strict: strictly conform to all the things in the spec no matter what consequences
  • normal
  • unofficial: allow unofficial extensions
  • experimental: allow non standardized experimental things

Note that integer here just refers to the internal values… you should use -strict experimental, for example.

You can find a list of all these docs on the documentation page. Note that the online documentation is generated daily from the most recent FFmpeg code. Refer to your local documentation in the case of using an older version.

share|improve this answer
The doc split has been more annoying than I expected. – LordNeckbeard Jan 29 '13 at 19:51
I don't quite understand it either. Especially new users won't know where to look now. Took me a couple of minutes to figure it out as well. – slhck Jan 29 '13 at 19:55
experimental is not an integer :-( is very 0 or 1 ? – commonpike Jan 3 '14 at 10:48
@pike Yeah… the strings are translated to integers, internally. For example it's -strict experimental. – slhck Jan 3 '14 at 10:50

As well as the online documentation, you can use ffmpeg -h (or -h long or -h full for more information).

It's not the question, but you can also get some information about specific encoders with encoder= (or decoders with decoder=) like so:

ffmpeg -h encoder=libx264

You can pipe this to less, in order to make it searchable.

ffmpeg -h full | less

Use /string to search for a string. In your case, /strict.

share|improve this answer

Also not explained in the documentation are the integer values for "-strict": "-2" corresponds to "experimental", "0" for "normal", "2" for "very", etc. Makes sense once you think about it, but a little weird at first (especially since "-2" looks like FFMPEG option syntax). I just use the full name like "-strict experimental" but you will encounter both forms floating around the web.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .