Oskar Welzl: Weblog zur Homepage

Hardware und Software



Bye, bye, Nokia: Markenwechsel

Emporia TalkIch hab heut die SIM-Card aus dem Nokia gezogen und ein neues Telefon gekauft. Es sollte möglichst nichts können und daher einfach zu bedienen sein, also standen iPhone oder Emporia zur Auswahl. Emporia wurde schließlich genommen: Das funktioniert mit der vorhandenen SIM-Card und läßt sich leichter mit neuen Telefonbuch-Einträgen bestücken.

Süß war übrigens der Verkäufer. Ich zeig schon auf das Gerät und sag: Ich such ein Telefon, das möglichst wenig kann. Darauf er ganz stolz: Das da kann wirklich absolut garnix. Wann hört man das einen Verkäufer sonst noch sagen heutzutage? ;)


Gerüchte, Gerüchte: 180° Kehrtwende bei MeeGo?

Bis jetzt war klar: Nokia bringt demnächst ein Gerät „N9“ raus, dessen Betriebssystem zwar „MeeGo“ heißen wird, unter der Haube aber einfach Maemo 6 („Harmattan“) ist. Harmattan wird seit 2009 als Nachfolger von Maemo 5 entwickelt und Nokia hat wiederholt festgestellt: Trotz des Markenwechsels bleibt alles wie geplant, MeeGo ist noch zu lange nicht marktreif und Harmattan als Zwischenschritt ist unumgänglich. Die Quellen und Zitate sind hier im maemo.org-Wiki aufgelistet.

Jetzt tauchen erste Gerüchte auf, wonach doch alles anders kommen soll. Die Umbauten im Nokia-Management könnten etwas in Bewegung gesetzt haben:

In seinem Artikel Ich würde das Nokia N9 am 13. Februar 2011 präsentieren :-) und vor allem in den Kommentaren darunter läßt Helmut Hackl durchblicken, er habe Informationen, wonach die Harmattan-Variante gestrichen worden wäre. Das N9, so schreibt er, würde seiner Meinung nach um einige Monate verzögert, dafür aber gleich mit dem „richtigen“ MeeGo erscheinen.

Wenn die neuen Herrschaften im Nokia-Management es tatsächlich geschafft haben, ein de facto fertiges Betriebssystem abzuschießen, an dem seit über einem Jahr mit großem Aufwand gearbeitet wurde, dann verstehe ich den Abgang von Ari Jaaksi besser. Das muß frustrierend sein: „Step 5 of 5“ ist ferig, kommt aber nicht auf den Markt - stattdessen kommt wieder „Step 1 of x“ mit einem unerprobten MeeGo.

Ich bin gespannt, was davon sich bewahrheitet und was sich - vielleicht noch heuer - als falsch herausstellt. An der Wette, die in den Kommentaren zum oben verlinkten Artikel abgeschlossen wurde, möchte ich mich lieber nicht beteiligen. Seit dem Abgang von Ari Jaaksi und Anssi Vanjoki habe ich das Vertrauen verloren, daß Entscheidungen des Nokia-Managements mit Vernunft vorherzusagen sind.


$ 50 000 für Gtk+/Hildon unter MeeGo

Auch wenn Teile von MeeGo mehr Kompatibilität zu Gtk+ behalten, als Nokia das für die Zeit nach Maemo 5 geplant hatte: Grundsätzlich siehts nicht gut aus für Gtk+ unter MeeGo. Qt ist das offizielle Toolkit, und vor allem die Reference Handset UX kommt derzeit ganz ohne Gtk+ aus.

Die GNOME Foundation will dem nun gegensteuern: 50 000 US-Dollar stehen für die Portierung von Gtk+ im Allgemeinen und Nokias Hildon-Erweiterungen im Besonderen auf MeeGo bereit. Hildon: Das ist der Teil im derzeitigen Maemo-Betriebssystem, der Gtk+ for Touchscreen-Bedienung optimiert.

Die saubere Implementierung von Gtk+/Hildon in der MeeGo Handset-Umgebung ist nicht nur Voraussetzung für die leichtere Portierung von Programmen vom GNOME-Desktop auf MeeGo-Telefone. Sie bietet auch die Chance, ältere Maemo-Programme unter MeeGo weiterzuverwenden. (Nokia empfiehlt zwar seit über einem Jahr dringend die Verwendung von Qt auch unter Maemo, aber nicht alle Entwickler sind tatsächlich umgestiegen.)

Wer also Lust und Laune für so ein Mittagspausen-Projekt hat: Hier gibts die Details dazu (inkl. Kontaktadresse).


Ich hab MeeGo am N900!

Ich konnts nicht lassen: Ich hatte heute mein erstes Erlebnis mit MeeGo auf meinem N900. Das mußte ja so kommen. ;)

Eins vorweg: „MeeGo“ ist in diesem Zusammenhang das echte MeeGo, das aus Maemo und Moblin hervorgegangen ist und dessen Entwicklung de facto erst heuer begonnen hat. Diese Definition ist wichtig: Im Marketingsprech wird nämlich auch die nächste Maemo-Version (Maemo 6/Harmattan) von Nokia als „MeeGo“ bezeichnet werden. Damit haben meine schmutzigen Spiele von heute nichts zu tun.

Wie hab ichs gemacht? Auf tablets-dev.nokia.com Von den MeeGo Repositories (siehe Update zu diesem Artikel unten) hol ich mir das komplette Image - also eine Datei, in der das MeeGo-Dateisystem Bit für Bit abgespeichert ist. Damit man auch die richtige erwischt: das ist die mit der Endung *.raw.bz2. Außerdem gibts dort einen extra Kernel, den man zum Start von MeeGo aufs N900 spielen muß. Auch hier ein zarter Hinweis: Mit *-n900 hört der Dateiname auf, und irgendwo drin steht vmlinuz.

Sobald die beiden Dateien runtergeladen sind und das bz2-Archiv entpackt ist, folgt man der recht detaillierten Anleitung im MeeGo-Wiki. Die nötigen Zutaten: Eine freie Micro-SD-Karte, ein passender SD-Reader/Writer am Desktop, das USB-Kabel zum N900 und - kräftige Fingernägel, weil man ununterbrochen den Deckel zum Batteriefach runternehmen muß.

Die gute Nachricht: Die Anleitung ist zwar umständlich, aber vollständig. Wenn man Schritt für Schritt vorgeht, bekommt man das Ding gleich beim ersten Versuch zum Laufen. Die schlechte Nachricht: Himmel! Ist das langsam! Ich habs nicht fertig gebracht, irgendetwas Vernünftiges damit zu tun. Nach jedem Tappser auf den Bildschirm verbringt man 10-20 Sekunden damit zu warten, ob das Gerät die Aktion nun ausführt oder den Klick einfach nicht registriert hat. Das ermüdet doch ziemlich. Irgendwann friert das ganze Trumm dann auch mal komplett ein und man muß die Batterie rausnehmen (daher die Fingernägel) - was man übrigens auch dann muß, wenn man einfach nur bei normal laufendem System abschalten will. Weder das Terminal noch der Power-Button mögen mich.

Selbstverständlich weiß ich, daß MeeGo derzeit in einem sehr frühen Entwicklungsstadium ist. Das gesamte System von der langsamen SD-Karte zu booten ist dann auch nicht wirklich hilfreich in Sachen Geschwindigkeit. Egal - die Previews sind ja auch nicht für Leute wie uns gedacht. Mir wars wichtig, an einem ruhigen Abend mal rauszufinden, wie man MeeGo installiert und ob ichs denn grundsätzlich auch fertig kriegen würde. Denn irgendwann wird die Entwicklung ein Stadium erreicht haben, an dem die Spielerei mehr Spaß macht … und dann will ich sofort aufspringen können auf den Zug. ;)

Übrigens: Wer 廣東話 spricht, kann sich eine etwa 3 Wochen alte Version von MeeGo am N900 hier auf YouTube ansehen. Schneller ist es nicht geworden seither, sieht bei mir aber bei mir in vielen Punkten schon wieder anders aus. Da tut sich also durchaus was in den Weekly Builds …

Update: Kaum schreibt man einen Artikel, ist er schon wieder veraltet: Noch heute Nacht wurden die N900-Images vom Nokia-Server auf den MeeGo-Server gehoben. Link anklicken, dann die gewünschte Version suchen, dann handset > images > meego-handset-armv7l-n900 klicken.


Nokia hat Recht: Qt ist einfach nur geil

Screenshots von Qt-Programm auf N900 (oben) und S60 (unten)Weil die Buben von Nokia gar so viel Werbung gemacht haben, hab ich mir das so hoch gelobte Qt-Entwicklerframework mal angesehen. Wir definieren für diesen Artikel:

Ich: Das ist jemand, der seit mehr als 10 Jahren nicht mehr ernsthaft programmiert hat - und mit so relativ komplexen Sprachen wie C++ überhaupt nie. Qt: Das ist freie Software und eine Erweiterung zu C++, die einerseits die Programmierung von grafischen Benutzeroberflächen erleichtert, vor allem aber die plattformunabhängige Programmierung ermöglichen soll. Nokia: Die Finnen, die 2008 die Firma hinter Qt gekauft haben und seither behaupten, daß man mit Qt die Welt retten kann. (Konkret versprechen sie ihren Partnern: Wer mit Qt programmiert, wird sein Programm ohne nennenswerte Änderung auf Symbian, Maemo und MeeGo zum Laufen bringen.)

Was soll ich sagen? Ich bin sprachlos. Ja, C++ ist ein kleines bißchen mühsam und hat eine relativ steile Lernkurve, wenn man noch nie zuvor Zeiger verbogen hat. Aber Nokias Versprechen stimmt: In Null Komma Nix war eine Applikation zusammengeklickt, die ich unter Symbian S60 3rd Edition (das sind die Telefone ohne Touchscreen), unter Maemo (N900), am Desktop unter Windows Vista und unter GNU/Linux (und zwar konkret im Gnome-Desktop) laufen lassen konnte. Ich hab grad mal zwei Wochenenden gebraucht, um das System zu durchblicken und ein Programm fertig zu haben.

Absolut geil dabei: Man muß zwar für jede Zielplattform extra compilieren, weil Qt eben (anders als z.B. Java) nicht mit einer virtuellen Maschine arbeitet, sondern die Programme wirklich nativ am jeweiligen System ausgeführt werden. Deshalb sehen sie auch so aus wie andere „echte“ Windows-/Maemo-/Symbian-/…-Applikationen. Aber man muß den Quellcode nicht ändern, wenn man zuerst für Symbian und dann für Windows compiliert. Es bleibt immer ein und das selbe Programm. (Selbstverständlich kann man mit bedingter Compilierung plattformspezifische Anpassungen vornehmen: Die Autorotation abhängig vom Lagesensor hab ich z.B. nur bei der Maemo-Version drin.)

Ich hab jetzt alles durchprobiert, was mir an Betriebssystemen zur Verfügung steht. No Problem. Daneben wird noch eine ganze Menge mehr unterstützt, angefangen vom neuen Symbian^3 über Windows Mobile bis hin zu OS X und (Trommelwirbel!) MeeGo. Ich glaub denen jetzt: Einmal programmieren und auf verschiedenen System laufen lassen, das geht mit Qt. Das geht mit Qt sogar sehr gut. Dahinter steckt Potential.

Ah ja, hätt ichs doch glatt vergessen: mein Programm! Was hab ich denn eigentlich programmiert? Also: Man hat zwei Eingabefelder für Zahlen, darunter den Button „Berechnen“. Wenn man auf diesen Button klickt, listet das Programm alle Primzahlen zwischen den beiden Werten in den Eingabefeldern auf. Dann gibts noch den Button „Löschen“, der löscht die Ergebnisliste wieder. Ja, eh. Aber eben plattformunabhängig und objektorientiert! (Kommentare bisher: Und sparst Du so die Mehrwertsteuer?; Kannst Du jetzt auch was Gscheites programmieren?; Ossi … - Du brauchst Freunde.)


Mitmachen! Umfrage zu Multitasking am N900

Nokias „Head of MeeGo Marketing“, Peter Schneider, ist ja der eigentliche Grund, warum ich mir vom N900 gleich zwei Stück zugelegt hab. Sein legendäres Kompliment an mich (Stimmt überhaupt nicht, dass Du zu alt bist!) und sein 256-Zähne-Smile haben mich zu der Überzeugung gebracht: Junge Talente muß man sogar dann fördern, wenn sie im Marketing arbeiten. (Und er hat ja sicher eine Familie zu erhalten und hohe Heizkosten in den kalten finnischen Winternächten … das schafft man finanziell nur durch eine von N900-Verkäufen abhängige Zielerreichungsprämie. Drum hab ich zugeschlagen. Ganz selbstlos.)

Wo war ich? Was wollt ich schreiben?

Ah ja. Peter braucht wieder Unterstützung, und ich trommle N900-User unter meinen Lesern für ihn zusammen: Auf Twitter (böse! Kinder: nicht nachmachen!) fragt er N900-User: Let me know how you use multitasking. Do you keep the dashboard clean or messy?

Die entsprechende Abstimmung (How much apps do you typically keep open on your N900?) dazu gibt es dann hier im Maemo-Forum. Sie schließt am 9.9. kurz vor 17:00 Uhr. Zwischenstand heute:

Die überwiegende Mehrheit, nämlich 60% aller Teilnehmer, hat regelmäßig vier oder mehr Programme gleichzeitig laufen. Nur knapp 1% verwenden Multitasking gar nicht. Immerhin 3% halten im Schnitt 10 oder mehr Applikationen im Power-Multitasking offen.

Wie ist Euer Multitasking-Verhalten? Klicken und abstimmen. Es ist für einen guten Zweck! Es ist für einen Marketing-Menschen! (Die brauchen erfahrungsgemäß jede Hilfe, die sie kriegen können. *gg*)


N900: Video-MMS verschicken mit fMMS

Mit fMMS gibts ein recht brauchbares Programm am N900, das in erster Linie Bilder als MMS verschickt. Natürlich können auch andere Dateien als Anhang ausgewählt werden, fMMS stellt sie nur nicht so hübsch eingebettet dar. Videos per MMS versenden? Kein Problem also. Oder doch? Eben doch. Aber ich hab die Lösung. Liest Du weiter! ;)

Videos müssen, wenn sie per MMS verschickt werden sollen, vor allem eins sein: klein. Genau das sind die hochauflösenden N900-Videos nicht. Außerdem sollte ein MMS-Video in einer bestimmten Codierung verschickt werden, die die zuständigen Normungsgremien als gemeinsamen Standard für alle Telefonhersteller festgelegt haben. Sonst ist es Glückssache, ob der Empfänger den Clip überhaupt angezeigt bekommt.

Nokia hat sich darum nie gekümmert (offiziell hat das N900 ja keine MMS-Funktion), und auch der Programmierer von fMMS hatte andere Prioritäten auf der Netzwerkebene. Oskar for the rescue also. ;)

Tatsächlich hat das Maemo-Betriebssystem nämlich durchaus Funktionen eingebaut, die die Umwandlung jedes beliebigen Videos in eine briefmarkengroße MMS durchführen. Weil diese Funktionen auf dem GStreamer-Framework beruhen, das mittlerweile auf jedem GNU/Linux-System zur Standardausstattung gehört, findet man auch reichlich Dokumentation dazu. Ausgestattet mit diesem Wissen war mir klar, daß die Videokonvertierung ohne jede Software einfach auf der Kommandozeile möglich sein sollte. Die Betonung liegt auf sollte. Es sollte nämlich so aussehen:

$ gst-launch-0.10 \
filesrc location="infile.mp4" ! \
decodebin2 name=all \
hantromp4mux filetype=1 name=muxer ! \
filesink location="outfile.3gp" \
all. ! videoscale ! \
"video/x-raw-yuv, width=176,height=144" ! \
videorate ! \
"video/x-raw-yuv, framerate=15/1" ! \
dsph263enc ! queue ! muxer. \
all. ! audioconvert ! audioresample ! \
nokiaamrnbenc ! queue ! muxer.

Wenn jemand rausfindet, warum diese Pipe nicht funktioniert, darf er sich melden: Sie erzeugt eine Datei ohne Ton und wirft bei der Abarbeitung jede Menge uninterpretierbarer Warnmeldungen aus. Trotzdem würd ich sie gerne so zum Laufen bringen, weil sie in dieser Form ohne Drittsoftware auskommt und die Hardware des N900 am besten ausnutzt, was deutliche Geschwindigkeitsvorteile bringt.

Ich hab mich dann ein bißchen gespielt und bin auf folgende Alternative gestoßen. Zwar ist sie nicht so elegant, hat aber einen entscheidenden Vorteil: Sie funktioniert.

$ gst-launch-0.10 \
filesrc location="infile.mp4" ! decodebin ! \
audioconvert ! audioresample ! \
nokiaamrnbenc band-mode=7 ! \
ffmux_amr ! filesink location=sound.amr

$ gst-launch-0.10 ffmux_3gp name=muxer ! \
filesink location="outfile.3gp" \
filesrc location="sound.amr" ! amrparse ! \
queue ! muxer.audio_00 \
filesrc location="infile.mp4" ! decodebin ! \
videoscale ! \
"video/x-raw-yuv, width=176,height=144" ! \
videorate ! \
"video/x-raw-yuv, framerate=15/1" ! \
ffmpegcolorspace ! \
dsph263enc bitrate=50000 ! \
queue ! muxer.video_00

Hier wird die AMR-Codierung der Tonspur in eine eigene Befehlszeile ausgelagert. Außerdem verwende ich einen anderen Muxer. Damit das funktioniert, muß das Paket gstreamer0.10-ffmpeg installiert sein. Dieses Paket scheint nicht direkt im Programm-Manager auf, sondern wird durch Extra Decoders Support bereitgestellt.

Die zwei Zeilen in ein Script verpackt, der Name des Originalvideos als Parameter - und schon ist der „Video-Editor“ fertig. Ich hab meine ersten MMS-Videos schon verschickt, überraschenderweise konnten die Empfänger die Videos wirklich sehen.

Mein Wunsch: Eine Lösung auf Basis der ursprünglichen Idee, ohne gstreamer0.10-ffmpeg, die man dann auch fix in fMMS einbauen kann. Wie ich mich kenn, bleibts beim Wunsch: Jetzt, wo's so halbwegs funktioniert und ich es verwenden kann, ist der Spieltrieb erlahmt. ;)


Nokia N800/N810: „Zombie“ Diablo

Das Betriebssystem Maemo 4/OS2008 für die N8x0-Tablets wurde von Nokia Ende 2008 zu Grabe getragen. Der Codename der letzten Version lautete „Diablo“. Jetzt plötzlich lebt dieses totgeglaubte Diablo wieder:

Seit gestern gibt es die stabile Fassung des Diablo Community Project, die sich ganz einfach im Programm-Manager als SSU-Update installieren läßt - genau so, wie man es früher mit den Original-Nokia-Updates gemacht hat. Man muß nichts weiter tun als ein neues Repository hinzufügen. Details gibts auf der Wiki-Seite des Projekts.

Das Diablo Community Project ist ein Teil dessen, was aus den hochfliegenden Mer-Plänen geworden ist. Mer sollte Maemo komplett ersetzen: Nokia-spezifische proprietäre Komponenten, so war der Plan, sollten neu programmierter, freier Software Platz machen. Mer wäre somit komplett aus dem Einflußbereich von Nokia herausgelöst gewesen.

In der Praxis war das Projekt Mer zu umfangreich für die kleine Tablet-Community. Die Benühungen gehen nun in zwei Richtungen: Das Diablo Community Project bringt Bugfixes für die ohnehin freien Komponenten auf die N8x0-Tablets. Damit macht man keine großen Sprünge, beseitigt aber ein paar Lästigkeiten und eventuell sogar Sicherheitslücken.

Gleichzeitig arbeitet man an einer „N8x0 Hardware Adaptation“ von MeeGo: Wozu (wie in Mer) ein altes Betriebssystem „befreien“, wenn gerade ein viel moderneres, neues System auf den gleichen Fundamenten entsteht? Noch dazu mit viel mehr (bezahlten) Entwicklern? Eben. Der mittelfristige Plan ist also, eine Version von MeeGo so weit abzuspecken, daß sie auch auf der nun doch schon eher schwachbrüstigen N8x0-Hardware läuft. Sowohl die N8x0-Tablets als auch das N900 könnten aus dieser Quelle heraus unter Umständen noch auf Jahre hinaus mit Software-Updates versorgt werden.

Bis dahin: Diablo ist zurück von den Toten. Welcome back!


Fotos vom Nokia N9

angeblich ein N9-PrototypWer Chinesisch kann, ist klar im Vorteil: Auf baidu.com sind Fotos aufgetaucht, die angeblich einen Prototyp des N900-Nachfolgers „N9“ zeigen. Nokiasaga.com und Engadget haben die Story inzwischen übernommen; laut Engadget bestätigt die auf einem der Fotos zu erkennende Seriennummer: Das ist tatsächlich ein Nokia-Prototyp, kein billiger China-Klon.

Weitere Infos: Laut chinesischer Quelle entspricht dieser Prototyp noch nicht zu 100% den technischen Zeichnungen für das endgültige Gerät. Der geplante Erscheinungstermin, behaupten die Chinesen, ist die KW 48, das wäre um den 1. Dezember und damit ein Jahr nach dem Launch des N900.


Nokia: Ein Hoch auf Olli-Pekka Kallasvuo!

Wechsel an der Spitze von Nokia: CEO Olli-Pekka Kallasvuo, besser bekannt als OPK, soll ja bekanntlich der Wall Street zuliebe gehen. Im Artikel „Obituary for OPK: Wall Street is a Cruel Mistress - Nokia searching for CEO“ kommentiert Branchenkenner Tomi T. Ahonen die Ablösepläne. Er analysiert OPKs Leistungen, die Entwicklung des Unternehmens in den letzten Jahren, aber auch die Erwartungen vor allem der US-amerikanischen Investoren, die nur sehr wenig mit den tatsächlichen Gegebenheiten zu tun hatten.

Der Artikel ist elendslang, aber lesenswert: Viele Fakten über den vergangenen und gegenwärtigen Markterfolg, über Symbian, über die Strategie mit Symbian und MeeGo und über den Handy-Markt an sich werden hier zusammengetragen. Außerdem ist jeder Absatz durch und durch Amerika- und Apple-feindlich. ;)

Keine Angst: OPK kriegt auch sein Fett ab. Das N97 war auch in Tomi Ahonens Augen kein Ruhmesblatt. Die Unfähigkeit der Zusammenarbeit mit den US-Carriern hat ihre Ursache wohl ebenfalls auf höchster Management-Ebene. Schließlich war da noch OPKs gebrochenes Versprechen an die Investoren, den (global gesehen bedeutungslosen) US-Markt zurückzuerobern. Trotzdem: Die positiven Aspekte seiner „Amtszeit“ überwiegen dann doch.




development