pwg: Update raw properties
authorJan Alexander Steffens (heftig) <jan.steffens@gmail.com>
Mon, 17 Feb 2014 10:37:30 +0000 (11:37 +0100)
committerStefan Sauer <ensonic@users.sf.net>
Mon, 17 Feb 2014 17:47:20 +0000 (18:47 +0100)
Using info from gst-plugins-base/docs/design .

Encoded streams might make use of the raw properties, so list them all under foo/* .
For foo/raw, only note which of these properties are mandatory.

I didn't take a closer look at the raw formats yet. Those might still be out-of-date.

https://bugzilla.gnome.org/show_bug.cgi?id=724187

docs/pwg/advanced-types.xml

index 9898476..d1c8b35 100644 (file)
@@ -229,8 +229,8 @@ plugin_init (GstPlugin *plugin)
           <!-- ############ type ############# -->
 
           <row>
-            <entry morerows="1">audio/*</entry>
-            <entry morerows="1">
+            <entry morerows="4">audio/*</entry>
+            <entry morerows="4">
               <emphasis>All audio types</emphasis>
             </entry>
             <entry>rate</entry>
@@ -248,6 +248,34 @@ plugin_init (GstPlugin *plugin)
               The number of channels of audio data.
             </entry>
           </row>
+          <row>
+            <entry>channel-mask</entry>
+            <entry>bitmask</entry>
+            <entry></entry>
+            <entry>
+              Channel positions present. See <quote>GstAudioChannelPosition</quote>.
+              0 means unpositioned.
+            </entry>
+          </row>
+          <row>
+            <entry>format</entry>
+            <entry>string</entry>
+            <entry>
+              S8 U8 S16LE S16BE U16LE U16BE S24_32LE S24_32BE U24_32LE U24_32BE S32LE S32BE U32LE U32BE
+              S24LE S24BE U24LE U24BE S20LE S20BE U20LE U20BE S18LE S18BE U18LE U18BE F32LE F32BE F64LE F64BE
+            </entry>
+            <entry>
+              The format of the sample data.
+            </entry>
+          </row>
+          <row>
+            <entry>layout</entry>
+            <entry>string</entry>
+            <entry>"interleaved" or "non-interleaved"</entry>
+            <entry>
+              Layout of channels within a buffer.
+            </entry>
+          </row>
 
           <!-- ############ subtitle ############# -->
 
@@ -264,14 +292,11 @@ plugin_init (GstPlugin *plugin)
             <entry>
               Unstructured and uncompressed raw audio data.
             </entry>
-            <entry>format</entry>
-            <entry>string</entry>
-            <entry>
-              S8 U8 S16LE S16BE U16LE U16BE S24_32LE S24_32BE U24_32LE U24_32BE S32LE S32BE U32LE U32BE
-              S24LE S24BE U24LE U24BE S20LE S20BE U20LE U20BE S18LE S18BE U18LE U18BE F32LE F32BE F64LE F64BE
-            </entry>
+            <entry></entry>
+            <entry></entry>
+            <entry></entry>
             <entry>
-              The format of the sample data.
+              All properties (except channel-mask, in the mono and stereo cases) are mandatory.
             </entry>
           </row>
 
@@ -657,8 +682,8 @@ plugin_init (GstPlugin *plugin)
           <!-- ############ type ############# -->
 
           <row>
-            <entry morerows="2">video/*</entry>
-            <entry morerows="2">
+            <entry morerows="9">video/*</entry>
+            <entry morerows="9">
               <emphasis>All video types</emphasis>
             </entry>
             <entry>width</entry>
@@ -675,29 +700,67 @@ plugin_init (GstPlugin *plugin)
           <row>
             <entry>framerate</entry>
             <entry>fraction</entry>
-            <entry>greater or equal 0</entry>
+            <entry>greater or equal 0; default 0/1</entry>
             <entry>
               The (average) framerate in frames per second. Note that this
               property does not guarantee in <emphasis>any</emphasis> way that
               it will actually come close to this value. If you need a fixed
               framerate, please use an element that provides that (such as
-              <quote>videorate</quote>). 0 means a variable framerate.
+              <quote>videorate</quote>). 0/1 means a variable framerate.
             </entry>
           </row>
-
-          <!-- ############ subtitle ############# -->
-
           <row>
-            <entry spanname="fullwidth">
-              <emphasis>All raw video types.</emphasis>
+            <entry>max-framerate</entry>
+            <entry>fraction</entry>
+            <entry>greater or equal 0; default as framerate</entry>
+            <entry>
+              For variable framerates, the maximum framerate that is expected.
+              Only valid when framerate is 0/1.
+            </entry>
+          </row>
+          <row>
+            <entry>views</entry>
+            <entry>integer</entry>
+            <entry>greater than 0; default 1</entry>
+            <entry>
+              The number of views for multiview video. Each buffer contains
+              multiple <quote>GstVideoMeta</quote> buffers that describe each view. Use the
+              frame ID to get access to the different views.
+            </entry>
+          </row>
+          <row>
+            <entry>interlace-mode</entry>
+            <entry>string</entry>
+            <entry>progressive, interleaved, mixed, fields; default progressive</entry>
+            <entry>
+              The interlace mode. Extra buffer flags describe the frame and fields.
+            </entry>
+          </row>
+          <row>
+            <entry>chroma-site</entry>
+            <entry>string</entry>
+            <entry>jpeg, mpeg2, dv; default UNKNOWN</entry>
+            <entry>
+              The chroma siting of the video frames.
+            </entry>
+          </row>
+          <row>
+            <entry>colorimetry</entry>
+            <entry>string</entry>
+            <entry>bt601, bt709, smpte240m; default UNKNOWN</entry>
+            <entry>
+              The colorimetry of the video frames.
+            </entry>
+          </row>
+          <row>
+            <entry>pixel-aspect-ratio</entry>
+            <entry>fraction</entry>
+            <entry>greater than 0; default 1/1</entry>
+            <entry>
+              The pixel aspect ratio of the video.
             </entry>
           </row>
-
-          <!-- ############ type ############# -->
-
           <row>
-            <entry>video/x-raw</entry>
-            <entry>Unstructured and uncompressed raw video data.</entry>
             <entry>format</entry>
             <entry>string</entry>
             <entry>
@@ -707,7 +770,7 @@ plugin_init (GstPlugin *plugin)
               IYU1 ARGB64 AYUV64 r210 I420_10LE I420_10BE I422_10LE I422_10BE
             </entry>
             <entry>
-              The layout of the video. See <ulink type="http"
+              The format of the video. See <ulink type="http"
               url="http://www.fourcc.org/">FourCC definition site</ulink>
               for references and definitions. YUY2, YVYU and UYVY are 4:2:2
               packed-pixel, Y41P is 4:1:1 packed-pixel and IYU2 is 4:4:4
@@ -721,6 +784,27 @@ plugin_init (GstPlugin *plugin)
 
           <row>
             <entry spanname="fullwidth">
+              <emphasis>All raw video types.</emphasis>
+            </entry>
+          </row>
+
+          <!-- ############ type ############# -->
+
+          <row>
+            <entry>video/x-raw</entry>
+            <entry>Unstructured and uncompressed raw video data.</entry>
+            <entry></entry>
+            <entry></entry>
+            <entry></entry>
+            <entry>
+              The properties width, height and format are mandatory.
+            </entry>
+          </row>
+
+          <!-- ############ subtitle ############# -->
+
+          <row>
+            <entry spanname="fullwidth">
               <emphasis>All encoded video types.</emphasis>
             </entry>
           </row>