Original-URL des Artikels: https://www.golem.de/news/webrtc-und-odinmokey-firefox-22-ist-schnell-und-kommunikativ-1306-100013.html    Veröffentlicht: 25.06.2013 17:01    Kurz-URL: https://glm.io/100013

WebRTC und Odinmonkey

Firefox 22 ist schnell und kommunikativ

Firefox 22 steht ab sofort zum Download bereit und enthält große Neuerungen. So wird WebRTC mit allen Bestandteilen in der Standardeinstellung unterstützt, mit Odinmonkey wird Javascript fast so schnell wie nativer Code und mit Web-Notifications können sich Web-Apps über den Desktop beim Nutzer melden.

WebRTC soll den Browser zum Echtzeit-Kommunikationswerkzeug machen. Firefox 22 unterstützt alle wesentlichen Bestandteile der neuen Technik standardmäßig. Das umfasst sowohl getUserMedia, was Web-Apps Zugriff auf Mikrofon und Kamera einräumt, als auch Peerconnection und Datachannels. Der entsprechende Hinweis ist zwar aus den Release Notes verschwunden, in Mozillas Entwicklerkommunikation wird aber weiterhin darauf verwiesen.

Peerconnection ermöglicht es, direkte Verbindungen zwischen zwei Browsern herzustellen, ohne dass die Daten über einen Server laufen. So lassen sich beispielsweise in Kombination mit getUserMedia Videotelefonate mit zwei oder mehr Teilnehmern abwickeln, bei denen die Datenströme direkt ausgetauscht werden.

Datachannels ermöglichen es zudem, beliebige Daten über solche direkten Verbindungen auszutauschen, nicht nur Audio- und Videostreams. PeerCDN nutzt dies beispielsweise, um ein verteiltes CDN zu schaffen, bei dem Nutzer auf einer Website eingebundene Inhalte austauschen, um Ladezeiten zu verkürzen und Traffic-Kosten auf Anbieterseite einzusparen. Mit P hat Ozan Turgut auf Basis dieser Technik außerdem ein Peer-to-Peer-Netzwerk entwickelt, das komplett im Browser läuft.

Neben Firefox unterstützt auch Chrome bereits die entsprechende Technik, so dass via WebRTC eine Kommunikation über Browsergrenzen hinweg möglich ist. Firefox ist aber der erste Browser, der Datachannels entsprechend der aktuellen Spezifikation unterstützt.

Noch gibt es aber einige Probleme in Sachen WebRTC in Firefox 22. So haben sich die Mozilla-Entwickler zunächst auf Verbindungen zwischen zwei Nutzern konzentriert. Zwar lassen sich auch Videokonferenzen über WebRTC in Firefox 22 abwickeln, sie können je nach Gerät aber sehr langsam sein. Das soll sich in künftigen Firefox-Versionen ändern. Auch die Echo-Unterdrückung soll noch verbessert werden und es kommt mitunter dazu, dass Ton und Bild nicht synchron sind. Die Mozilla-Entwickler haben aber bereits die Ursache entdeckt und wollen das Problem demnächst korrigieren.

Mit Firefox 23 kommt auch TURN-Unterstützung hinzu. Damit sollen sich auch sehr restriktive NAT-Firewalls durchdringen lassen. Allerdings wird dabei die gesamte Kommunikation über einen Server geleitet.

Odinmonkey unterstützt asm.js

Mit Odinmonkey hat Mozilla die Javascript-Engine von Firefox um Unterstützung für asm.js erweitert. Dabei handelt es sich um eine von Mozilla entwickelte Javascript-Erweiterung, mit der bestimmte Javascript-Programme zwei- bis fünfmal so schnell ausgeführt werden können wie bisher. Davon profitieren vor allem komplexe Javascript-Programme, deren Code automatisch aus anderen Sprachen generiert wird.

Zusammen mit Epic hat Mozilla so die Unreal Engine ins Web portiert, die dank asm.js und WebGL eine flüssige Darstellung der Spielegrafik im Browser ermöglicht. Wer Firefox 22 installiert, kann dies mit der HTML5-Demo Epic Citadel ausprobieren.

Mozilla-Entwickler Luke Wagner hat einige Benchmarks veröffentlicht, in denen mit Emscripten unter Verwendung von asm.js erzeugter Code unter Odinmonkey, Mozillas aktueller Javascript-Engine Spidermonkey und Googles Javascript-Engine V8 ausgeführt wird. Die Zahlen zeigen, welches Potenzial asm.js bietet. Während die native Version der zlib rund fünf- bis sechsmal so schnell ist wie die Emscripten-Javascript-Version unter Spidermonkey und v8, reduziert sich der Geschwindigkeitsvorteil des nativen Codes im Vergleich mit Odinmonkey auf das 1,61fache.

Auch Googles Browser Chrome wird vermutlich schon bald asm.js unterstützen. Das haben einige Chrome-Entwickler auf Googles derzeit stattfindender Entwicklerkonferenz Google I/O angedeutet und auf erste sehr positive Erfahrungen mit der neuen Technik verwiesen.

Web-Notifications, HiDPI-Unterstüzung, HTML5-Unterstützung, Font Inspector

Mit dem Web-Notifications-API können Web-Apps Benachrichtigungen an Nutzer senden, auch dann, wenn sie nur im Hintergrund laufen. So kann ein Webmail-Client beispielsweise auf eine neu eingetroffene E-Mail oder einen Tweet hinweisen.

Die Nachrichten erscheinen nicht innerhalb der Website, sondern können in das Benachrichtigungssystem des Betriebssystems integriert werden, wie man es von nativen Applikationen kennt.

HiDPI-Unterstüzung

Windows-Nutzer erhalten mit Firefox 22 eine bessere Unterstützung hochauflösender Displays: Firefox folgt damit den Skalierungsoptionen von Windows, um beispielsweise Text auf Displays mit sehr hoher Auflösung größer zu rendern.

Bessere HTML5-Unterstützung

Darüber hinaus hat Mozilla die HTML5-Unterstützung seines Browsers ausgebaut: So wird nun CSS3 Flexbox standardmäßig unterstützt, ebenso das ClipboardData-API, mit dem per Javascript auf die Zwischenablage zugegriffen werden kann.

Auch kann Firefox 22 mit dem neuen Element Time zur Eingabe von Datum und Zeit umgehen. Der Browser zeigt entsprechende Dialoge an, die heute noch jede Website einzeln mitliefern muss.

Das Pointer-Lock-API kann nun auch außerhalb der Vollbilddarstellung genutzt werden und die Darstellung per WebGL wurde durch asynchrone Canvas-Updates beschleunigt. Zudem soll der Browser für das Rendern von Bildern weniger Speicher benötigen.

Font Inspector

Für Entwickler enthält Firefox 22 einen neuen Font Inspector. Dieser zeigt an, welche Schriftarten auf einer Website eingesetzt werden, und stellt editierbaren Beispieltext dar.

Firefox 22 steht ab sofort für Windows, Linux und Mac OS X unter mozilla.org/firefox zum Download bereit.  (ji)


Verwandte Artikel:
WebRTC und Odinmonkey: Firefox-22-Beta enthält große Neuerungen   
(17.05.2013, https://glm.io/99313 )
Mozilla: Firefox soll mit Werbung in Pocket experimentieren   
(29.01.2018, https://glm.io/132450 )
Bytecode fürs Web: Webassembly ist fertig zum Ausliefern   
(01.03.2017, https://glm.io/126474 )
asm.js: Odinmonkey macht Javascript fast so schnell wie nativen Code   
(22.03.2013, https://glm.io/98337 )
Cloud-Speicher: Nextcloud 13 stabilisiert Talk und E2E-Verschlüsselung   
(06.02.2018, https://glm.io/132594 )

© 1997–2019 Golem.de, https://www.golem.de/