Forum: Mikrocontroller und Digitale Elektronik Kennt jemand ein Devel-Board mit HiFi-Audio?


von Zefir K. (zefir)


Lesenswert?

Hallo Forum,

da ich im Netz nicht fündig werde, versuche ich mein Glück hier.

Wie der Titel schon sagt, suche ich ein Devel-Board mit HiFi-Audio für 
eine Anwendung des Netz verteilten Musizierens. Dabei jammen Musiker 
innerhalb eines Netzes in Echtzeit. Für dieses Projekt verwende ich 
bisher Laptops mit sehr guten Audio-Karten (EMU-1616m, RME), die Studio 
taugliche Beschallung ermöglichen.

Damit das verteilte Musizieren funktioniert, müssen die Endgeräte (hier 
Laptops) Audiodaten sehr zeitnah verarbeiten, was mit den aktuellen 
Betriebssystemen immer weniger möglich ist. Daher soll der 
Echtzeit-kritische Part (der Austausch der Audiodaten zwischen Audio- 
und Ethernetschnittstelle) aus dem PC in eine dedizierte 
Ethernet-Audio-Bridge ausgelagert werden.

Dafür wird ein aktuelles Mid-Range SoC benötigt, das auf der einen Seite 
an Fast-Ethernet angebunden ist und an der anderen über 1/4" Klinke 
Line-In/Out an Studiogeräten hängt.

Soweit zu den Anforderungen. Nun gibt es im Netz genügend viele 
SoC-Boards mit Consumer-Audio, und es gibt Eval-Boards für High-End 
Audio Codecs (wie z.B. das CDB4272 von Cirrus [1] oder das AKD5394a von 
Asahi Kasei [2]). Aber eine Kombination aus beiden Typen habe ich 
bislang nicht gefunden.

Daher die Frage an euch:
1) kennt jemand Eval-Boards mit entsprechender Audio-Qualität?
2) kennt jemand entsprechende HiFi-Audio Header-Boards zur Anbindung 
über I2S?

Wenn nicht,
3) wie schwer ist es, so ein Board anhand der frei verfügbaren 
Schematics selbst zu machen? Bin selbst reiner SWler und habe keine 
rechte Vorstellung vom zu treibenden Aufwand für die HW.



Danke und Gruss


[1] www.cirrus.com/en/pubs/rdDatasheet/CDB4272-2.pdf
[2] www.asahi-kasei.co.jp/akm/en/product/ak5394a/akd5394a-04e.pdf

von Reinhard R. (reinhardr)


Lesenswert?

Zu Audio, insbesondere HiFi, kann ich nicht viel sagen.

Die von dir verlinkten Boards sehen danach aus als hätten sie ein 
relativ simples digitales Interface. Das sollte kein Problem sein sie an 
ein anderes Devboard mit einem µC/µP deiner Wahl anzubinden. Die SW ist 
da sicher der bedeutend aufwendigere Teil.
Ein selbst entwickeltes Layout ist vermutlich nicht ganz trivial wenn es 
gute akustische Kennwerte aufweisen soll.

Reinhard

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Zefir K. schrieb:
> 3) wie schwer ist es, so ein Board anhand der frei verfügbaren
> Schematics selbst zu machen?

Der Codec-Teil wäre noch mit gewissem Aufwand machbar, aber die 
Ethernet-Audio-Bridge zu bauen und zu programmieren, ist sicher einen 
Tick aufwändiger. Man bedenke, dass auch das Netzwerk einen gewissen 
Puffer braucht, um funktionieren zu können. Da kommen schnell mal ein 
paar ms zusammen.  Es kommt auch darauf an, wieviele Audio-Kanäle 
zeitgleich laufen müssen.

P.S.: Wieviel Zeit und Geld hast Du für die Unternehmung eigeplant?

von Alex (Gast)


Lesenswert?

Gab's da nicht mal einen Artikel in der C't mit einer selbstentwickelten 
Platine über die man MP3 streamen konnte....

Wurde damals soweit ich weiß über segor.de vertieben.

von Alex (Gast)


Lesenswert?

... das nannte sich C't-Drahtfunk. Hier der Link:
http://www.segor.de/#/bauteilesaetze/ct-drahtfunk

Allerdings sind anscheinend schon irgendwelche IC's nicht mehr 
lieferbar.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Alex schrieb:
> mit einer selbstentwickelten
> Platine über die man MP3 streamen konnte

Ich glaube nicht, dass MP3 für Musiker die richtige Wahl ist, da hier 
noch mehr Pufferasynchronität dazu kommt, ganz abgesehen vom Klang.

von Noah (Gast)


Lesenswert?

Zefir K. schrieb:
> Damit das verteilte Musizieren funktioniert, müssen die Endgeräte (hier
> Laptops) Audiodaten sehr zeitnah verarbeiten, was mit den aktuellen
> Betriebssystemen immer weniger möglich ist.

Schonmal ein Linux mit Realtime-Kernel und JACK probiert?

http://www.google.de/#q=linux+realtime+audio

von Zefir K. (zefir)


Lesenswert?

Reinhard R. schrieb:
> Zu Audio, insbesondere HiFi, kann ich nicht viel sagen.
>
> Die von dir verlinkten Boards sehen danach aus als hätten sie ein
> relativ simples digitales Interface. Das sollte kein Problem sein sie an
> ein anderes Devboard mit einem µC/µP deiner Wahl anzubinden. Die SW ist
> da sicher der bedeutend aufwendigere Teil.
> Ein selbst entwickeltes Layout ist vermutlich nicht ganz trivial wenn es
> gute akustische Kennwerte aufweisen soll.
>
> Reinhard

Sehe ich auch so, dass die Krux im Audio-Teil liegt. Das müsste in jedem 
Fall von jemand kommen, der entsprechende Erfahrung mit hoch 
qualitativem Audio hat.

Bin mir auch gar nicht sicher, ob ich mir das zu einfach vorstelle. 
Idealerweise würde ich ein kleines Board (wie das Gateworks GW2380 [1]) 
hernehmen und das Audio als mini-PCIe oder Extension-Header-Board 
anbinden. Auf dem Board würde Linux laufen, die existierende SW wäre 
dann mit wenig Portierungsaufwand lauffähig.

Mal schauen, ob ich eine entsprechende Mini-PCIe Audio-Karte finden 
kann.


Gruss
Zefir


[1] http://www.gateworks.com/products/laguna/gw2380.php

von Zefir K. (zefir)


Lesenswert?

Knut Ballhause schrieb:
> Zefir K. schrieb:
>> 3) wie schwer ist es, so ein Board anhand der frei verfügbaren
>> Schematics selbst zu machen?
>
> Der Codec-Teil wäre noch mit gewissem Aufwand machbar, aber die
> Ethernet-Audio-Bridge zu bauen und zu programmieren, ist sicher einen
> Tick aufwändiger. Man bedenke, dass auch das Netzwerk einen gewissen
> Puffer braucht, um funktionieren zu können. Da kommen schnell mal ein
> paar ms zusammen.  Es kommt auch darauf an, wieviele Audio-Kanäle
> zeitgleich laufen müssen.
>
> P.S.: Wieviel Zeit und Geld hast Du für die Unternehmung eigeplant?

Hi,

die SW für die NMP-Anwendung (Network-centric Music Performance) läuft 
schon, die habe ich als Teil einer wissenschaftlichen Arbeit entworfen 
und mit Musikern getestet (siehe [1]). Die Clients senden Mono oder 
Stereospuren in 48kHz und 16 oder 24bit zum Server und bekommen von dort 
ein gemäss einer virtuellen Bühne gemischten Stereo-Mix zurück.

Mit dem Auslagern des Echtzeit-Audiodatenaustausches in ein 
eingebettetes System möchte ich zwei Sachen erreichen: a) den 
Applikationsjitter minimieren, und b) die Abhängigkeit des Systems von 
Audio-Karte, Treiber und OS aufbrechen.


Das Projekt habe ich als Hobby wieder aufgegriffen, kann mir also die 
gewerbliche Anfertigung einer solchen HW nicht leisten. Wenn allerdings 
ein versierter Student das zur Finanzierung seines Studiums angeht, dann 
kann ich evtl. die Campus-Maut sponsern.



Gruss
Zefir

[1] http://www.ibr.cs.tu-bs.de/projects/nmp/

von Zefir K. (zefir)


Lesenswert?

Knut Ballhause schrieb:
> Alex schrieb:
>> mit einer selbstentwickelten
>> Platine über die man MP3 streamen konnte
>
> Ich glaube nicht, dass MP3 für Musiker die richtige Wahl ist, da hier
> noch mehr Pufferasynchronität dazu kommt, ganz abgesehen vom Klang.

MP3 käme bei 256kbit hinsichtlich Qualität schon in Frage, nicht jedoch 
wegen der algorithmischen Verzögerung (mehrere 10ms), da die gesamte 
Anwendung eine Ende-zu-Ende Verzögerung von etwa 30ms hat. Wir versenden 
daher die Audiodaten RAW, da es (Prinzip bedingt) keinen hoch 
qualitativen Audiocodec mit geringer Verarbeitungsverzögerung gibt.

Man kann zwar FLAC oder Wavpack für verlustlose Block-basierte Kodierung 
verwenden, aber da man im Worst-Case-Fall immer mit der RAW-Datenrate 
rechnen muss, ist die erzielbare Datenreduktion von 30-50% nicht 
wirklich hilfreich.


Gruss
Zefir

von Zefir K. (zefir)


Lesenswert?

Noah schrieb:
> Zefir K. schrieb:
>> Damit das verteilte Musizieren funktioniert, müssen die Endgeräte (hier
>> Laptops) Audiodaten sehr zeitnah verarbeiten, was mit den aktuellen
>> Betriebssystemen immer weniger möglich ist.
>
> Schonmal ein Linux mit Realtime-Kernel und JACK probiert?
>
> http://www.google.de/#q=linux+realtime+audio

Hi,

ja, OS/X CoreAudio, Windows mit ASIO und Linux mit ALSA oder JACK und 
RT-Kernel funktionieren mit bestimmten Sound-Karten gut und werden 
momentan auch so verwendet.

Ziel ist jedoch, dass jeder Musiker, der nicht gleichzeitig 
System-Hacker ist, es mit seinem bestehenden Rechner ohne weitere 
Modifikation verwenden kann. Daher: alles Echtzeit-kritische in ein 
eingebettetes System, das über dem PC verwaltet wird (aus Web-Browser 
oder Anwendung).


Gruss
Zefir

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.