Seit Freitag bin ich stolzer Besitzer einer schicken Böhm-Klarinette aus dem Hause F. A. Uebel. Liegt gut in der Hand, spricht sauber an – ein guter Kauf! Von wegen die Deutschen können kein französisches System bauen :-)
Wer übrigens der Meinung ist, das deutsche System wäre besser als das Böhm-System, der möge sich beispielsweise den „Wild Cat Blues“ von Chris Barber oder – noch eindrucksvoller – „Auf der Autobahn“ von Slavko Avsenik anschauen. Auf einer deutschen Klarinette bricht man sich bei solchen Stücken schier die Finger ab. Die schnellen Wechsel zwischen h', dis'' und cis'' sind hingegen mit dem Böhm-System problemlos zu spielen.
Abgesehen davon war ich so frei, eine Grifftabelle für Böhm-Klarinette online zu stellen, die – anders als das, was man sonst so im Internet findet – nicht einfach von irgendwoher eingescannt ist und mit ungeklärtem Copyright online steht. Vielmehr hab ich die Tabelle selbst geschrieben und stelle sie unter den Bedingungen der Lizenz CC BY-SA zur freien Verfügung. Vielleicht braucht’s ja jemand.
Die Griffe, die mir als Saxophonist am einfachsten bzw. vertrautesten erschienen, habe ich jeweils als erste Variante genannt, sofern es alternative Griffe gibt. Man beachte aber vor allem die äußerst praktischen alternativen Griffe, die die Redundanzen zwischen den Klappen ausnutzen, die mit den linken und rechten kleinen Finger gegriffen werden!
Jetzt muss ich bloß noch ein bisschen üben, weil mit der Virtuosität auf der Klarinette ist’s noch nicht allzu weit her ;-)
Internet forums are full with the question "How can I convert GPX to SVG?" but no really good answer is given. At least, I didn't find one program that "just" does the job. At the end of the day, we're talking about my newly released gpx2svg program and why I had to write it here. Just to have the link in the first line ;-)
What did I want to do?
I tried to convert an OpenStreetMap-extracted coastline of Iceland to an SVG file. Here is the source GPS file, shown by GpsPrune:
What do we have?
There's an online service called gpsvisualizer by which a GPX file can be converted to SVG. It actually could do that with a proper projection, but the output of my dataset was scattered in thousands of small paths, so it was completely unusable.
Then, there is one small piece of code in the OpenStreetMap SVN repository that claims to "spit out a svg file" [sic]. It's called svg.rb and resides in the directory gpx2svg. But apart from the fact it seems to be unmaintained (just a few updates back in 2007) and there's no release, it just didn't work:
This is what I got using the gpx2svg/svg.rb script from the OpenStreetMap SVN repository, viewed with Inkscape:
Apparently, the script does also not use the Mercator projection. Notice the top-bottom compression.
gpx2svg
Self do, self have. Finally, here's a screenshot of the output of the gpx2svg program I wrote, also viewed with Inkscape. The whole coastline and all the islands around are closed paths that can be filled as-is:
The output fitted my needs. Probably, someone else also wants to do such a conversion. If so, have a lot of fun with it :-)
Halb Erfahrungsbericht, halb Howto – viel Spaß damit :-)
Hardware
Kürzlich habe ich mir einen DVB-T-USB-Stick zugelegt. Der sollte natürlich unter Linux laufen. linuxtv.org bietet einige Informationen rund um DVB-T unter Linux, unter anderem auch eine Übersicht unterstützter Geräte.
Zunächst hatte ich mich für einen Terratec Cinergy T Stick RC entschieden. Der wird laut der Tabelle unterstützt. Ausgepackt – geht nicht. Netterweise war der gekaufte Stick kein „Terratec Cinergy T Stick RC“, sondern ein „Terratec Cinergy T Stick RC Rev3“. Schaut genauso aus, heißt genauso, ist aber ein komplett anderes Gerät mit komplett anderer Hardware. Schönen Dank auch. Kann man nicht dem Ding einen anderen Namen verpassen?! Finger weg davon, läuft (noch?) nicht unter Linux.
Also zweiter Versuch: her mit einem PCTV NanoStick solo (vorher wohl „Pinnacle PCTV 73e“) – in der Hoffnung, es ist auch einer. Nach einiger Überzeugungsarbeit beim örtlichen Elektronikdiscounter durfte ich tatsächlich den Stick kurz an meinem Netbook anstecken, um die USB-ID auslesen zu können und somit einen weiteren Fehlkauf zu verhindern. lsusb zeigte ID 2013:0245 Unknown (Pinnacle?) PCTV 73ESE an – et voilà: Hardware mit Treiber im Mainline-Kernel. Nach der Installation der benötigten Firmware und dem Bauen der passenden Kernelmodule: angesteckt und geht.
Ich bin mal davon ausgegangen, dass man den Sender Ochsenkopf hier am besten empfangen können müsste.
Antenne
Aus der Seminarzeit hatte meine Frau noch eine ziemlich teure aktive DVB-T-Antenne. Damit sollte man – so möchte man denken – die besten Ergebnisse erreichen.
Nach einigem Surfen im Internet habe ich Bauanleitungen für einfache und kostengünstige DVB-T-Antennen gefunden, unter anderem eine für eine Doppelquad-Antenne mit Reflektor. Was daran mein besonderes Interesse geweckt hat, war die Tatsache, dass die Antenne für einen bestimmten Frequenzbereich berechnet wird, nämlich für den, den man empfangen möchte. Leuchtet ein, dass das sinnvoll ist!
Also für ein paar Euro die Materialien im Baumarkt gekauft und das Ding gebaut – abgestimmt auf die Frequenzen, die der Sender Ochsenkopf sendet.
Empfang
Es hat sich herausgestellt, dass man in Konradsreuth – zumindest bei mir zu Hause – den Sender Ochsenkopf und den Sender Schöneck empfangen kann. Teilweise besser oder schlechter, aber man kann alles empfangen, was von dort gesendet wird.
Mit der kleinen Stabantenne, die bei dem DVB-T-Stick dabei war, war erwartungsgemäß überhaupt kein Empfang möglich. Auch nicht im Freien.
Höchst interessant ist die Tatsache, dass die selbstgebaute Antenne für ein paar Euro besser funktioniert, als die sündhaft teure aktive! Damit konnte ich nicht alle Frequenzen vom Sender Ochsenkopf empfangen (ausprobiert unterm Dachfenster!), mit der anderen aber schon (bei richtiger Polarisation – die Antenne muss hier senkrecht stehen, nicht waagerecht).
Also: lieber den Lötkolben auspacken, als unnötig Geld ausgeben und sich über das Ergebnis ärgern! Das Teil kann wirklich jeder bauen, der ein Bisschen handwerkliches Geschick hat. Da gehört nicht viel dazu.
Die Antenne habe ich mit dem Script auf der Anleitungsseite berechnet. Für den Ochsenkopf sind dabei 13 cm Kantenlänge für den Kupferdraht, ein Blech von mindestens 46,5 mal 28,2 cm und 6,7 cm Abstand vom Blech herausgekommen. Berechnet man die Antenne für den Sender Schöneck, bekommt man andere Werte, teilweise mit fast einem cm Unterschied.
Berechnet man aber eine Antenne, die für beide Sender optimiert ist, dann kommt fast die selbe wie für den Ochsenkopf heraus: 13,1 cm Kantenlänge, 46,7 mal 28,4 cm für das Blech und 6,8 cm Abstand. So genau kann man den Draht eh nicht biegen und das Blech habe ich sowieso mit 30 mal 50 cm etwas größer gemacht. Meine Antenne ist also quasi zufällig für beide Sender optimiert!
Sender
Empfangen kann ich alle Sender, die von den beiden Sendestationen ausgestrahlt werden. Das sind für den Sender Ochsenkopf:
Das entspricht genau den Angaben in der Sender- und Programmliste Deutschland von http://ueberallfernsehen.de/.
Die beiden Downloads enthalten alle Sender der jeweiligen Sendestation. Es ist jeweils die Ausgabe eines Durchlaufs von dvbscan mit den jeweiligen Startfrequenzen für Bayern und Sachsen. Die Dateien sind im zap-Format, z. B. für die Verwendung mit dem mplayer und UTF-8-kodiert.
Wie gesagt, hier funktioniert eine Kombination beider Sendestationen (sozusagen länderübergreifend ;-) am besten. Aber das muss man vermutlich einfach ausprobieren, abhängig vom Standort.
Fernsehen
Als Konsolenliebhaber benutzt man natürlich den mplayer, um DVB-T zu schauen. Hierzu einfach die jeweilige (ggf. angepasste) conf-Datei nach ~/.mplayer/ kopieren und als channels.conf verlinken oder umbenennen.
Ganz nett funktioniert die Option -vf pp=lb, um einen Deinterlacer zu aktivieren.
Ingesamt also: mplayer -vf pp=lb dvb://[Kanal], den Kanal ggf. in Anführungszeichen oder mit Escapes für Leerzeichen.
Videotext (Teletext)
Das will man natürlich nicht missen! Wenn schon Fernsehen, dann auch Videotext. Es scheint derzeit unter Linux nicht allzuviel Auswahl an Programmen zu geben, die DVB-T-Videotext anzeigen können. Eines funktioniert super, auch wenn man ein bisschen Energie dafür investieren muss: alevt.
Die offizielle Version wird scheinbar nicht mehr gepflegt, auch ist deren Homepage http://goron.de/~froese/ (im Moment?) nicht erreichbar. Außerdem unterstützt das letzte offizielle Release (1.6.2) kein DVB(-T). Netterweise wurde der Code ins Repository von Linuxtv übertragen (util/alevt/) und überarbeitet. Standardmäßig wird alevt allerdings nicht gebaut.
Es war nötig, zvbi mit v4l-Unterstützung zu installieren. Außerdem benötigt alevt noch zlib und libpng (die wird man aber vermutlich ohnehin installiert haben). Weiterhin musste ich exp-gfx.c und Makefile patchen. Danach lief ein simples make allerdings problemlos durch.
Ein ebuild (für Gentoo Linux), das alevt mitbaut, wenn man media-tv/linuxtv-dvb-apps installiert (USE-Flag „alevt“ muss gesetzt sein) habe ich unter Bug #423687 online gestellt. Dort finden sich auch die beiden Patches.
Zum Anzeigen von Videotext muss man einfach den jeweiligen Sender öffnen (z. B. mit dem mplayer, s. o.) und dann alevt folgendermaßen starten:
Da auf einer DVB-Frequenz mehrere Sender ausgestrahlt werden, benötigt man noch die Service ID. Diese ist im Feld Nr. 13 in der channels.conf-Datei gespeichert. Herauszufinden also beispielsweise mittels
Natürlich kann man sich mittels ein paar Zeilen Bash einen Haufen Tipparbeit sparen. Ich habe z. B. ein Script namens „tv“, was einen Sender öffnet (und den Namen des Senders in /tmp/dvbt_tuned speichert) und eines namens „videotext“, was den zugehörigen Videotext anzeigt.
Eine Bash-Completion-Datei für das tv-Script habe ich auch geschrieben. Mittels tv <TAB> bekommt man eine Auflistung aller verfügbaren Sender. Wenn man bereits etwas eingegeben hat, werden nur die Sender angezeigt, deren Name mit der Eingabe anfängt.
Vielleicht hilft’s ja jemandem, der auch unter (Gentoo) Linux DVB-T schauen will :-)
Ich hatte kürlich meinen alten Barcodescanner (noch mit DIN-Stecker!) in der Hand. Trotz DIN-PS/2-Adapter, aktivem PS/2-USB-Adapter und gutem Zureden konnte ich ihn nicht mehr zum ordnungsgemäßen Funktionieren bringen. Also habe ich mir folgende Alternative überlegt:
Zunächst habe ich meine alte Webcam, eine Logitech QuickCam Messanger (USB-ID 046d:08da) ausgegraben. Hat out-of-the-box mit dem Kernel-Treiber ZC3XX USB Camera Driver funktioniert (zu testen mittels mplayer tv:// o. Ä.). Natürlich geht auch jede andere unter Linux funktionierende Webcam!
Erwartungsgemäß bietet die Open-Source-Gemeinde ein handliches Programm, das aus einem Webcam-Stream Barcodes lesen kann (übrigens auch zweidimensionale, z. B. QR-Codes): zbar. Gentoo-Nutzer sollten darauf achten, den v4l-USE-Flag zu setzen, sonst wird nur die nackte Bibliothek erstellt, nicht das Tool, was wir brauchen.
Das mitgelieferte Tool zbarcam übernimmt das Übersetzen des Webcam-Streams in Barcodes und schreibt das Ergebnis auf STDOUT.
Jetzt wäre es ja aber zu umständlich, einen Barcode einzulesen, von der Konsolenausgabe zu kopieren und dort einzufügen, wo er hin soll. Deswegen brauchen wir ein zweites Helferprogramm: xvkbd. Das kann von STDIN lesen und nach STDOUT schreiben – dort hin, wo der Cursor gerade ist.
Den „Barcodescanner“ startet man mit zbarcam --raw | xvkbd -file -. Das Fenster von zbarcam vielleicht noch kleiner machen, immer in den Vordergrund stellen und in ein Eck schieben und dann kann’s losgehen :-)