•  
  • Archives for Scriptsprache (3)

Lightspark 0.4.2 RC2 spielt H264-Videos ab

Mit dem aktuellen Release Candidate 2 der freien Flash-Implementierung Lightspark können in H.264 codierte Youtube-Videos abgespielt werden. Außerdem bietet Lightspark jetzt eine Schnittstelle zum Audio-Framework Pulseaudio.

Alessandro Pignotti will mit Lightspark eine freie Implementierung von Adobes Flash schaffen und hat seine Software in einem zweiten Release Candidate veröffentlicht. Er stützt sich dabei auf die von Adobe offengelegten Formate.

Lightspark 0.4.2 RC2 spielt Youtube-Videos ab, die mit H.264 codiert sind. Dazu verwendet der freie Flash-Player Action Script 3. Mit Flash-Videos kommt der Player bislang noch nicht klar. In der bevorstehenden Version 0.4.3 sollen solche Inhalte aber an den Flash-Nachbau Gnash weitergegeben werden. Zusätzlich hat Pignotti an der SSE2-Unterstützung gearbeitet, um Videos flüssiger abzuspielen.

Bislang fehlte Lightspark eine Audioausgabe: Der RC2 bietet hingegen eine Schnittstelle zum Audio-Framework Pulseaudio. Die Audioausgabe müsse allerdings noch überarbeitet werden, warnt Pignotti. Bild und Ton liefen nicht immer synchron und die Abtastrate werde noch nicht korrekt erkannt.

Flash-Nachbau ohne Reverse-Engineering

Bei der Entwicklung von Lightspark nutzte Pignotti die von Adobe veröffentlichte Spezifikation des Dateiformats SWF und verzichtete komplett auf Reverse-Engineering. Seine Implementierung soll effizient sein, sowohl auf aktueller als auch auf zukünftiger Hardware.

So nutzt Lightspark OpenGL zum schnellen Rendering von Geometrie- und Videoframes. Effekte sollen sich später mit Hilfe von Shadern realisieren lassen, werden aber derzeit noch nicht unterstützt. Die Videodarstellung mittels OpenGL-Texturen sei zwar etwas langsamer als über XVideo, erlaube es aber, jede Form von Overlay- und Transformationseffekt zu verwenden, die Flash unterstützt.

Darüber hinaus soll Lightspark eine fast vollständige Unterstützung für Actionscript 3.0 bieten, der mit Flash 9 eingeführten Version von Adobes Scriptsprache, die auch in den aktuellen Flash-Versionen verwendet wird. Dabei verfügt Lightspark sowohl über einen Interpreter als auch eine JIT-Engine auf Basis von LLVM, schreibt Pignotti. Ältere Actionscript-Varianten unterstützt Lightspark nicht.

Zum Testen stellt Pignotti Lightspark als Firefox-Plugin zur Verfügung und bietet fertige Pakete für Ubuntu an. Der Quellcode findet sich bei Launchpad.

Quelle:www.golem.de

Neue Version der freien Scriptsprache PHP 5.3.0 veröffentlicht

Categories: News
Comments: Comments Off
Published on: 01/07/2009

Mehr Features und Verbesserungen

Das PHP Entwicklungs-Team hat am Dienstag die PHP 5.3.0 veröffentlicht. Mit der aktuellen Version halten zahlreiche größere Änderungen Einzug in die freie Scriptsprache. Einige davon waren ursprünglich erst für PHP 6 geplant.

Zu den wesentlichen Neuerungen von PHP 5.3 zählt die Einführung von Namespaces, die seit der dritten Alphaversion Teil der Scriptsprache sind. Diese Namensräume kapseln Funktionen und Klassen ein, wodurch sich Programmierer keine Gedanken mehr machen müssen, ob ein Funktions- oder Klassenname bereits verwendet wird. Sie waren ursprünglich erst für PHP 6 anvisiert.

Ebenfalls neu sind Lambda-Funktionen, auch bekannt als anonyme Funktionen, zum Beispiel in JavaScript. Sie sind ein reguläres Sprachelement funktionaler Sprachen und werden nicht explizit mit einem Namen deklariert und unter diesem aufgerufen, sondern der Funktionskörper muss einer Variablen zugewiesen werden. Deshalb kann eine Lambda-Funktion auch als Über- oder Rückgabewert einer Funktion übergeben werden.

Zusammen mit Lambda-Funktionen werden auch sogenannte Closures eingeführt. Lambda-Funktionen werden häufig innerhalb einer Funktion oder Methode definiert, aber zumeist nicht darin ausgeführt. Das führt zu Problemen mit der Sichtbarkeit von Variablen innerhalb der Lambda-Funktion. In funktionalen Sprachen sind äußere Variablen standardmäßig innerhalb der Lambda-Funktion sichtbar. In PHP hingegen müssen erforderliche Variablen explizit mit dem neuen Schlüsselwort “use” in die Lambda-Funktion importiert werden.

Mit dem neuen Prefix “static::” für Methodenaufrufe wird “Late static binding” eingeführt. Es kann für den statischen Aufruf einer Methode innerhalb einer Klassenmethode verwendet werden, ohne dass der Klassenname bekannt ist. Es reicht, wenn die Methode innerhalb der Klasse definiert oder von einer Klasse geerbt wurde.

Die neue Metamethode für Klassen __callStatic() erlaubt es, statische Aufrufe undefinierter Klassenmethoden abzufangen und auszuwerten, analog zu __call() für Methodenaufrufe auf instanzierte Objekte.

Darüber hinaus versprechen die Entwickler eine verbesserte Geschwindigkeit, eine optionale Garbage-Collection für zyklische Referenzen und ebenfalls optional mysqlnd als nativen Ersatz für libmysql. Verbessert wurde die Windows-Unterstützung einschließlich VC6 und VC9 Binarys und es werden einige neue Erweiterungen mitgeliefert: ext/phar, ext/intl, ext/fileinfo, ext/sqlite3 und ext/enchant.

Zugleich entfallen einige Erweiterungen (ext/mhash, ext/msql, ext/pspell, ext/sybase), andere wurden in PECL verschoben (ext/ming, ext/fbsql, ext/ncurses und ext/fdf). Zudem wurde die Nutzung interner APIs vereinheitlicht.

Die wesentlichen Neuerungen im Detail finden sich im Release-Anouncement, eine detaillierte im Changelog. Ein Migration-Guide hilft beim Umstieg von PHP 5.2 auf 5.3.

PHP 5.3.0 steht unter php.net zum Download bereit.

Quelle:www.magnus.de

page 1 of 2»

Welcome , today is Saturday, 11/02/2012