ID3 Tags mit Perl bearbeiten

Ich habe alte MP3s gefunden, größtenteils noch ohne ID3 Tags, solche MP3s sind Mist wenn man sie z.B. in iTunes importieren will. Mit dem Skript hier werden ID3 Tags auf Basis des Namens in die Datei geschrieben. Es wird erwartet dass die Datei folgenden Aufbau hat:

nn - Liedname.mp3

Also Liednummer plus “ – “ plus Liedname, wichtig ist das “ – “ zwischen Liednummer und -name. Damit man die MP3s alle in diese Form bekommt, leistet das Tool rename (ist standardmäßig bei Linux mit installiert) gute Dienste! Das Skript selbst verwendet wiederum das Tool id3v2:

#!/usr/bin/perl -w
$num_args = $#ARGV + 1;
if ($num_args <3 ) {
        print "\nUsage: setTags.pl Album Artist Directory [exec] \n";
        exit;
}else{
        $dir   =$ARGV[2];
        $artist=$ARGV[1];
        $album =$ARGV[0];
        $exec  =$ARGV[3]; unless ($exec eq "exec"){$exec="";}
}
# create a list of all *.mp3 files in directory
opendir(DIR, $dir) || die("Can't open $dir");
@files = grep(/\.mp3$/,readdir(DIR));
closedir(DIR);
# build or print id3v2 system call
foreach $file (@files) {
        $path="$dir$file";
        print "\n processing: $path";
        ($track, $titleMp3)=split(" - ",$file);
        ($title)=split(".mp3",$titleMp3);
        $systemcall_1= "/usr/bin/id3v2 -a \"$artist\" -t \"$title\" -A \"$album\" -T \"$track\" \"$path\"";
        $systemcall_2= "/usr/bin/id3v2 -l \"$path\"";
        if($exec eq "exec"){
                system($systemcall_1);
                system($systemcall_2);
        }else{
                print"\n # $systemcall_1";
        }
}
print "\n";

Wird dann so aufgerufen:

christian@lonestar:~/_in$ ./setTags.pl "Speak English or Die" "S.O.D." S.O.D/Speak\ English\ or\ Die/ exec

ssh -X

-X Enables X11 forwarding. This can also be specified on a per-host basis in a configuration file.

Eine Sache, die ich seit Jahren eigentlich viel zu wenig benutzt habe, ist ssh -X. ssh -X ist praktisch und funktioniert auch hervorragend zwischen Mac und Unix Kiste (incl. Zwischenablage). Das erinnert an die alten Zeiten!

IT Zeugs im Sommer geht nicht so gut

Meine Festplatte hat sich jetzt komplett verabschiedet, 1,5 TB einfach so offline. Jetzt habe ich mir gestern überlegt was zu tun ist und das ist grob nix. Die paar GB Musik und Bilder bekomme ich erst mal wo anders unter, von den 1,5 TB waren gut 700 GB leer und der Rest war mit Time Machine Backups belegt – Datenmengen-technisch bin ich noch nicht im 21. Jahrhundert angekommen.
Außerdem habe ich die Temperaturüberwachung abgeschlossen, ich habe die Temperatur jetzt gut 9 Monate durchgeführt und habe die Infos beisammen, die ich brauche wenn es an die Planung der Heizung geht.
Dadurch dass ich jetzt keine USB 2 Festplatte an den Rechner anschließen muss und die Temperaturüberwachung abgehakt ist, bin ich um einiges flexibler mit der Aufstellung und der Auswahl des Heim-Servers… und plötzlich reicht das alte 12″ Powerbook aus. OK, ich gebe es zu im Moment fehlt mir die Muse um da mehr Zeit als nötig zu investieren – aber von außen betrachtet ist die Kausalkette durchgängig und das ist das wichtigste.

IT in

Heute angeschafft:

  • Gigabit Switch
  • Gutes Netzwerkkabel
  • Neuer Akku für das MacBook
  • 60 GB SSD für das MacBook

Das MacBook ist nicht wieder zu erkennen… der Hammer!
[Update] OK, ich bin Realist und weiß dass das nicht sein kann, es ist aber irgendwie wie Balsam für die Seele:



5:04 Stunden 😉

Log iTunes

Wir hören in der Küche meistens Rockantennte Internet-Radio über iTunes. Der Sender ist besser als sein Ruf und falls nicht gibt es ja noch Alernativ-, Classik Rock- und Heavy-Stream. Was nervt ist dass man regelmäßig, wenn ein Lied kommt, was man nicht kennt, man am aufspringen ist um nach zuschauen was da grade läuft.
Eine Logging-Funktion wäre nicht schlecht. Jetzt hab ich mich gestern abend hingesetzt und versucht ein Skript (ab)zu schreiben das ausließt was grade dran ist, das geht so:

--Get the name of the current track from iTunes
tell application "iTunes"
	set trackName to name of current track
end tell
--Concatenate strings into what we will show in the dialog
set message to "The current track is: " & trackName
--Show a message stating the current track
display dialog message buttons "OK" default button "OK"

Bring aber nix, bei so einem Internet-Stream weil dieses name nicht befüllt wird, weil so ein Stream ja mehr oder weniger ein ganz ganz langes Lied ist… Jetzt habe ich hin und her überlegt, alles nix geholfen. Irgendwann habe ich aber bemerkt dass GrowlTunes das aber kann. Selbst habe ich es nicht geschafft GrowlTunes zu erweitern, also nach Grwol und Log gegooglet und dann hier rausgekommen – geht und funktioniert und passt.

TVTV ade… hoff ich mal

Die Sache mit den 20 € für das TVTV-Abo hat mich nicht los gelassen. Da ist mir jetzt noch eine Idee gekommen: man könnte ja ein Programm schreiben, das einfach alle Programme durchzappt, so dass das EPG über DVB-T herunter geladen werden kann. Schaut so aus:

tell application "EyeTV" to activate
repeat 20 times
	tell application "EyeTV"
		channel_down
	end tell
	delay 5
end repeat
ignoring application responses
	tell application "EyeTV" to quit
end ignoring

Könnte man sicherlich noch aufhübschen, aber für so einen kurzen Abend nicht schlecht. Cron-Aufruf rum und fertig:

0 5 * * * /usr/bin/osascript /Pfad/zum/Skript/EPGladen.scpt

[Update] Damit der Cron-Job läuft muss natürlich der Rechner laufen, in den Energieeinstellungen lässt sich das recht leicht einstellen. Bisher funktioniert alles, das einzige was fehlt sind die Bilder im EPG, aber darauf kann man verzichten.

2010 in a nutshell

Grade kehrt etwas Ruhe ein, da kann man sich ja mal ein paar Gedanken übers letzte Jahr machen. Im direkten Vergleich zu 2007 (Kind), 2008 (Haus gekauft und innen renoviert) und 2009 (Haus außen renoviert), kann 2010 natürlich nicht mithalten. 2010 war sowas wie ein Konsolidierungsjahr. 2010 war aber auch ein ganz schön schmerzhaftes Jahr, gleich zu Anfang hat es mich die Kellertreppe runtergewixt, im Sommer bin ich 2 mal vom Rad gefallen und im Herbst bin ich die Treppe vom 1. Stock runtergeflogen. Kumuliert dürfte ich es auf 1 qm Blaue Flecken gebracht haben.
Wenn man die ganzen Einzelbaustellen betrachtet, war 2010 aber gar nicht mal so ohne:

  • Die Wand zum Nachbarn ist verschalt und das Projekt Isolierung komplett abgeschlossen (incl. Nutzungsvertrag)
  • Es gibt einen neuen Sichtschutz zum Nachbarn, der war der Chefin recht wichtig.
  • Der Balkon ist begehbar, weil mit Tropenholz belegt und somit nutzbar – sieht man mal davon ab dass kein Geländer dran ist.
  • Die Heizkörper im Anbau sind verkleidet und verleihen dem Anbau einen launchigen Flair (!)
  • Wir haben eine Seitentüre in der Garage.
  • Die Waschküche ist jetzt eine Werkstatt (unsere Werkstatt, wenn auch von mir öfters benutzt)
  • Die Chefin hat ihren Gefrierschrank bekommen und die Markise hängt auch wieder am Haus.
  • Und was nicht vergessen werden darf ist das Treppenhaus, das schon im Januar gepimpt wurde.

Man darf also zufrieden sein, auch wenn mein persönlich es Lieblingsprojekt „Gartenhäusla 2.0“ leider nicht umgesetzt wurde…
Rund um das Thema Computer ging viel weniger, das augenscheinlichste ist wohl dass ich auf dem eeePC OS X durch Ubuntu ersetzt habe, das verleiht dem ganzen eine geekige Note. Kurzzeitig habe ich auf dem Powerbook auch noch Debian installiert, das war geektechnisch spitze, aber Quatsch.
Mal schauen wie 2011 wird, bis jetzt fühlt es sich ja ganz gut an, wenn alles so bleibt bin ich sehr zufrieden.