tee: Check for the removed pad flag also in the slow pushing path
[platform/upstream/gstreamer.git] / docs / random / caps_grammar
1
2 Canonical caps/structure strings (those created by gst_caps_to_string()
3 and gst_structure_to_string()) do not have AUTO_VALUE.
4
5 Goals:
6  - UTF-8 clean
7  - SIMPLE_STRINGs should cover most simple cases that don't interfere
8    with other parts of the gst_caps or gst_parse grammar
9  - forward-parsed grammar
10  - quoted strings handle backslash escaping as well as XML-style (&ack;)
11    escaping
12
13 CAPS = STRUCTURE [ ';' STRUCTURE ]*
14
15 STRUCTURE = STRUCTURE_NAME [ ',' FIELD ]*
16
17 STRUCTURE_NAME = STRING
18
19 FIELD = FIELD_NAME '=' TYPED_VALUE
20
21 FIELD_NAME = SIMPLE_STRING
22
23 TYPED_VALUE = CANONICAL_VALUE | AUTO_VALUE
24
25 CANONICAL_VALUE = '{' TYPED_VALUE [ ',' TYPED_VALUE ]* '}'
26                 | '[' TYPED_VALUE ',' TYPED_VALUE ']'
27                 | '(' TYPE ')' VALUE
28
29 AUTO_VALUE = [-+]?[0-9][0-9]*
30            | [-+]?[0-9][0-9]*[.][0-9]*[eE][-+][0-9]*
31            | STRING
32
33 VALUE = STRING
34
35 STRING = ["][^"]["]
36        | ['][^'][']
37        | SIMPLE_STRING
38
39 SIMPLE_STRING = [A-Za-z0-9_+-:./]+
40
41 TYPE = "int" | "i" | "float" | "f" | "double" | "d" | "fourcc" | "4"
42      | "boolean" | "bool" | "b"
43      | GTYPE
44
45
46 Canonical Examples:
47
48 "audio/raw"
49 "audio/raw", rate=(int)44100
50 "audio/raw", rate=(int)44100, signed=(boolean)true
51 "audio/raw", rate={ (int)44100, (int)48000 }
52 "audio/raw", rate=[ (int)8000, (int)48000 ]
53
54