From: Magnus H. <leg...@us...> - 2008-11-03 23:57:53
|
Update of /cvsroot/emacs-jabber/tox In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv21172 Modified Files: jabber-tox.el Log Message: More debug output, pointing to a problem with codec intersection Index: jabber-tox.el =================================================================== RCS file: /cvsroot/emacs-jabber/tox/jabber-tox.el,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- jabber-tox.el 3 Nov 2008 23:53:51 -0000 1.22 +++ jabber-tox.el 3 Nov 2008 23:57:47 -0000 1.23 @@ -251,41 +251,44 @@ (list nil state-data)) (t - (let ((tox-session (plist-get state-data :tox-session))) + (let ((tox-session (plist-get state-data :tox-session)) + (their-codecs (mapcar + (lambda (pt) + (jabber-xml-let-attributes + (id name clockrate channels) pt + (list :struct + :int32 (string-to-number id) + :string name + :byte 0 + :uint32 (string-to-number clockrate) + :uint32 (if channels + (string-to-number channels) + 1) + (cons + :array + (or + (mapcar + (lambda (param) + (jabber-xml-let-attributes + (name value) param + (list :dict-entry :string name :string value))) + (jabber-xml-get-children pt 'parameter)) + (list :signature "{ss}")))))) + payload-types))) + (fsm-debug-output "Their codecs are %S" their-codecs) ;; Tell tox what codecs the remote side supports (dbus-call-method :session tox-name tox-session tox-session-interface "SetRemoteCodecs" ;;'((array (struct int32 string byte uint32 uint32 (array (dict-entry string string))))) - (mapcar - (lambda (pt) - (jabber-xml-let-attributes - (id name clockrate channels) pt - (list :struct - :int32 (string-to-number id) - :string name - :byte 0 - :uint32 (string-to-number clockrate) - :uint32 (if channels - (string-to-number channels) - 1) - (cons - :array - (or - (mapcar - (lambda (param) - (jabber-xml-let-attributes - (name value) param - (list :dict-entry :string name :string value))) - (jabber-xml-get-children pt 'parameter)) - (list :signature "{ss}")))))) - payload-types)) + their-codecs) ;; Check if we have any codecs in common (let ((codec-intersection (dbus-call-method :session tox-name tox-session tox-session-interface "GetCodecIntersection"))) + (fsm-debug-output "The codec intersection is %S" codec-intersection) (setq state-data (plist-put state-data |