[telepathy-spec/master] Change the Codec Map from a mapping to a list

Sjoerd Simons sjoerd.simons at collabora.co.uk
Tue Dec 1 09:46:19 PST 2009


Codecs are ordered in order of preference, both on the protocol and by the
streaming library. The Telepathy API should respect this ordering, thus the
Codec Map/List needs to be ordered
---
 spec/Call_Content_Interface_Media.xml |   24 ++++++++++--------------
 1 files changed, 10 insertions(+), 14 deletions(-)

diff --git a/spec/Call_Content_Interface_Media.xml b/spec/Call_Content_Interface_Media.xml
index e5b3f48..94b088f 100644
--- a/spec/Call_Content_Interface_Media.xml
+++ b/spec/Call_Content_Interface_Media.xml
@@ -32,7 +32,7 @@
       to set the codecs.
     </tp:docstring>
 
-    <tp:mapping name = "Codec_Map">
+    <tp:struct name="Codec" array-name="Codec_List">
       <tp:member name="identifier" type="u">
         <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
           Numeric identifier for the code. This will be used as the PT in the
@@ -62,7 +62,7 @@
           Extra parameters for this codec
         </tp:docstring>
       </tp:member>
-    </tp:mapping>
+    </tp:struct>
 
     <tp:mapping name = "Codec_Parameter_Map">
       <tp:member name="identifier" type="u">
@@ -82,13 +82,13 @@
     <tp:mapping name="Contact_Codec_Map">
       <tp:member name="Handle" type="u" tp:type="Contact_Handle">
       </tp:member>
-      <tp:member name="Codecs" type="a{usuua{ss}}" tp:type="Codec_Map">
+      <tp:member name="Codecs" type="a(usuua{ss})" tp:type="Codec[]">
       </tp:member>
     </tp:mapping>
 
     <signal name="CodecsChanged" tp:name-for-bindings="Codecs_Changed"
-        type="a{ua{usuua{ss}}}au">
-      <arg name="UpdateCodecs" type="a{ua{usuua{ss}}}"
+        type="a{ua(usuua{ss}})au">
+      <arg name="UpdateCodecs" type="a{ua(usuua{ss})}"
         tp:type="Contact_Codec_Map">
       </arg>
       <arg name="Removed" type="au" tp:type="Contact_Handle[]">
@@ -97,19 +97,15 @@
 
     <method name="SetCodecs" tp:name-for-bindings="Set_Codecs">
       <arg name="codecs" direction="in"
-        type="a{usuua{ss}}" tp:type="Codec_Map">
-      </arg>
-    </method>
-
-    <method name="UpdateCodecParameters"
-        tp:name-for-bindings="Update_Codec_Parameters">
-      <arg name="codecs" direction="in"
-        type="a{ua{ss}}" tp:type="Codec_Parameter_Map">
+        type="a(usuua{ss})" tp:type="Codec[]">
       </arg>
+      <tp:docstring>
+        Set or update the local codec mapping
+      </tp:docstring>
     </method>
 
     <property name="ContactCodecMap" tp:name-for-bindings="Contact_Codec_Map"
-      type="a{ua{usuua{ss}}}" tp:type="Contact_Codec_Map" access="read">
+      type="a{ua(usuua{ss})}" tp:type="Contact_Codec_Map" access="read">
     </property>
   </interface>
 </node>
-- 
1.5.6.5




More information about the telepathy-commits mailing list