EschBerlin
Posts: 7
Joined: Fri Feb 09, 2018 11:21 am
Contact: Website

USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Fri Feb 09, 2018 11:55 am

Hallo zusammen,

der Raspberry Pi hat einen I2S Ausgang (Header Pin 12, 35, 40). Audio DAC´s, z.B. der Pi-DAC, nutzen dieses Interface für highres Audio (24 Bit, 192 kHz...).

Meine Idee ist, den Pi nicht als Audioplayer zu verwenden (z.B. mit volumio), sondern ihn via USB mit einem Windows Rechner zu verbinden. Ein Player auf dem Windows Rechner decodiert die highres Audio Files (Flac...) und sendet den Stream an den pi. Der Pi muss dazu die Audio Class 2.0 bedienen (isochroner Transfer). Damit das Ganze funktioniert ist auf der Windows-Seite ein Audio Treiber nötig, der ebenfalls auf der Audio Class 2.0 aufsetzt. Der Pi soll die Audiodaten dann via I2S ausgeben.

Ich suche für diese Projekt Unterstützung.


Ich bin weder mit den Cortex Cores vertraut, noch reichen meine Linux, Phyton oder C Kenntnisse für so ein Projekt.
Meine Expertise liegt im Bereich highend Audio, Data Converters (z.B. DAC´s), Assemblerprogrammierung (ATMegas...) und allgem. Hardwaredesign.

Würde mich freuen, wenn hier ein gemeinsames Projekt entsteht!
Eine Honorierung ist vorgesehen.

Herzliche Grüße aus Berlin, Hans-Jürgen

trnt
Posts: 36
Joined: Fri Oct 20, 2017 10:56 am

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Sat Feb 10, 2018 9:49 am

Ich verstehe das nicht. Was willst du jetzt genau wissen?

User avatar
mline
Posts: 1319
Joined: Sun Jan 27, 2013 1:47 pm
Location: Austria, Vienna

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Sat Feb 10, 2018 12:30 pm

Ist mit "Audio Class 2.0" die USB Audio Device Class gemeint?
http://www.usb.org/developers/docs/devclass_docs/
<~~>

smartifahrer
Posts: 895
Joined: Sat Feb 13, 2016 8:10 am

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 12, 2018 7:19 am

Was willst du mit I2S dan anstellen? Der Pi liefert ja nur ein 3.3V SIgnal das auch nicht sehr belastbar ist. Zum Pi kommt dann vermutlich noch ein Pegelwander dazu. Lohnt sich das dann noch?
Ich könnte mir das mit dem Pi Zero vorstellen. Der kann sich via USB (OTG Mode) dem PC gegen über als USB Audio Gerät ausgeben. I2S hat er auch. Mit dem PI 2 & 3 geht das nicht!!

ghans
Posts: 7876
Joined: Mon Dec 12, 2011 8:30 pm
Location: Germany

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 12, 2018 9:02 am

Praktisch betrachtet, worin würde sich der Pi in deinem Projekt von einer USB Soundkarte unterscheiden ?

ghans
• Don't like the board ? Missing features ? Change to the prosilver theme ! You can find it in your settings.
• Don't like to search the forum BEFORE posting 'cos it's useless ? Try googling : yoursearchtermshere site:raspberrypi.org

User avatar
mline
Posts: 1319
Joined: Sun Jan 27, 2013 1:47 pm
Location: Austria, Vienna

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 12, 2018 9:30 am

smartifahrer wrote:
Mon Feb 12, 2018 7:19 am
Der Pi liefert ja nur ein 3.3V SIgnal das auch nicht sehr belastbar ist. Zum Pi kommt dann vermutlich noch ein Pegelwander dazu. Lohnt sich das dann noch?
Was hat denn das eine mit dem anderen zu tun?! Gibt auch haufenweise I2S Chips die mit 3.3V laufen und/oder 5V tolerant sind. Pegelwandler ist in den meisten Fällen nicht notwendig.
smartifahrer wrote:
Mon Feb 12, 2018 7:19 am
Mit dem PI 2 & 3 geht das nicht!!
Natürlich können alle RPi I2S.
Soweit ich weiß, arbeiten zum Beispiel alle HifiBerry HATs mit I2S.
<~~>

smartifahrer
Posts: 895
Joined: Sat Feb 13, 2016 8:10 am

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 12, 2018 12:32 pm

Mit dem PI 2 & 3 geht das nicht!!
bezog sich auf USB-OTG!
Der Pi ist aber nicht 5V tolerant. Es sollte auch nur ein Hinweis sein dies zu beachten.
Ich habe doch geschrieben das der Zero I2S hat.

EschBerlin
Posts: 7
Joined: Fri Feb 09, 2018 11:21 am
Contact: Website

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Sun Feb 18, 2018 5:12 pm

Hallo & Dankeschön für die bisherigen Posts!

Die von mir gewünschte Bridge verhält sich ähnlich wie eine Soundcard - zumindest aus Sicht des (Windows) Rechners. Also von mir aus eine Soundcard mit I2S statt Analogausgang und nur für den Wiedergabebetrieb.

Wichtig wäre die Fähigkeit mindestens 24 Bit, 192 kHz zu unterstützen, besser 32 Bit 384 kHz.

Die eigentliche Herausforderung ist das Zusammenspiel mit einem Windows Rechner und damit auch die Unterstützung des isochronen Datentransfers bei hohen Datenraten.

Die üblichen USB to I2S Briges (z.B. Silicon Lab, XMOS...) bedeuten einen Zusatzaufwand für ein System, das Musik eben auch via USB von einem Rechner abspielen soll, wenn schon ein Netzwerk- und USB-Audioplayer auf Raspberry Basis (volumio...) verwendet wird. Und es würde eine weitere USB-Schnittstellle sowie die Hardware zur Umschaltung des I2S Busses entfallen.

Wenn es ein Raspberry Soundcard Projekt gibt, wäre das sicher ein recht geeigneter Einstieg.

User avatar
mline
Posts: 1319
Joined: Sun Jan 27, 2013 1:47 pm
Location: Austria, Vienna

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Sun Feb 18, 2018 8:52 pm

Nun, es gibt eine Möglichkeit eine Raspberry Pi (nur A bzw A+, Zero und Zero W) als USB-Audio-Gerät zu verwenden. Dazu kann man die Linux Gadget API verwenden.
http://www.linux-usb.org/gadget/
Ist allerdings experimentell und nicht wirklich gut Dokumentiert. Darum wird dir zumindest hier im deutschen Forum auch kaum jemand helfen können (vermutlich aber auch nicht in den anderen Foren).
EschBerlin wrote:
Sun Feb 18, 2018 5:12 pm
Wichtig wäre die Fähigkeit mindestens 24 Bit, 192 kHz zu unterstützen, besser 32 Bit 384 kHz.
Du traust einer Raspberry Pi ganz schön viel zu... Ist dir klar, dass die Pi über keinen DSP verfügt? Also alles was du so soundmässig machen willst läuft über die CPU.
EschBerlin wrote:
Sun Feb 18, 2018 5:12 pm
Wenn es ein Raspberry Soundcard Projekt gibt, wäre das sicher ein recht geeigneter Einstieg.
Ich hab hier noch kein Projekt in dieser Richtung gesehen. Sorry.
EschBerlin wrote:
Fri Feb 09, 2018 11:55 am
Meine Idee ist, den Pi nicht als Audioplayer zu verwenden (z.B. mit volumio), sondern ihn via USB mit einem Windows Rechner zu verbinden. Ein Player auf dem Windows Rechner decodiert die highres Audio Files (Flac...) und sendet den Stream an den pi. Der Pi muss dazu die Audio Class 2.0 bedienen (isochroner Transfer). Damit das Ganze funktioniert ist auf der Windows-Seite ein Audio Treiber nötig, der ebenfalls auf der Audio Class 2.0 aufsetzt. Der Pi soll die Audiodaten dann via I2S ausgeben.
Hab das bis jetzt sowieso nicht ganz verstanden... Wozu überhaupt ne Pi dafür verwenden und nicht gleich nen I2S converter am PC nutzen?! Bzw. kannst du dir den Converter auch gleich sparen und direkt ne USB-Soundkarte besorgen. Dann brauchst du nicht basteln und dich auch nicht mit Treiber programmieren rumärgern.
<~~>

ghans
Posts: 7876
Joined: Mon Dec 12, 2011 8:30 pm
Location: Germany

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 19, 2018 8:39 am

Geht es darum, verschiedene I2S Soundchips als Windows-Soundkarte zu testen ?

ghans
• Don't like the board ? Missing features ? Change to the prosilver theme ! You can find it in your settings.
• Don't like to search the forum BEFORE posting 'cos it's useless ? Try googling : yoursearchtermshere site:raspberrypi.org

EschBerlin
Posts: 7
Joined: Fri Feb 09, 2018 11:21 am
Contact: Website

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 19, 2018 11:16 am

Ist meine Idee so schwer zu verstehen? Ich probiere es mal so:

- auf einem (Windows) PC läuft ein Musicplayer (VLC oder von mir aus auch Windows Mediaplayer)
- abgespielt werden sollen auch Highres Audiofiles (FLAC, 24 oder 32 Bit, Samplingraten bis 192 oder 384 kHz)
- als Wiedergabegerät wird auf dem PC ein USB-DAC eingerichtet (Treiber, USB Audio Class 2.0)
- der über USB mit dem PC verbundene Raspberry empfängt den isochronen Stream und wandelt ihn in I2S um

Das ist schom alles!

Hintergrund:
Ich bin dabei, für ein Audiosystem (Preamp...) einen highendigen DAC mit allem was dazu nötig ist (z.B. galvanische Trennung der Schnittstelle, präzise rauscharme Stromversorgung, jitterärmste Masterclockgererierung, symm. Ausgang etc.) zu entwickeln. Zusammen mit dem Raspberry ergibt das dann einen "Festplatten"-Player, einen netzwerkfähigen Streamer, einen USB DAC (das ist der Part hier), der auch über SPDIF verfügt. Also eine universelle Ergänzung eines hochwertigen Preamps um die Möglichkeiten der digitalen Audiowelt. Das geht über die DAC Heads für den Pi also deutlich hinaus.

Es geht also nicht darum eine Soundkarte an den Pi anzuschließen sondern darum, ihm Soundcard Funktionalität zu geben.

ghans
Posts: 7876
Joined: Mon Dec 12, 2011 8:30 pm
Location: Germany

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 19, 2018 12:14 pm

Du brauchst jemanden

- dessen Muttersprache C ist und als Hobby Kerneltreiber schreibt
- der den Linux-Kernel im Schlaf kompilieren kann
- der Erfahrung mit dem alten USB-Gadget framework und der heutigen ConfigFS Infrastruktur hat

Hier gibt es wohl kaum jemanden auf den das zutrifft. Ich würde mich mal auf den Mailinglisten von kernel.org umhören.

ghans
• Don't like the board ? Missing features ? Change to the prosilver theme ! You can find it in your settings.
• Don't like to search the forum BEFORE posting 'cos it's useless ? Try googling : yoursearchtermshere site:raspberrypi.org

trnt
Posts: 36
Joined: Fri Oct 20, 2017 10:56 am

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 19, 2018 7:03 pm

EschBerlin wrote:
Mon Feb 19, 2018 11:16 am
Ist meine Idee so schwer zu verstehen? Ich probiere es mal so:

- auf einem (Windows) PC läuft ein Musicplayer (VLC oder von mir aus auch Windows Mediaplayer)
- abgespielt werden sollen auch Highres Audiofiles (FLAC, 24 oder 32 Bit, Samplingraten bis 192 oder 384 kHz)
- als Wiedergabegerät wird auf dem PC ein USB-DAC eingerichtet (Treiber, USB Audio Class 2.0)
- der über USB mit dem PC verbundene Raspberry empfängt den isochronen Stream und wandelt ihn in I2S um

Das ist schom alles!

Hintergrund:
Ich bin dabei, für ein Audiosystem (Preamp...) einen highendigen DAC mit allem was dazu nötig ist (z.B. galvanische Trennung der Schnittstelle, präzise rauscharme Stromversorgung, jitterärmste Masterclockgererierung, symm. Ausgang etc.) zu entwickeln. Zusammen mit dem Raspberry ergibt das dann einen "Festplatten"-Player, einen netzwerkfähigen Streamer, einen USB DAC (das ist der Part hier), der auch über SPDIF verfügt. Also eine universelle Ergänzung eines hochwertigen Preamps um die Möglichkeiten der digitalen Audiowelt. Das geht über die DAC Heads für den Pi also deutlich hinaus.

Es geht also nicht darum eine Soundkarte an den Pi anzuschließen sondern darum, ihm Soundcard Funktionalität zu geben.
und warum in aller welt brauchst du das? genügt es dir nicht, dass man auf dem windows computer, sounds abspielen kann? oder willst du experimentieren?

User avatar
mline
Posts: 1319
Joined: Sun Jan 27, 2013 1:47 pm
Location: Austria, Vienna

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 19, 2018 7:48 pm

trnt wrote:
Mon Feb 19, 2018 7:03 pm
und warum in aller welt brauchst du das? genügt es dir nicht, dass man auf dem windows computer, sounds abspielen kann? oder willst du experimentieren?
Er will sich halt so eine eierlegende Wollmilchsau bauen.
Mich hat es auch immer angekotzt, dass Hersteller nicht das volle Potenzial der von ihnen entwickelten Hardware nutzen... Allerdings glaube ich, dass die Raspberry Pi (vor allem diese, welche USB Audio Gadget können) und der ihr zur Verfügung stehenden Resourcen und Features nicht für dieses Projekt ausreichen.

Wäre wohl besser ein dediziertes Audiointerface einzubauen und alle Kanäle über einen Mixer zum Verstärker zu führen. Also im Prinzip genau so wie es die Hersteller von Verstärkern und Receivern machen (Input/Source control).
<~~>

trnt
Posts: 36
Joined: Fri Oct 20, 2017 10:56 am

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Tue Feb 20, 2018 5:51 am

ich kenne mich zwar ein bisschen mit dem thema aus, da ich aber i2s und seine features nicht kenne, würde ich mich dann ein bisschen besser auskennen. meiner meinung nach nützt man etwas ja nur, wenn man es nützlich findet und das muss also einen nutzen haben. ok, ich schweife ab. die frage ist: hat der raspberry pi überhaupt die entsprechende soundwiedergabe? oder wo willst du die sounds abspielen?

smartifahrer
Posts: 895
Joined: Sat Feb 13, 2016 8:10 am

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Tue Feb 20, 2018 11:14 am

Es gibt doch HATs mit digital Ausgängen (Analog bzw Optisch). Was verwenden die für ein Format für die Übertragung? Ich vermute aber was anderes als i2s oder?
EschBerlin, hast du schon mal google befragt? Suche nach "raspberry pi usb otg to i2s bridge" erster Treffer:
http://www.diyaudio.com/forums/digital- ... ridge.html
Vielleicht hilft dir der Link weiter.

EschBerlin
Posts: 7
Joined: Fri Feb 09, 2018 11:21 am
Contact: Website

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Sun Feb 25, 2018 1:37 pm

Wow, ich freue mich über die vielen und interessanten Hinweise, recht herzlichen Dank euch allen!

Hintergrund meiner Idee:
Von hochwertigen Audiokomponenten wird heute erwartet, dass sie Anschlussmöglichkeiten für analoge und digitale Quellen bieten. Einerseits ist Vinyl wieder in (eben ein physischer Träger den man sehen und zelebrieren kann), andererseits ist Streaming und Musikserver-Funktionalität gefragt. Das alles in Highres Qualität (min. 24 Bit). Ich entwickle in diesem Bereich und möchte hier neue Wege gehen (z.B. den Raspberry einbinden).

Ansatz:
Bei meinen Recherchen bin ich u.a. auf http://www.creative-technologies.de/lin ... 2s-bridge/ gestoßen. Hier wird ein STM32F746 Mikrocontroller eingesetzt. Von der Rechenleistung würde ebenso der Raspberry passen.

Verwertung und Benefit für die Makerszene:
Der von mir bereits in der Entwicklung befindliche I2S DAC stellt eine highendige Erweiterung für den Raspberry dar (aufwendiger und besser als die verfügbaren DAC-Heads) und soll entsprechend angeboten werden.

Nun wurde durch die Posts jedoch mein Eindruck verstärkt, dass die USB to I2S Bridge doch ein größeres Projekt ist.

smartifahrer
Posts: 895
Joined: Sat Feb 13, 2016 8:10 am

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Sun Feb 25, 2018 6:02 pm

hochwertigen Audiokomponenten
,
Highres Qualität (min. 24 Bit)
und dann Streaming und Musikserver-Funktionalität. Lohnt sich da der Aufwand? Insbesondere da hier wohl fast nur Verlustbehaftete Formate eingesetzt werden.
Wie stellst du dir im Umfeld hochwertiger Audiokomponenten die Einbindung/Verwendung des Raspberry Pi vor? Also jenseits der existierenden Hats und anderer Audio Hardware.

trnt
Posts: 36
Joined: Fri Oct 20, 2017 10:56 am

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Sun Feb 25, 2018 7:43 pm

ein musikserver also! sowie man minecraft ohne server spielen kann und ohne server drucken kann, kann man ohne server musik abspielen. aber was rede ich da? ich baue ja auch bei mir zuhause einen server, obwohl mir jeder sagt, dass das unnötig ist. wie man so etwas mit einem raspberry pi baut, weiß ich leider nicht. damit ist meine arbeit in diesem forum wohl getan. Danke, dass es jetzt auch der letzte idiot (Ich) gecheckt hat!

EschBerlin
Posts: 7
Joined: Fri Feb 09, 2018 11:21 am
Contact: Website

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Mon Feb 26, 2018 2:19 pm

Lohnt sich der Aufwand?
Klares JA!
Die heute im highres Audio Bereich üblichen Formate (FLAC...) stellen unkomprimierte Audiodaten mit 24 Bit und Samplingraten bis zu 384 kHz zur Verfügung (hd-tracks, highresaudio Qobuz...)
Dieses Daten sollen fehlerfrei über alle geeigneten digitalen Kanäle (USB, LAN, WLAN - nicht Bluetooth) übertragen und dann (im Raspberry) aufbereitet und über I2S ausgegeben werden. Ein Teil davon LAN, WLAN USB Speichermedium deckt z.B. volumio ab.
Der Umgang mit den I2S Daten bestimmt dann im Wesentlichen die Audioqualität: galvanische Trennung und Pegelwandelung der I2S Schnittstelle, separate rauscharme Stromversorgung, Erzeugung eines jitterfreien Masterclocks (der gehört nicht zum I2S Standard) sowie DA-Wandlung, Filterung sowohl in der digitalen als auch in der analogen Domäne, symm. Ausgang...

flakeshake
Posts: 11
Joined: Thu Jun 28, 2012 6:35 pm
Contact: Website

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Tue Feb 27, 2018 8:05 am

Interessantes Projekt. Schon mal darüber nachgedacht einen Prototypen in Python zu schreiben ?
Vielleicht wäre das Compute Module auch eine nähere Betrachtung wert.
Model B Rev. 1 with 256 MB RAM running Raspbian

EschBerlin
Posts: 7
Joined: Fri Feb 09, 2018 11:21 am
Contact: Website

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Tue Feb 27, 2018 3:22 pm

Hi flakeshake,

ja, über eine Programmierung einer USB / I2S Bridge also auch einer SPDIF / I2S Bridge in Python habe ich nachgedacht - daher ja auch mein Wunsch nach Unterstützung. Kleiner Projekte in C# habe ich realisiert, ansonsten ist Assembler und ATmega meine Welt, wenn es nicht um Analogtechnik geht.

Und ja, es müsste in Python eigentlich klappen - die Geschwindigkeitsanforderungen sind zu erfüllen und harte Echtzeit ist auch nicht gefragt.

Da brauch ich nur noch die nötige Unterstützung!

Herzliche Grüße, Hans-Jürgen

EschBerlin
Posts: 7
Joined: Fri Feb 09, 2018 11:21 am
Contact: Website

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Tue Feb 27, 2018 3:24 pm

... wie ein "o" zuviel den Sinn entstellen kann! Es muss natürlich ..."USB / I2S Bridge als auch einer SPDIF / I2S Bridge"... heißen. Sorry

trnt
Posts: 36
Joined: Fri Oct 20, 2017 10:56 am

Re: USB Audio Class 2 to I2S bridge, Windows Driver - Unterstützung gesucht

Tue Feb 27, 2018 7:20 pm

xD das ist natürlich dasselbe (ist es natürlich nicht) naja, dann viel spaß dabei, jemand passenden zu suchen.

Return to “Deutsch”