<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mi Brain-Training Personal &#187; G722</title>
	<atom:link href="http://saghul.net/blog/tag/g722/feed/" rel="self" type="application/rss+xml" />
	<link>http://saghul.net/blog</link>
	<description>Para que no se me olviden las cosas...</description>
	<lastBuildDate>Mon, 06 Feb 2012 10:49:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>G722 y su interoperabilidad</title>
		<link>http://saghul.net/blog/2009/12/08/g722-y-su-interoperabilidad/</link>
		<comments>http://saghul.net/blog/2009/12/08/g722-y-su-interoperabilidad/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 19:12:21 +0000</pubDate>
		<dc:creator>saghul</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[codec]]></category>
		<category><![CDATA[G722]]></category>
		<category><![CDATA[PJSIP]]></category>
		<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://saghul.net/blog/?p=1026</guid>
		<description><![CDATA[Nunca hasta hace unos días me había pasado algo similar, así que voy a comentarlo por aqui El tema que hoy nos ocupa es el codec G722 y su interoperabilidad. Algo que en principio no debería preocuparnos, ya que si dos terminales utilizan el mismo codec todo deberia ir bien, ¿no? Pues no. La semana [...]]]></description>
			<content:encoded><![CDATA[<p>Nunca hasta hace unos días me había pasado algo similar, así que voy a comentarlo por aqui <img src='http://saghul.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>El tema que hoy nos ocupa es el codec <a href="http://en.wikipedia.org/wiki/G.722" target="_blank">G722</a> y su interoperabilidad. Algo que en principio no debería preocuparnos, ya que si dos terminales utilizan el mismo codec todo deberia ir bien, ¿no? Pues no.</p>
<p>La semana pasada hablamos de esto en el <a href="http://vuc.me" target="_blank">VUC</a>, porque aparentemente todos los softphones basados en <a href="http://www.pjsip.org" target="_blank">PJSIP</a> sufren del mismo problema: las llamadas en G722 suenan distorsionadas y con algo de superposición en el audio. Ya que en el VUC sólo se usa G722 (aunque se puede conectar por Skype o por SIP con G711 también) esto era importante así que <a href="http://twitter.com/randulo" target="_blank">Randy</a> se puso a bombardear las listas de correo intentando encontrar respuesta al problema.</p>
<p><strong>El Problema</strong></p>
<p>En G722 el audio se muestrea a 16KHz con 14 bits. Peeeeero, como lo que nos vienen son 16 bits hay implementaciones que hacen cosas distintas: <a href="http://www.asterisk.org" target="_blank">Asterisk</a> y <a href="http://www.freeswitch.org" target="_blank">FreeSWITCH</a> usan los primeros 14 bits y se olvidan de los 2 que sobran, y la cosa funciona. En cambio, PJSIP y <a href="http://www.voiceage.com/" target="_blank">VoiceAge</a> hacen un <em>bit-shifting</em> de 2 bits, es decir, desplazan los 16 bits a la izquierda perdiendo los 2 de abajo. La cuestión es que esa diferencia de 2 bits se traduce en 12 dB, por lo que el audio se distorsiona, y al haber &#8220;movido&#8221; el audio se escuchan chasquidos extraños.</p>
<p><strong>La solución</strong></p>
<p>Obviamente no hay una unica solución, hay que ir a por la mas interoperable, así que he optado por hacer que PJSIP no haga el <em>bit-shifting</em> y así el audio en G722 fluye alegremente. <img src='http://saghul.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>¿Alguna experiencia al respecto?</p>
]]></content:encoded>
			<wfw:commentRss>http://saghul.net/blog/2009/12/08/g722-y-su-interoperabilidad/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

