Re: File server and audio-(video?) streamer

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Tue, 27 Dec 2011 12:41:56 +0100 (CET)

Peter Ross wrote:
> ich ueberlege, ob mein naechstes "Heimupgrade" Anfang des Jahres was mit
> FreeBSD zu tun hat..
>
> Ich haette gern:
>
> - einen kleinen Fileserver (klein+leise, bevorzugt luefterlos)
> - mit einem Audioausgang fuer die HiFi-Anlage (also eine Soundkarte)

Ich persönlich habe das getrennt: Der Fileserver steht in
der Abstellkammern und muss daher nicht unbedingt besonders
leise sein (worauf ich aber trotzdem geachtet habe, vor
allem aber auch auf den Stromverbrauch). Ich verwende da
einen kleinen Dual-Core-Atom.

Tipp: Die üblichen 4cm-Lüfter sind meistens recht laut.
Ich habe meinen durch einen 4cm-auf-6cm-Adapterring ersetzt
und einen 6cm-Lüfter draufgesetzt, der bei gleichem Luft-
durchsatz langsamer dreht und deutlich leiser ist (und
vermutlich auch länger hält). Die Temperatursensoren und
Lüfterdrehzahlen kann man per sysctl dev.cpu und healthd
(Ports-Collection) abfragen und überwachen.

Im Wohnzimmer steht ein Mediaplayer (ohne Lüfter und ohne
Festplatte, daher vollkommen geräuschlos), der seine Daten
per Netz von besagtem Fileserver bezieht. In meinem Fall
ist es ein ASUS O'Play, mit dem ich sehr zufrieden bin,
aber da gibt's natürlich auch diverse andere Hersteller und
Modelle zur Auswahl.

Außerdem habe ich noch zwei "Logitech Squeezebox Boom", die
ebenfalls ihre Daten vom Fileserver erhalten (mp3-Dateien),
aber auch Radio-Streams direkt über den DSL-Router beziehen
können. Eine der Booms steht als Radiowecker im Schlaf-
zimmer, die andere steht in der Küche und ersetzt dort ein
älteres CD-/UKW-Radio.

> Bei letzterem frage ich mich, was man braucht, wenn man in CD-Qualitaet
> abgespeicherte Musik auf einer HiFi-Anlage in CD-Qualitaet hoeren moechte
> (ueber Audioausgang angeschlossen).

Da würde ich eine Soundkarte mit S/P-DIF empfehlen (digital-
Ausgang, gibt es optisch oder elektrisch, wobei ersteres
vorzuziehen ist, um Brummschleifen von vornherein auszu-
schließen). Die gibt es für PCI, sofern Du einen Slot
frei hast, oder für USB. Als Beispiel nenne ich nur mal
die Terratec Aureon USB, die es für ca. 20 Euro gibt, also
kein großes Geld. Die hat einen optischen S/P-DIF-Ausgang.
Unter FreeBSD sollte das mit snd_uaudio(4) funktionieren.

(Vorsicht: Das USB-Kabel nicht herausziehen, solange noch
eine Anwendung das Audio-Device geöffnet hat. Zumindest
vor kurzem konnte das noch zu einer Panic führen. USB ist
dabei ausnahmsweise unschuldig, aber das PCM-Framework kann
nicht mit dynamischen Detachs umgehen; ich bin nicht sicher,
ob das Problem inzwischen behoben wurde.)

> Was ist in diesem Kontext "eine gute Soundkarte", oder tut's heutzutage jede?

Das Problem ist, dass Du bei analoger Ausgabe theoretisch
immer irgendwelche Störungen einfangen kannst. Dass muss
nicht unbedingt die Schuld der Soundkarte sein.

Wenn Du dagegen einen digitalen Ausgang verwendest, ist
die Strecke von der mp3-Datei bzw. vom Radiostream-Server
bis zu Deiner Verstärker-Endstufe digital und verlustfrei.

Voraussetzung ist natürlich, dass Dein Verstärker bzw. die
Hifi-Anlage einen digitalen Eingang hat.

> Evt. denke ich auch noch ueber Video nach, braeuchte dann eine Tunerkarte..

Kann ich leider nicht kommentieren. Ich spiele zwar Filme
vom Server ab, habe aber keinen Bedarf für TV-Aufzeichnungen
und besitze daher keine Tunerkarte.

> Der Gedanke ist, in den anderen Raeumen alte (vorhandene) Laptops zu
> haben, die gelegentlich zur Beschallung benutzt werden koennen - ueber
> wireless mit dem Server verbunden, mit externen Boxen (und externen
> Monitors, eventuell).

Kann man machen, fände ich aber nicht besonders "schön".
Ich würde eher zu so etwas wie die Squeezebox Boom raten.
Die sehen schick aus, haben eine ausgezeichnete Audio-
qualität (habe ich beim ersten Ausprobieren kaum glauben
können, was aus dem kleinen Kasten rauskommt), Du kannst
sie wahlweise per WLAN oder Patchkabel mit Deinem File-
server verbinden. Für Radio-Streams braucht es nichts
weiter als eine IP-Adresse (wahlweise per DHCP oder auch
statisch am Gerät eingestellt). Für mp3-Dateien muss man
noch eine Software auf dem Fileserver installieren, die
es in der Ports-Collection gibt.

> Zum einen bin ich es leid, das ueberall was anderes steht, und meine Wahl
> der Musik pro Ort vom Medium abhaengig ist (CD, Platte, Kassette, MP3..),
> ich die Tontraeger hin-und herschleppen muss - daher alles digital auf
> einen Server - und von da kann ich auch schnell mal meine bevorzugten 47
> Schallplatten auf USB-Stick sichern, wenn ich mich mal wieder auf eine
> Zweiwochenurlaubstour durchs Land begebe. Dass meine Tochter Lady Gaga
> auf ihren MP3-Player laden kann oder in ihrem Raum hoeren..

Ja, ich habe aus dem gleichen Grund auch einen großen Teil
meiner CD-Sammlung auf dem Fileserver abgelegt. Dadurch
kann ich sie in jedem Raum abspielen, ohne die Tonträger
durch die Gegend tragen zu müssen (wir leben schließlich
im 21. Jahrhundert), oder auch mal auf einen mp3-Player
für unterwegs kopieren.

> "Nebenbei" wuerde die Box auch noch mein Backup erledigen.

Das tut mein Fileserver auch, jedenfalls eine Hälfte des
Backups. Aus Sicherheitsgründen habe ich zwei redundante,
unabhängige Backup-Systeme.

> Ich bin uebrigens verwundert, dass es keinen "ordentlichen"
> (IETF-RFC-)Standard fuer die LAN-Uebertragung von Audio zu geben scheint..
> Dabei scheint mir das ganz einfach - A/D zu CD-Qualitaet, Pakete in UDP or
> TCP gepackt und ueber die Leitung geschickt, Unicast fuer 1:1, Multicast
> fuer 1:n.
>
> Ist das so schwierig? (Und jetzt nochmal fuer Video;-)

UDP und Multicast ist schwierig, weil da einzelne Pakete
verlorengehen können. Bei den meisten Audioformaten sind
die Daten benachbarter "Frames" voneinander abhängig, was
zur Folge hat, dass der Player beim Verlust eines Paketes
gleich mehrere Frames wegschmeißen muss (im Falle von mp3
sind das bis zu drei Frames), was sich durch eine deutliche
Störung bemerkbar macht. Bei Video ist das noch schlimmer.
Das kommt also nur dann in Frage, wenn der Übertragungsweg
absolut stabil und ohne Paketverlust ist. Daher müssen
Provider von IPTV (was Multicast verwendet) auch spezielle
Vorkehrungen treffen (siehe z.B. Stichwort QoS).

UDP und Unicast geht natürlich, wenn das Protokoll dafür
eingerichtet ist, dass verlorene Pakete erneut übertragen
werden können. Andererseits kann man dann auch gleich TCP
verwenden, das die Pakete freundlicherweise auch in die
richtige Reihenfolge bringt.

Es hat halt alles seine Vor- und Nachteile ...

Gruß
   Olli

-- 
Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M.
Handelsregister: Registergericht Muenchen, HRA 74606,  Geschäftsfuehrung:
secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün-
chen, HRB 125758,  Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart
FreeBSD-Dienstleistungen, -Produkte und mehr:  http://www.secnetix.de/bsd
"We will perhaps eventually be writing only small modules which are identi-
fied by name as they are used to build larger ones, so that devices like
indentation, rather than delimiters, might become feasible for expressing
local structure in the source language." -- Donald E. Knuth, 1974
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Tue 27 Dec 2011 - 12:42:19 CET

search this site