[gupnp-dlna] xml: Add MKV profiles



commit bf0da115a1657d27fa28357ba9be0c6c184b63ed
Author: Jens Georg <mail jensge org>
Date:   Mon Jan 16 18:15:11 2012 +0100

    xml: Add MKV profiles
    
    https://bugzilla.gnome.org/show_bug.cgi?id=669981

 data/avc.xml    |  152 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 data/common.xml |   55 ++++++++++++++++----
 2 files changed, 197 insertions(+), 10 deletions(-)
---
diff --git a/data/avc.xml b/data/avc.xml
index be7573a..2bc3a8e 100644
--- a/data/avc.xml
+++ b/data/avc.xml
@@ -249,6 +249,27 @@
         <value>4</value>
       </field>
     </restriction>
+
+    <restriction id="AVC_MKV" type="video">
+      <field name="name" type="string">
+        <value>video/x-h264</value>
+      </field>
+
+      <field name="level" type="string">
+        <value>1</value>
+        <value>1b</value>
+        <value>1.1</value>
+        <value>1.2</value>
+        <value>1.3</value>
+        <value>2</value>
+        <value>2.1</value>
+        <value>2.2</value>
+        <value>3</value>
+        <value>3.1</value>
+        <value>3.2</value>
+        <value>4</value>
+      </field>
+    </restriction>
   </restrictions>
 
   <dlna-profile id="AVC_MP4_BL_CIF15">
@@ -617,4 +638,135 @@
       <parent name="60fps" />
     </restriction>
   </dlna-profile>
+
+  <!-- MKV encapsulated AVC -->
+
+  <dlna-profile id="AVC_MKV_MP_HD">
+    <parent name="MKV" />
+
+    <restriction type="video">
+      <parent name="AVC_MKV" />
+
+      <field name="bitrate" type="int">
+        <range min="0" max="20000000" />
+      </field>
+      <field name="profile" type="string">
+        <value>main</value>
+      </field>
+    </restriction>
+
+    <restriction type="video" used="in-relaxed">
+      <parent name="upto1920x1152" />
+      <parent name="60fps" />
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1920x1152" />
+      <parent name="50fps" />
+      <field name="interlaced" type="boolean">
+        <value>true</value>
+      </field>
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1920x1152" />
+      <parent name="25fps" />
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1920x1080" />
+      <parent name="30fps" />
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1920x1080" />
+      <parent name="60fps" />
+      <field name="interlaced" type="boolean">
+        <value>true</value>
+      </field>
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1280x720" />
+      <parent name="60fps" />
+    </restriction>
+  </dlna-profile>
+
+  <dlna-profile id="AVC_MKV_HP_HD">
+    <parent name="MKV" />
+
+    <restriction type="video">
+      <parent name="AVC_MKV" />
+
+      <field name="bitrate" type="int">
+        <range min="0" max="30000000" />
+      </field>
+      <field name="profile" type="string">
+        <value>high</value>
+        <value>main</value>
+      </field>
+    </restriction>
+
+    <restriction type="video" used="in-relaxed">
+      <parent name="upto1920x1152" />
+      <parent name="60fps" />
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1920x1152" />
+      <parent name="50fps" />
+      <field name="interlaced" type="boolean">
+        <value>true</value>
+      </field>
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1920x1152" />
+      <parent name="25fps" />
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1920x1080" />
+      <parent name="30fps" />
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1920x1080" />
+      <parent name="60fps" />
+      <field name="interlaced" type="boolean">
+        <value>true</value>
+      </field>
+    </restriction>
+    <restriction type="video" used="in-strict">
+      <parent name="upto1280x720" />
+      <parent name="60fps" />
+    </restriction>
+  </dlna-profile>
+
+  <dlna-profile name="AVC_MKV_MP_HD_AAC_MULT5" mime="video/x-matroska"
+    base-profile="AVC_MKV_MP_HD">
+
+    <parent name="AAC-MULT5" />
+  </dlna-profile>
+
+  <dlna-profile name="AVC_MKV_HP_HD_AAC_MULT5" mime="video/x-matroska"
+    base-profile="AVC_MKV_HP_HD">
+
+    <parent name="AAC-MULT5" />
+  </dlna-profile>
+
+  <dlna-profile name="AVC_MKV_MP_HD_AC3" mime="video/x-matroska"
+    base-profile="AVC_MKV_MP_HD">
+
+    <parent name="AC3" />
+  </dlna-profile>
+
+  <dlna-profile name="AVC_MKV_HP_HD_AC3" mime="video/x-matroska"
+    base-profile="AVC_MKV_HP_HD">
+
+    <parent name="AC3" />
+  </dlna-profile>
+
+  <dlna-profile name="AVC_MKV_MP_HD_MPEG1_L3" mime="video/x-matroska"
+    base-profile="AVC_MKV_MP_HD">
+
+    <parent name="MP3" />
+  </dlna-profile>
+
+  <dlna-profile name="AVC_MKV_HP_HD_MPEG1_L3" mime="video/x-matroska"
+    base-profile="AVC_MKV_HP_HD">
+
+    <parent name="MP3" />
+  </dlna-profile>
 </dlna-profiles>
diff --git a/data/common.xml b/data/common.xml
index ab24ffb..af0bb71 100644
--- a/data/common.xml
+++ b/data/common.xml
@@ -24,6 +24,12 @@
       </field>
     </restriction>
 
+    <restriction id="MKV" type="container">
+      <field name="name" type="string">
+        <value>video/x-matroska</value>
+      </field>
+    </restriction>
+
     <!-- Audio restrictions -->
     <restriction id="AAC" type="audio">
       <field name="name" type="string">
@@ -58,6 +64,24 @@
     </restriction>
 
     <!-- Video resolutions -->
+    <restriction id="upto1920x1152" type="video">
+      <field name="width" type="int">
+        <range min="1" max="1920" />
+      </field>
+      <field name="height" type="int">
+        <range min="1" max="1152" />
+      </field>
+    </restriction>
+
+    <restriction id="upto1920x1080" type="video">
+      <field name="width" type="int">
+        <range min="1" max="1920" />
+      </field>
+      <field name="height" type="int">
+        <range min="1" max="1080" />
+      </field>
+    </restriction>
+
     <restriction id="1920x1080" type="video">
       <field name="width" type="int" used="in-strict">
         <value>1920</value>
@@ -65,11 +89,15 @@
       <field name="height" type="int" used="in-strict">
         <value>1080</value>
       </field>
-      <field name="width" type="int" used="in-relaxed">
-        <range min="1" max="1920" />
+      <parent name="upto1920x1080" used="in-relaxed" />
+    </restriction>
+
+    <restriction id="upto1280x720" type="video">
+      <field name="width" type="int">
+        <range min="1" max="1280" />
       </field>
-      <field name="height" type="int" used="in-relaxed">
-        <range min="1" max="1080" />
+      <field name="height" type="int">
+        <range min="1" max="720" />
       </field>
     </restriction>
 
@@ -80,12 +108,7 @@
       <field name="height" type="int" used="in-strict">
         <value>720</value>
       </field>
-      <field name="width" type="int" used="in-relaxed">
-        <range min="1" max="1280" />
-      </field>
-      <field name="height" type="int" used="in-relaxed">
-        <range min="1" max="720" />
-      </field>
+      <parent name="upto1280x720" used="in-relaxed" />
     </restriction>
 
     <restriction id="625_D1" type="video">
@@ -368,6 +391,18 @@
       </field>
     </restriction>
 
+    <restriction id="50fps" type="video">
+      <field name="framerate" type="fraction">
+        <range min="0/1" max="50/1" />
+      </field>
+    </restriction>
+
+    <restriction id="59.94fps" type="video">
+      <field name="framerate" type="fraction">
+        <range min="0/1" max="60000/1001" />
+      </field>
+    </restriction>
+
     <restriction id="60fps" type="video">
       <field name="framerate" type="fraction">
         <range min="0/1" max="60/1" />



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]