Syntax
******

When evaluating specific formats, FFmpeg uses internal library parsing functions, shared by the tools. This section documents the syntax of some of these formats.

Date
====

The accepted syntax is:

     [(YYYY-MM-DD|YYYYMMDD)[T|t| ]]((HH:MM:SS[.m...]]])|(HHMMSS[.m...]]]))[Z]
     now

If the value is "now" it takes the current time.

Time is local time unless Z is appended, in which case it is interpreted as UTC. If the year-month-day part is not specified it takes the current year-month-day.

Time duration
=============

The accepted syntax is:

     [-]HH:MM:SS[.m...]
     [-]S+[.m...]

HH expresses the number of hours, MM the number a of minutes and SS the number of seconds.

Video size
==========

Specify the size of the sourced video, it may be a string of the form WIDTHxHEIGHT, or the name of a size abbreviation.

The following abbreviations are recognized:

sqcif
     128x96

qcif
     176x144

cif
     352x288

4cif
     704x576

16cif
     1408x1152

qqvga
     160x120

qvga
     320x240

vga
     640x480

svga
     800x600

xga
     1024x768

uxga
     1600x1200

qxga
     2048x1536

sxga
     1280x1024

qsxga
     2560x2048

hsxga
     5120x4096

wvga
     852x480

wxga
     1366x768

wsxga
     1600x1024

wuxga
     1920x1200

woxga
     2560x1600

wqsxga
     3200x2048

wquxga
     3840x2400

whsxga
     6400x4096

whuxga
     7680x4800

cga
     320x200

ega
     640x350

hd480
     852x480

hd720
     1280x720

hd1080
     1920x1080

Video rate
==========

Specify the frame rate of a video, expressed as the number of frames generated per second. It has to be a string in the format FRAME_RATE_NUM/FRAME_RATE_DEN, an integer number, a float number or a valid video frame rate abbreviation.

The following abbreviations are recognized:

ntsc
     30000/1001

pal
     25/1

qntsc
     30000/1

qpal
     25/1

sntsc
     30000/1

spal
     25/1

film
     24/1

ntsc-film
     24000/1

Ratio
=====

A ratio can be expressed as an expression, or in the form NUMERATOR:DENOMINATOR.

Note that a ratio with infinite (1/0) or negative value is considered valid, so you should check on the returned value if you want to exclude those values.

The undefined value can be expressed using the "0:0" string.

Color
=====

It can be the name of a color (case insensitive match) or a [0x|#]RRGGBB[AA] sequence, possibly followed by "@" and a string representing the alpha component.

The alpha component may be a string composed by "0x" followed by an hexadecimal number or a decimal number between 0.0 and 1.0, which represents the opacity value (0x00/0.0 means completely transparent, 0xff/1.0 completely opaque). If the alpha component is not specified then 0xff is assumed.

The string "random" will result in a random color.