Nieuwe tutorials

Heb twee nieuwe tutorials gemaakt mbt. het opzetten van een server waarmee je kan (video)bellen met SIP clients en WebRTC clients zoals Google Chrome.

Installing webrtc2sip on Ubuntu 12.04
Asterisk and sipml5 interoperability

En ja, ze zijn in het Engels vanwege wat verzoeken vanuit de Doubango community. Bovendien gebeurt er in Nederland nog bar weinig op het gebied van WebRTC.

Nieuwe tutorials

WebRTC en WebSocket: webrtc2sip ftw!

Sinds Google WebRTC geopensourced heeft en er diverse drafts zijn opgesteld mbt. de standaardisatie van WebRTC als API door het W3C consortium wint WebRTC steeds meer terrein en is het inmiddels een hot topic geworden. Steeds meer bedrijven (ook grote multinationals) gaan er mee aan de slag en zien er grote kansen in.

WebRTC (Web Real-Time Communication) is een API die real-time communicatie in de browser mogelijk maakt, zonder plug-ins, add-ons of Flash. Denk bij real-time communicatie aan o.a. telefonie, chatten en videoconferencing.

WebSocket is een redelijk nieuwe API met bijbehorend protocol die het mogelijk maakt om TCP verkeer twee kanten op te sturen over één TCP verbinding en als je dit implementeert in een browser dan wordt het mogelijk voor applicaties om allerlei TCP verkeer heen en weer te sturen, zoals bijv. SIP verkeer.

Wat nu als je deze twee recente technologieën combineert met behulp van een derde nieuwe technologie, HTML5, en de mogelijkheden van JavaScript? Dat dachten ze bij Doubango ook en afgelopen voorjaar lanceerden ze hun sipml5 SIP client waarmee je vanuit een browser die WebRTC en WebSocket ondersteunt naar andere SIP clients kan bellen die WebRTC kunnen verstaan. Helaas is het aantal SIP clients dat het bij WebRTC horende mediaprofiel ondersteunt nogal klein, eigenlijk geldt dit alleen voor de SIP clients van Doubango zelf (zoals IMSDroid, iDoubs en sipml5). Dus in de praktijk had je er niet zo gek veel aan.

Recentelijk is daar met de release van webrtc2sip van Doubango drastisch verandering in gekomen. webrtc2sip maakt het mogelijk welke SIP client dan ook met elkaar te verbinden, ongeacht of deze nu WebRTC ondersteunt of niet. Dit maakt het dus mogelijk om conventionele SIP clients zoals bijv. Linphone te laten communiceren met sipml5. Vanaf je mobiele telefoon kun je nu dus heel gemakkelijk videobellen naar iemand die op een website ingelogd is in Google Chrome (of straks Firefox 18). Niks add-ons, niks plug-ins, niks Flash.

Op mijn werk stuitten we eigenlijk bij toeval op sipml5 en de hele infrastructuur daarachter bij het zoeken naar een alternatief voor bellen vanuit de browser mbv. Flash. Verschillende klanten hadden hier om gevraagd echter kregen we de boel niet goed aan de praat. Inmiddels heb ik een webrtc2sip server gebouwd en is er een webapplicatie met bijbehorende apps in ontwikkeling. Dit werkt zo veel beter dat de benaderde klanten vooralsnog enthousiast zijn. Nu hoeven ze geen aparte applicaties meer te installeren maar kunnen ze vanuit hun browser de werkzaamheden doen waarvoor ze videobellen nodig hebben (denk aan alarmcentrales of webconsults).

Binnenkort biedt ook Firefox ondersteuning voor WebRTC aan (vanaf versie 18) wat betekent dat straks meer dan de helft van de gebruikte browsers op het internet WebRTC aankan. Oftewel, WebRTC zit in een momentum en als ik de auteur van bloggeek.me mag geloven zal dat het nodige gaan veranderen in de VoIP business.

WebRTC en WebSocket: webrtc2sip ftw!

Linux Audio Conference 2010

ZIt ik een beetje rond te kijken op Open Blik zie ik dat de Linux Audio Conference van linuxaudio.org komend voorjaar in Utrecht is! Zo, daar word ik wel even enthousiast van. Nog mooier zou zijn als ik een bijdrage zou kunnen leveren aan deze conferentie. Gezien mijn universitaire achtergrond en mijn huidige werk bij de Universiteit van Amsterdam zou dat zo maar eens een hele mooie kans zijn.

Uiteraard blijf ik dit volgen en zal ik alle verdere ontwikkelingen hier neerpennen. Mooi iets om naar uit te kijken.

Linux Audio Conference 2010

Die vermaledijde xruns!

Je kent het wel, ben je lekker met JACK bezig, hang je Audacity er aan, beetje editten en in ene wordt het je systeempje te veel. Gevolg: xruns, xruns en nog meer xruns. Op mijn netbookje heb ik hier dus last van en waarschijnlijk ligt dat aan een brakke geluids- of codecmodule. Ik heb er maar een soort van noodknop voor gemaakt die de gehele soundstack opnieuw laadt. Daarna zijn de xruns gelukkig weer weg. Ik moet maar eens gaan uitzoeken hoe die ALSA drivers nou precies aan de kernel hangen, zijn het nou kernel afhankelijke modules of staan ze los van de kernel die je gebruikt? Het moet wel allemaal een beetje stabiel draaien, juist ook met het onboard geluidskaartje, ik ga niet de hele tijd een externe geluidskaart meeslepen.

De noodknop is eigenlijk niet meer dan een scriptje (heb het maar restartsound genoemd) dat alle geluidsmodules uit de kernel trekt, alsa stopt, de modules weer laadt en alsa weer opstart.

Die vermaledijde xruns!