Interesse an Howto für Convolution (FIR) PC auf Linux Basis vorhanden?

  • Da ich ja gebeten wurde, meinen Linux Mulitkanal FIR Convolver mal näher vorzustellen, bin ich am überlegen, eine Ausführliche Schritt-für-Schritt Anleitung zum Aufbau so einer Kiste zu erstellen. Das Ganze wäre natürlich mit etwas Arbeit verbunden und würde sich nur lohnen, wenn sich einige finden, die ernsthaftes Interesse an so einem Gerät hätten. Da ich dafür das Ding quasi einmal neu bauen und jeden Schritt dokumentieren müsste, würde ich das nur angehen, wenn sich abzeichnet, dass es praktischen Nutzen hätte.


    Was wäre drin?

    - Debian Linux

    - Multikanal Convolution via BruteFIR

    - Ansteuerung diverser Audio-Interfaces (Voraussetzung Class Compliant USB)

    - Je nach Karte bis zu 10 Ein- und Ausgänge, theoretisch auch mehr

    - Zur Laufzeit umschaltbare Filtersetups

    - Zuspielungsmöglichkeit der Audio-Kanäle über das Netzwerk via NetJack, auch von Windows aus (mache ich so)

    - Lautstärkeregelung, zu der es aber irgend eine Eingabe-Einheit braucht. Ich mache das via IR-Empfänger auf einem Raspberry, der die Befehle dann an den Convolver-PC weitergibt.

    - Am Ende ein Image zum Herunterladen und Installieren


    Sollte sich herausstellen, das aktuell eh 90% der Nutzer, die an so etwas Interesse haben, auf Atmos umschwenken oder es schon nutzen, würde es schwierig werden, da Atmos doch sehr viele Kanäle hat und es auch schwierig ist, an die einzelnen Kanäle heranzukommen.


    Das ist auch bei 5.1/7.1 ein Problem, da ich kein Audio-Interface mit HDMI-Eingang kenne. Ich nutze von daher NetJack, was auf der Windows-Seite einiges an Arbeit erfordert, dann aber fehlerfrei läuft. Evtl. findet sich ja jemand, der das Howto für die Windows-Seite übernehmen würde?

    Eine weitere Möglichkeit bieten HDMI-De-Embedder, man ist dann aber auf Gedeih und Verderb auf die Wandler dieser oft billigen Kisten angewiesen.
    Ist man glücklicher Besitzer einer Vorstufe, die aus dem HDMI die Kanäle rausholt und Hardwareseitig wieder zur Verfügung stellt, hat man eigentlich gewonnen, ist dann aber aber vermutlich schon in einer Qualitätsliga angekommen, in der die Verbesserung durch FIR evtl. schon von der doppelten Wandlung wieder aufgefressen wird.

    Falls jemand eine Vorstufe kennt, die ADAT ausgibt......


    Schreibt mir, was Ihr davon haltet.

  • Mich interessiert das Thema auch.


    Falls jemand eine Vorstufe kennt, die ADAT ausgibt......

    Ich nutze ein Fireface als Audiodevice. Die kann die per Firewire (vom PC) ankommenden Kanäle auch wieder per ADAT ausgeben.

    Man könnte per ADAT Out an den FIR PC senden und dann die Kanäle per ADAT In wieder zurück holen. Fragt sich nur was man dem FIR PC für eine Device verpasst die einen ADAT In/Out hat. Evtl. gibts da ne günstige PCI(e) Karte. Habe noch nicht geschaut.


    Das sind nur einige schnelle Überlegungen. Ich weiß nicht ob das so funktionieren kann, denke aber Atom wird mich schon korrigieren falls nicht. :big_smile:


    Auf jeden Fall eine spannende Sache.


    Sowas https://www.ebay.de/itm/RME-HD…186ef7:g:OiEAAOSwD1BfzPwM oder auch sowas https://gebrauchte-veranstaltu…e/ad-146522-RME+Digiface+ sieht doch gut aus für den FIR PC.


    Gebrauchtes zu kaufen scheint mir die einzige Lösung zu sein günstig weg zu kommen. Eine günstige neue Karte mit ADAT habe ich auf die Schnelle nicht gefunden. Da gibt es scheinbar nur SPDIF bei den ganz günstigen Soundkarten.

  • Hi,

    ich bin daran auch (wieder) interessiert.

    Habe vor vielen Jahren einen Brutefir PC genutzt, analog raus aus der Vorstufe und in den Wandler - Faltung mit Brutefir - analog raus aus dem Wandler in die Endstufen.

    Doppelte Wandlung, ja. Das muss jeder für sich abschätzen ob die Filter einen Mehrwert haben.

    Danach bin ich auf die Convolution von JRiver gewechselt. Da JRiver Bild und Ton kennt wird das Bild entsprechend der Filter automatisch verzögert, damit sind dann auch linearphasige Filter möglich.

    Aber dann...

    Sollte sich herausstellen, das aktuell eh 90% der Nutzer, die an so etwas Interesse haben, auf Atmos umschwenken oder es schon nutzen, würde es schwierig werden, da Atmos doch sehr viele Kanäle hat und es auch schwierig ist, an die einzelnen Kanäle heranzukommen.

    kam Atmos/DTS-X.

    Also geht es für diese Scheiben wieder raus aus der Vorstufe......Faltung momentan mit dem Acourate Convolver. Einen schnellen PC! vorausgesetzt hält sich die Faltungszeit und CPU Belastung in Grenzen, aktuell 9 Kanäle mit 11 Filtern ca. 1,8 sec. Alles ohne 3D Sound (Konzerte) läuft nach wie vor über die Convolution von JRiver, ohne doppelte Wandlung.

    Da Brutefir im Vergleich zum AC viel geringere Latenzen bei gleicher Prozessorauslastung ermöglicht -> zurück zum ersten Satz :-)

  • Hallo,


    danke für dein Angebot. :respect:

    Mich würde das schon interessieren. Insbesondere die Einmessung und Generierung der FIR-Koeffizienten. :sbier:

    Das wäre natürlich erst das zweite Thema, nachdem die eigentliche Arbeit getan ist, die Kiste zu bauen. Da spekuliere ich aber drauf, dass es hier einige User geben wird, die sich da beteiligen. FoLLgoTT evtl.?

    Es gibt hier ein ziemlich gut gemachtes Tutorial zum Thema Acourate und Aktivweichen. So ab der Hälfte finde ich es interessant. Das Ganze Thema Laufzeit-Einstellung ist mit BruteFIR deutlich eleganter zu bewerkstelligen, da man die Laufzeit während des Betriebs für jeden Kanal gemütlich in Sample-Schritten einstellen kann.
    https://audiophilestyle.com/ca…inearization-walkthrough/


    Ich bin da auch sehr dran interessiert! Habe mittlerweile doch eine ganze Menge Surround Musik zusammengetragen und da wäre das eine spannende Option.


    Wie heftig ist mit so einer Lösung die Latenz? Wäre das für Gaming am PC noch nutzbar?

    Ich habe mein Setup so eingestellt, dass die Audio-Latenz exakt der Latenz meines Projektors entspricht. Das sind so um die 100 ms. Ich kann also eine Playstation anschließen und habe das Bild exakt synchron zum Ton. Ich persönlich habe aber Schwierigkeiten, mit 100 ms Latenz zu Zocken, je nach Spiel mehr oder weniger. Mein PJ hat einen Low Latency Modus mit ~ 50 ms, das könnte an sich auch noch drin sein. Das Problem ist hier nicht die Rechenzeit, sondern die Durchlaufzeit der FIR-Koeffizienten. Die kommen mit einer gewissen Einschwingphase vor dem eigentlichen Musiksignal daher, die auch schon Teil der Korrektur ist. Den Convolver an sich bekommt man auf wenige ms Latzen runter.


    Siebenton  Micha ADAT raus aus dem Kodi-Rechner (von dem ich mal ausgehe) und wieder rein in den Linux-Rechner ist natürlich eine Möglichkeit, stimmt. Kostet halt etwas Material, aber klar, der Gebrauchtmarkt gibt einiges her und zum Teil sind die neuen Lösungen auch nicht so schlimm. Es gibt auch noch dieses wirklich spottbillige ADAT-Interface: https://www.thomann.de/de/behringer_ada_8200_ultragain.htm Wie die Qualität der Wandler ist, kann ich allerdings nicht sagen, aber man könnte so ein Ding nutzen, um z.B. eine RME UCX auf mehr als 8 Kanäle zu bringen und die weniger kritischen Kanäle über das Behringer Interface laufen lassen.


    Für den Transport Windows->Linux gibt es aber wie gesagt eine elegante Lösung über das Netzwerk, ist dann ganz ähnlich Dante, nur kostenlos. :) Dante ginge im übrigen ja auch, es gibt Linux-Interfaces.


    @Alle

    Noch mal zum PC: Ich verarbeite auf einem 90 € Mini-ITX Board mit Atom-Prozessor 10 Kanäle mit BruteFIR und hätte noch Luft für min. weitere 10, vermutlich deutlich mehr. Ich verarbeite nämlich im Auto 8 Kanäle mit einem RaspberryPi 3B+. Dort ist allerdings die Latenz im Sekunden-Bereich, was mich für BT-Audio aber nicht stört. Für dieses Projekt werde ich mir also einen 10 Jahre alten Mini-ITX PC mit Atom CPU aus dem Regal schnappen und das Ganze darauf aufbauen. Linux ist es egal, was für ein Rechner druntersteckt, solange die CPU die gleiche Architektur hat, also in unserem Fall X86 (Intel Atom, Celeron, Core, i3-7, etc.). Wenn das Image also mal erstellt ist, wird es auf jedem beliebigen X86-PC einfach booten und die angeschlossene Class-Compliant Soundkarte erkennen, da wird es keine Bastelei geben. Da ich nunbb seit 5 Jahren den Audio-Streamer Aroio der Firma Abacus entwickel und betreue, habe ich auch genug Erfahrung darin, so etwas vernünftig so umzusetzen, dass es dann mit minimalem Support-Aufwand bei vielen Usern läuft. Sonst würde ich so etwas nicht anbieten, da wäre der evtl. Frustfaktor zu groß.


    Teurer wird die Soundkarte, aber auch da gibt's einiges. Leider haben bislang nur die wenigsten RME Karten den Class Compliant Modus an Bord, ich verwende eine RME UCX.

    Ganz witzig und durchaus sehr brauchbar ist dieses kleine Ding (hab den Vorgänger davon im Auto): https://www.thomann.de/de/esi_…1YJHhRkLFO8BoCuVgQAvD_BwE

    Da gibt's für richtig wenig Geld ein Interface, welches schon wirklich was kann.

  • Hi


    Minidsp hat den USBstreamer, welcher je nach Firmware Adat in/out hat. Falls euch das helfen würde....


    Nutze übrigens auch Acourate im Heimkino. Mangels Lust auf extra Faltrechner mit JRiver und auf Dauer dann eben ohne Atmos. Ich mag keine Receiver/Vorstufen.... können viel zu viel was ich nicht brauche ;-)

  • FoLLgoTT evtl.?

    Ich kann ggf. etwas beitragen. Ich hatte ja vor ein paar Jahren selbst einen Falt-PC für meine Musikanlage gebaut und den kräftig optimiert, so dass er innerhalb von 14 s bootet und ohne Monitor ansteuerbar ist. Ziel war eine Blackbox, die ich mit dem Smartphone oder Tablet mit Musik befeuern kann. :)


    Das Besondere an dem Teil ist wohl die Lautstärkeregelung in 64-Bit-Fließkomma mit einer Fernbedienung. Die ganze Verarbeitungskette ist über Pipes aufgebaut. Der Player empfängt den Stream über UPnP, sendet seine Daten über die Pipe an eine Script-Datei, die auf 64 Bit Fließkomma konvertiert. Damit wird die Frequenzweiche über BruteFIR angesteuert. Weiterhin befindet sich die Lautstärkeregelung als Multiplikator in der Kette, der auf einen Wert in einer bestimmten Datei lauscht, und am Ende sitzt die Konvertierung auf 24 Bit mit Dithering mittels SOX. Die Fernbedienung aktualisiert über ein Script den Wert in der Lautstärkedatei, was sofort auf die Audiodaten angewendet wird.


    Filter und Verzögerungen sind derzeit fest eingestellt. Es gibt extra Filter für die Raumeinmessung, die ich dann über Netzwerk dort hinschieben kann. Das ist aber nicht wirklich automatisiert.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!