Software

Tests und Ankündigungen von Programmen, die nicht Teil von Haiku sind

VLC 1.0.4 läuft

Mizsei Zoltán (miqlas) ist es gelungen den VLC Media Player auf Haiku lauffähig zu bekommen. Er verwendet dazu SDL Output und eine Qt Oberfläche. Zum Beweis zeigt Miszei diverse Screenshots. Auch ein Portlog ist vorhanden, das sein Vorgehen zeigt.

Hier eine Liste aller funktionierenden VLC Module:
a52tofloat32, a52tospdif, access_mmap, adjust, alphamask, aout_file, aout_sdl, audio_format, audioscrobbler, avcodec, avformat, bandlimited_resampler, blend, blendbench, bluescreen, canvas, chain, clone, cmml, colorthres, converter_float, crop, croppadd, deinterlace, dolby_surround_decoder, dtstospdif, dvdnav, dvdread, dynamicoverlay, equalizer, erase, extract, fake, float32_mixer, folder, freetype, gaussianblur, gestures, gradient, grain, headphone_channel_mixer, hotkeys, http, i420_rgb_mmx, i420_ymga, i420_ymga_mmx, i420_yuy2, i420_yuy2_mmx, i422_i420, i422_yuy2, i422_yuy2_mmx, invert, libmpeg2, linear_resampler, logo, magnify, marq, memcpy3dn, memcpymmx, memcpymmxext, mod, mosaic, motion, motionblur, motiondetect, mpgatofixed32, mux_ogg, noise, normvol, ogg, opengl, opengl, osd_parser, osdmenu, param_eq, png, podcast, psychedelic, puzzle, qt4, rc, remoteosd, ripple, rotate, rss, rv32, sap, scale, scaletempo, scene, screensaver, sdl_image, sharpen, shout, showintf, signals, simple_channel_mixer, skins2, spatializer, spdif_mixer, speex, stream_out_raop, taglib, telnet, telx, transform, unzip, visual, vmem, vorbis, vout_sdl, wall, wave, xml, yuv, yuvp, yuy2_i420, yuy2_i422, zip

Monster-VLC!
Mal sehen wann wir ein entsprechendes VLC-Paket bei Haikuware sehen.

KDE Software unter Haiku

Dank des fortgeschrittenen Qt4 Ports sind mittlerweile viele KDE Anwendungen unter Haiku lauffähig. Grzegorz "kaliber" Dabrowski, Entwickler des Box Paketsystems "TiltOS for Haiku" mit Plänen für ein verwirrend gleichnamiges Haiku-basiertes Betriebssystem TiltOS, hat fleißig portiert und kann mit etwa 150 KDE Programmen aufwarten von denen angeblich nur ca. 10% noch Probleme bereiten.

Eines der KDE Highlights dürfte KOffice sein, das die Textverarbeitungslücke unter Haiku fürs erste schließen dürfte.

Auf seiner Webseite gibt kaliber ein Beispiel wie ein KDE Paket installiert und ausgeführt wird.
Voraussetzung ist ein gcc4 oder hybrid Haiku, der Paketmanager TiltOS for Haiku und ordentlich Platz auf der Platte. Es handelt sich ja nicht um elegant kleine Haiku Anwendungen, sondern um doch eher sperrige Portierungen. Hier das Beispiel, bei dem "kdegames" installiert wird:

### Download des Paketindex
$ box --sync-repos

### Installation der KDE Basispakete
$ box -i dbus
$ box -i desktop-file-utils
$ box -i shared-mime-info
$ box -i oxygen-icons

### Installation von kdegames
$ box -i kdegames --no-deps

Um eine KDE Anwendung auszuführen, wird zuerst eine dbus Session gestartet:

$ eval `dbus-launch --auto-syntax`

Und dann z. B. das Spiel "klines":

$ klines

Jetzt dürfte sich langsam zeigen, ob Qt für Haiku zum Segen oder Fluch wird.

Free Pascal für Haiku

Mit der neuen Version 2.4.0 gibt es von Free Pascal erstmals ein offizielles Haiku Paket. Darin enthalten ist der Kompiler, viele Bibliotheken und eine Kommandozeilen-IDE inklusive Mausunterstützung und Debugging-Möglichkeiten.

Olivier Coursiere engagiert sich besonders für Free Pascal und Haiku. Sein großes Ziel ist die direkte Anbindung von Pascal an die Haiku API. Das wird allerdings noch länger auf sich warten lassen. Bis dahin beschäftigt er sich mit einer Delphi ähnlichen IDE. Möglich machen soll dies Lazarus und der Haiku Qt Port.
Ein Screenshot zeigt den momentanen – leider noch nicht ganz produktiv nutzbaren – Stand.

Firefox 3.0 "Comeback"

Für diejenigen, die aus irgendeinem Grund unbedingt einen Firefox 3 brauchen – vielleicht für ein bestimmtes Add-On – für den hat die Italienische Haiku User Group eine Neuigkeit: Xeon3D hat den alten Firefox 3 "Minefield" Build ausgegraben. Und der läuft auch auf Haiku.
Es ist einer letzten Firefoxen aus dem Jahr 2006, bevor auf die Cairo Bibliothek gewechselt wurde, die es nie zu BeOS/Haiku geschafft hat.

Entgegen unserem italienischen Kollegen, war in meinem Benchmark Haikus BeZillaBrowser 2.0.0.22pre ("Bon Echo") mit 214 zu 200 Punkten etwas schneller, als der Firefox 3.0a1 ("Minefield"). Der 3.0er scheint laut ehemaligen aktiven BeZilla Entwickler Fredrik Holmqvis (tqh) nicht sonderlich optimiert, von der Ausgabe von about:buildconfig zu schließen.
Vielleicht kann da also noch etwas gedreht werden. Zuviel sollte man sich allerdings nicht erwarten.

Qt4 Browser Arora hat sich zumindest im Benchmark um Längen besser geschlagen, wäre also vielleicht die bessere Alternative, wer sie denn braucht.

Qt Fortschritte zum Ausprobieren

Wie bei BeOSFrance zu lesen, ist die Portierung des Qt Toolkits beachtlich vorangekommen. Unter dem Screenshot dort, findet sich ein Link auf ein Archiv namens Qt4HaikuDemoPack_a1.zip (23MB). Entpackt werden muss es nach /boot/!

Unter /boot/apps/QtDemos befinden sich nach dem Unzippen diverse Demos von Qt Programmen, darunter auch der WebKit Browser Arora. Ob sich mit Arora schöner surfen lässt als mit BeZilla, muss man erst noch austesten. Auf alle Fälle schlägt er den Mozilla-Abkömmling beim Acid3 Browsertest mit 97:52 %.

Auch alle anderen Demos in dem Paket scheinen nach einem kurzen Durchklicken gut zu funktionieren. Natürlich ist die Integration in Haiku (noch?) nicht perfekt. Gerade bei Open/Save Dialogen bekommt der Ästhet den von anderen Betriebssystemen vertrauten, kleinen Toolkit-Mix-Schock...

Wurde die Qt-Büchse der Pandora nun geöffnet, oder die Tür zu einer viel versprechenden Zukunft einen Spalt geöffnet?

yab 1.5 auch für Haiku

Seit kurzem gibt es yab 1.5 vom Team Maui neben BeOS R5 und Zeta auch für Haiku. Die weitere Entwicklung wird sich dann auf Haiku beschränken.

Was ist yab? Ich zitiere aus einem Einsteigertutorial:

"Der yab Interpreter ist ein BASIC Dialekt, welcher eine Weiterentwicklung des auf Windows, Linux und Playstation2 erhätlichen YABASIC ist. yab wurde für BeOS und ZETA optimiert und enthält daher viele zusätzliche Befehle.

Mit Hilfe dieser Programmiersprache ist es sehr einfach kleine und sogar komplexe Programme zu erstellen. Ein gutes Beispiel dafür ist das in ZETA enthaltene Brennerprogramm JABA."

Das Tutorial und einige andere mehr befinden sich auf BeSly unter "Entwicklung".
Bis noch die letzten Kinken raus-debugged wurden und es das yab 1.5 Packet bei BeBits/Haikuware gibt, kann man es aus dem yab Forum der DeBUG runterladen.
In dem Forum findet man auch noch andere interessante Themen, wie Stargaters Coding Party, um gemeinsam das yab-Programmieren zu lernen, oder einen Wünsch-Dir-Was Thread für neue Befehle.

Paladin in Version 1.0

Nach nur 7 Monaten hat Darkwyrms BeIDE-Ersatz Paladin die 1.0-Reife erreicht, d.h. alle für den Anfang geplanten Features sind vorhanden und sowohl die gcc2, wie auch die gcc4 Variante, läuft stabil im täglichen Einsatz. Neben der stabilen Version wird es auch immer wieder Entwicklungsversionen geben, die zeigen was noch so in Arbeit ist. Als Beispiele dafür nennt Darkwyrm einen makefile-Generator, besseres Multithreading beim Build, verbesserte Integration von Resource-Dateien, Shellskript-Unterstützung und schnelle Projekt-Backups.

Dass Paladin nicht nur Ersatz für die BeIDE ist, zeigt eine kleine Liste seiner Verbesserungen:

  • Opensource - jeder kann den Code nach Belieben weiterentwickeln, solange das Copyright der Originaldateien erhalten bleibt
  • Dateien wie ToDo-Listen und andere Notizen lassen sich zum Projekt hinzufügen
  • flex und bison Unterstützung
  • Das kompilierte Projekt kann flexibel gestartet werden: Debug-Ausgaben können geloggt werden, Argumente können beim Start übergeben werden
  • Debug-Unterstützung mit gdb in Haiku
  • Projektdateien benutzen ein offenes Format
  • Projekte können vom Terminal aus kompiliert werden

Darkwyrm würde sich sehr über Feedback freuen. Er hat selbst gemerkt, dass die meisten Bugs und Featurewünsche erwartungsgemäß dann zutage treten, wenn man Paladin tagtäglich benutzt. So laufen mittlerweile alle seine Projekte unter Paladin; auch Paladin selbst. Die IDE ist also wirklich einsatzbereit.

Neben Paladin arbeitet Darkwyrm an einem GUI Designer, der sich bestimmt gut im Paladin Paket integrieren wird. Dafür hat er ein internes API Gerüst ersonnen, das ein wenig wie Python funktioniert. Es erlaubt seiner Software äußerst simpel aus z.B. einer Checkbox einen Radio-Button zu machen. Diese Flexibilität wird zum einen die Entwicklung des Designers vereinfachen, zum anderen werden sich auch neue, selbst entwickelte Interface Klassen/Widgets leicht integrieren lassen.
Außerdem sieht's so aus, als wäre dieses Backend sprachunabhängig, d.h. es ließe sich vielleicht auch mittels Python, Perl oder yab nutzen. Die weitere Entwicklung wird allerdings erst noch zeigen, ob das wirklich so möglich ist.

Auch zum GUI Designer ist Darkwyrm natürlich sehr an Wünschen, Tips und Vorschlägen evtl. zukünftiger Anwender interessiert.
Er rechnet mit ersten Ergebnissen Ende des Sommers. Wer immer uptodate sein will, sollte öfters mal bei seinem Blog vorbeischauen.

Mindwork's Clockwerk jetzt open-source

Wie Stephan Aßmus schon bei seinem Interview für den POFACS Podcast angedeutet hat, konnte Mindwork's Clockwerk endlich unter der GPL veröffentlicht werden, wie das schon länger mit Mindwork's Steffen Friedle geplant war. Stephan hat von Anfang 2006 bis Mitte 2008 mehr oder weniger Vollzeit an dem Programm gearbeitet. Auch Axel Dörfler und Ingo Weinhold waren, obwohl eher mit anderen Mindwork Projekten beschäftigt, an einigen Teilen der Anwendung beteiligt.

Clockwerk ist ein Compositing Programm um Videos, Audioclips und Bilder in mehreren Spuren zusammen zu mischen.

Update: Bei Haiku Italia hat Giuseppe einen Screenshot gepostet.

In dem Thread auf der Haiku Mailingliste, in dem Stephan die Veröffentlichung angekündigt hat, findet sich auch eine kleine Liste der Features:

  • verschachtelte Playlisten/Zeitschienen
  • unbegrenzt viele Spuren für Medien aller Art
  • Spuren benennen, stumm oder solo schalten
  • Trennung von importiern Clips und ihren Zeitschienen
  • durchsuchbare Bibliotheken von importierten Clips
  • animierbare Eigenschaften (Transformation, Transparenz und Lautstärke)
  • Textobjekte (Blockausrichtung und direktes Bearbeiten vom Inhalt)
  • Laufschrift
  • Unterstützt alle Audio/Video-Formate des MediaKits
  • Unterstützt alle Bildformate des TranslationKits
  • Rendern der Zeitschiene (noch nicht in Haiku)
  • Multi-Threaded Rendern, Wiedergabe, Speichern
  • noch sehr einfaches Zeitschienen-Editieren (einzelne verschobene Clips kleben automatisch an den nächsten, Clips schneiden)
  • horizontales Zoomen der Zeitschiene
  • Alpha Compositing (animierbare globale Tranzparenz eines Clips) und Alpha Kanal in Bildern
  • zoom- und scollbare Vorschau
  • Wiedergabe eines Abschnitts, Looping, Scrubbing
  • automatisches Erstellen von Playlisten (Diashow mit automatischen Überblendungen)

Am meisten wird jedoch noch vermisst:

  • Vorschaubildchen bei Videoclips
  • Filtereffekte

Zur Zeit werden noch ein bisschen die Lizenzen der verschiedenen Teile der Anwendung auseinander sortiert. Während der eigentliche Clockwerk Code unter der GPL veröffentlicht wird, werden auch einige Teile von WonderBrush und eXposer benutzt, die weiterhin unter MIT laufen sollen. Das Projekt wird bei OSDrawer gehostet.

Was jetzt natürlich noch fehlt, ist das Encoding in Haikus MediaKit: bisher können Medien nämlich nur abgespielt werden, aber nicht neu erstellt werden. Vielleicht erfährt dieser Teil nun mehr Aufmerksamkeit, da es so einen Multimedia Multitrack Editor gibt.

Vielen Dank an Steffen Friedle, für die großzügige GPL-Lizensierung von Clockwerk! Dadurch wurde es zwar für Mindwork auch nicht zu einem kommerziellen Erfolg, wie es zu gönnen gewesen wäre, aber zumindest war die ganze Arbeit nicht umsonst.

Flash Update

Wie schon mal berichtet arbeitet Adrian Panasiuk an der Haikuware Code Bounty zur Flash Unterstützung. Neben dem damals vorgestellten Player ist nun eine erste Version für das Mozilla Plug-In für eine Testfahrt bereit. Beweis-Screenshots gibt's bei der Ankündigung auf Haikuware.

Während der gnash Player GCC4 braucht, kann das Plug-In auch für BeZilla-GCC2 gebaut werden. In jedem Fall sind z.Zt. noch einige Konfigurationen nötig.

Wer ein GCC4 oder ein GCC2-Hybrid Haiku benutzt, kann sich das gnash Paket [21mb] runterladen (ggf. auch das Plugin für BeZilla-GCC2 [100kb] zum austauschen) und ausprobieren. Probleme sollten an Adrian gemailt werden.

Software-Perlen von Werner Freytag

Viele langjährige BeOS User erinnern sich bestimmt noch gern an Werner Freytags Software, die immer sehr bedienerfreundlich war und die stets ein frisches und kreatives Design auszeichnete. Wie ComputerIsOn berichtet, hat Werner all seine Programme mit der Haiku kompatiblen MIT Lizenz bei OsDrawer veröffentlicht.

Unter den Programmen befinden sich nützliche Tools wie PecoRename (mein persönliches Lieblings-Tool), Colors! (welches, wenn ich mich recht erinnere, bereits in Teilen Eingang in z.B. WonderBrush gefunden hat) und ClipUp (das hoffentlich bald seinen Weg ins Haiku-Image finden wird). Daneben der Drumsequencer PecoBeat und eine Reihe nützlicher Add-Ons und netter Bildschirmschoner.

All die Programme laden nun zum Bugfixen und Weiterentwickeln ein. Vielen Dank, Werner, für dieses großartige Geschenk! Lieber wär es uns aber bestimmt allen gewesen, würdest Du selbst wieder aktiv werden. :)

Inhalt abgleichen