Kategorien
unbezahlte IT-Spielereien

bin im Jahr 2000 angekommen

und besitze inzwischen ein tragbares Musikabspielgerät mit Festspeicher (heißt das so?)

auf meinem Wunschzettel für Weihnachten hatte ich auch einen MP3-Player* – mit den Muss-Anforderungen Ogg-Vorbis-Unterstützung und hosentaschentauglich sowie dem Nice-To-Have SD-Karten-Slot**.

Glücklicherweise habe ich so was nicht geschenkt bekommen und konnte dann die freien Tage in Marburg*** nutzen, mal selber nach einem solchen Gerät zu suchen – und wurde tatsächlich fündig, Sandisk verkauft mit dem sansa clip+ ein kleines leichtes Playerchen mit Ogg-Support und einem Micro-SD-Slot**** – bestellt***** habe ich dann die kleine Variante mit nur 2GB, wenn ich mehr Platz brauche investiere ich dann gleich in Speicherkarten.

Zum Gerät selbst kann ich nicht viel sagen (meldet sich als ganz normaler USB-Speicher und kann auch mit meinem Linux ohne Probleme per Drag&Drop befüllt werden, die Bedienung des Geräts selber habe ich kaum 5 Min lang erforscht – eben Umstellen auf Shuffle-Betrieb, für mehr werde ich das Ding nicht verwenden), habe aber etwas mit Bash rumgebastelt und einen Skript gebaut, der es mir ermöglicht, die Befüllung zu automatisieren. Ich höre auch sonst nur zu 95% Zufallsmusik aus meiner Sammlung, das wird sich unterwegs nicht ändern – hier also ein Skript, der als Optionen Quell- und Zielverzeichnis sowie eine zu kopierende Datenmenge in MB erwartet.

Das ganze Ding liest dann per find alle MP3- und OGG-Dateien in ein Array ein und kopiert zufällige Dateien daraus von der Quelle in den Zielordner (eben der als USB-Laufwerk gemountete Player) und hört auf, sobald die Zielmenge erreicht ist (genau genommen überprüft er nach einer Kopie, wieviel schon kopiert wurde und was der Zielwert ist – daher wird etwas mehr als die angegebene Größe kopiert. und wenn die letzte Datei ein 4-stündiges Hörbuch mit hoher Bitrate war kann dann da schon mal was wegcrashen).

Ich denke ich habe die meisten Probleme (u.a. mit Leerzeichen in Pfaden) gefunden und abgefangen, wenn das wer nutzt und damit sein System zerschießt ist das nicht mein Problem****** :)

PS Fukken WordPress hat übrigens alle meine Einrückungen rauszensiert, das Listing so ist eher unbrauchbar. wer das Ding in schöner haben will: ihr habt ja meine Mailadresse

#!/bin/bash
if [ -z „$1“ ] || [ -z „$2“ ] || [ -z „$3“ ]; then
echo „Usage: $0 [source path] [destination path] [size in MB]“
exit 1
fi

rm -rf „$2″/*
declare -a files
find $1 \( -iname „*.ogg“ -or -iname „*.mp3“ \) -and -type f -printf „%p|%s\n“ > /tmp/files
exec 3&-
let size=$3*1024*1024
while [ $size -gt 0 ]; do
let number=$(($RANDOM % ($counter -1 )))
stop=0
for num in $usednumbers; do
if [ $num == $number ]; then
stop=1
fi
done
if [ $stop == 0 ]; then
cp –parent „$(echo ${files[$number]} | cut -f 1 -d \| )“ „$2″
let size=$size-$(echo ${files[$number]} | cut -f 2 -d \| )
usednumbers=“$usednumbers $number“
fi
done
rm /tmp/files

*) komisch, wie sehr dieses Wort ein Gattungsbegriff geworden ist, ich habe kaum MP3-Dateien
**) weil das eben auch meine Cam und mein Laptop frisst
***) es war himmlisch, 3 Tage lang exakt keine Onlinezeit – bin aber trotzdem von der Firma angerufen worden wegen Dingen, die ich jetzt nicht wiedergeben möchte weil alles, was ich dazu sagen könnte mutmaßlich von jedem Gericht in D als beleidigend ansehen würde
****) was für ein Glück, dass ich für meine Kamera immer noch nur die mitgelieferte SD verwende – wenn ich mehr brauche wird es dann Adapter + microSD
*****) wie habe ich die Pre-Amazon-Zeit nur ausgehalten? Bestellt am 29. gegen 14 Uhr, Versandbestätigung kam 2 Stunden später und als ich am 30. Abends nach FR kam hatte ich schon die Postbenachrichtigung im Briefkasten
******) im Skript ist zum Leeren des Sticks ein rm -rf drin. ihr seit damit rechtskräftig gewarnt

Von renke

IT-Ratte (oder Systemadministrator), hat nen neues Spielzeug gekriegt und wird die "Genese" des Servers hier bebloggen.

21 ist nur die halbe Wahrheit.