GP-1000 Clone mit Raspberry PI Convolution

  • Ersteller cobhc999
  • Erstellt am
cobhc999
cobhc999
Registrierter Benutzer
Zuletzt hier
23.06.17
Registriert
05.06.08
Beiträge
922
Kekse
3.936
Ort
Baden - Schweiz
Hey Leute!

Ich plane gerade mein nächstes Projekt. Habe ja bereits zwei Amps gebaut und jetzt möcht ich etwas Kleineres, Moderneres basteln fürs zu Hause.
Das Ganze stell ich mir so vor:

- Perfect Connection GP-1000 Nachbau als Preamp
- Integrierter Tubescreamer
- Raspberry PI mit Wolfson Audio Card

wolfson-audio-card-Raspberry-Pi.jpg


Der Raspberry soll einerseits Impuls Antworten laden können aus dem Wav-Format. Mit der Soundkarte soll man dann per Klinke oder SPDIF in ein Audiointerface des PCs können. Die Mini-Class-D-Endstufe wär für zu Hause in meine 1x12 gedacht um dort ein wenig drübernudeln zu können.

Meine Frage: Hat jemand Erfahrung mit dem Raspberry PI bzgl. Impuls Antworten/Latenz/Matlab Simulink-Einbindung? Die SIgnalkette stelle ich mir etwa so vor:
Integr. TUbescreamer --> GP1000 Preamp --> Mit Line-Level in AudioIn der Wolfson-Karte --> Simulink für Convolution --> AnalogOut oder SpDif oder Endstufe der Wolfson-Karte.

Da ich auf dem Gebiet noch unbewandert bin, bräucht ich noch ein paar Tipps oder jemand der mich in die richtige RIchtung weisst. Evtl. @Etna ?

Grüsse - Timo
 
Eigenschaft
 
Zuletzt bearbeitet:
Ich weiß nicht genau was Matlab Simulink ist, aber ich bin mir nicht sicher ob die PI leistungsstark genug ist in Echtzeit Faltungen durchzuführungen, selbst FFTs. Latenz wäre da auch meine größte Sorge.
Möchtest du das selbst programmieren oder beeinhaltet Matlab Simulink das schon?
 
Moin!

Matlab und Wolfson schließen sich leider aus. Da bist du auf eine USB-Lösung gestellt. Es sei denn du magst den Treiber selber schreiben. Aber was hast du damit eigentlich vor? Ich verstehe nicht, was du mit dem Pi genau machen möchtest. Für einen Preamp mit integrierten Tube Screamer braucht man keinen Pi. Und zum Recorden ist die Qualität so, dass du gleich dein Klinke Kabel in dein integriertes Mainboard-Interface stecken kannst. Nur für die paar Impulsantworten mit denen du das signal wahrscheinlich falten möchtest lohnt sich der Aufwand kaum. Da ist jedes Delay oder Hall besser.

Am Anfang dachte ich auch: "Hey, cool! Hier habe ich Impulsantworten von irgendwelchen Akustikern, die berühmte Säle nachgemessen haben. Daraus kann ich sicherlich etwas sehr cooles machen!."
Aber am Ende erweist sich das dann doch eher als Spielerei und wird von mir eher am Rechner noch mal ausprobiert mit Simulink mal Musik zusammen zu basteln. Da ist jedes FIR oder IIR Filter besser bestellt und man kommt wesentlich schneller zu Ziel, da man alle Parameter ändern kann und nicht auf die passende Impulsantwort warten muss. Zudem kostet es nicht so viel Rechenleistung.

Meinen Raspberry Pi Thread kennst du scheinbar ja schon. Da habe ich genug zum Thema Latenzen erwähnt. Vielleicht wäre es zielführender sich einen DSP oder anderen uC zu gönnen und das ganze mal in C zu versuchen. Hier gibt es eine kleine Anregung. Vielleicht ist das was für dich.

Wenn du mal genauer beschreibst was du dir davon erhoffst, dann kann ich vielleicht konkreter helfen. Kann aber auch dauern, derzeit ist die Zeit bei mir recht knapp bemessen.

Gruß,
Etna
--- Beiträge wurden zusammengefasst ---
Ich weiß nicht genau was Matlab Simulink ist, aber ich bin mir nicht sicher ob die PI leistungsstark genug ist in Echtzeit Faltungen durchzuführungen, selbst FFTs. Latenz wäre da auch meine größte Sorge.
Möchtest du das selbst programmieren oder beeinhaltet Matlab Simulink das schon?

Veto! Der Pi kann, besonders der Pi2. Wir sind nur zu verwöhnt was das anbelangt. Es ist halt Systemabhängig wie man was wann wieso macht. Ein Cortex A7 als Quadcore ist schon ein krasses stück Rechenleistung. Vor 10 Jahren hätte ich mich gefreut sowas in meinem PC drin zu haben. Dein Handy kann sicherlich auch nicht mehr. ;)
 
Ok, dachte nur weil meine Pi schon bei rasplex rummuckt :)
Vielleicht möchte er die Impulsantworten ja auch für Boxensimulation benutzen?
 
Also gedacht wärs als eine Art Desktop-Amp. Sprich Röhrenzerre mit wählbarer Boxensimulation (Raspberry), damit ich über Klinke oder SPdif auf meine Studiomonitore kann. Die Mini-Endstufe wär noch das i-Tüpfelchen gewesen, damit ich auch mal auf Bedroom-Level über die 1x12 spielen kann. Aber ich dachte mir schon, dass das mit der Boxen-Sim nicht so einfach wird. Die Boxen-Sim könnte ich natürlich auch analog nachbilden, aber ich weiss nicht ob ich damit glücklich würde.
 
Ich weiß ja nicht wie fit du im programmieren und signalverarbeitung bist. Ich hab beispielsweise bei einem Programm mitgeholfen, welches Faltungen durchführen kann. Allerdings haben wir es bisher nicht geschafft höhere Abtastraten als 44,1 kHz und eine höhere Bittiefe als 16bit einzubinden und die Dateien müssen 2 Kanäle haben, geschweige denn alles in Echtzeit zu machen.
Wenn du darin fit bist, sollte das eigentlich gehen
 
Moin!

Ah, so wird ein Schuh draus! Danke, daran hatte ich nie gedacht. Ich finde das Projekt mehr als Interessant. Ich würde aber leider sagen, dass du dich von Simulink verabschieden solltest und versuchen solltest in C zu programmieren. Numerische Faltung ist ja schnell Programmiert. Allerdings müsstest du deinen Impuls als Array bereits vordefinieren. Aber das wäre auch nicht so wild, denke ich.

So schlimm ist es aber bei Gitarrensignalen nicht. Da kommt kaum noch was über 6kHz, sodass ich bei 12kHz schon dicht machen würde, um nicht Störungen aufzunehmen und 12 Bit Wortbreite reichen auch locker aus. Ich würde daher erst einmal Versuche mit einem simplen uC Board anfangen und da die ersten Gehversuche unternehmen, da dies mMn am Einfachsten wäre. Arduino fällt da leider aus, da der ADC zu lahm ist. Vielleicht wäre ein C2000 Piccolo LaunchPad Evalution Kit etwas für dich. Die gibt es so ab 25,- und der ADC im kleinsten Kit schafft 2000kSPS Abtastung und mehr bei 12 Bit Wortbreite. Du musst aber unbedingt einen PreAmp dafür basteln, um die 5 Volt auch aussteuern zu können. Sonst nimmst du außer Rauschen nicht viel auf.

Wenn das gut klappt, kannst du dann die Endstufe nachrüsten. Da reicht meist ein oder zwei OPs aus, so wie es bei dir klingt. Da gibt es ja schon einige Pedale, die eine solche Endstufe besitzen. Daran würde ich mich dann richten. Oder di bedienst dich der TDA Endstufenreihe. Und es gibt auch einige I2C zo S/PDIF Konverter schon fertig auf dem Markt, die du dann anbinden kannst. Vielleicht kannst du auch direkt einen Pin als solchen Ausgang definieren. Ich kenne aber den Codecs nicht so genau. Aber Versuch und Recherche macht kluch. ;)

Als Gehäusetipp für 1HE im Rack würde ich die Suche nach defekten Hubs und Switches aus dem Computerbereich suchen. Oft findet man welche für wenige Euro auch in der Bucht. Ich habe mich erst vor Kurzem mit 5 Gehäusen für 7 Euro eingedeckt. Zwar muss man die Frontplatte immer neu aufbauen, aber man kommt wesentlich günstiger Weg als für Musiker dezidierten Kram.

Halt uns aber auf dem Laufenden! Ist spannender Kram. Juckt mich auch schon in den Fingern es mal zu probieren.

Gruß,
Etna

P.S.: Der Pi ist für schnelle Datenübertragung leider gar nicht gemacht. Die USB Ports und der Ethernet Anschluss teilen sich den gleichen Controller. Da ist der Flaschenhals nicht die CPU, sondern der USB Controller. ;)
Er kann also rechnen, aber oft wird er versucht für ungünstige Sachen genutzt. Aber ich weiß auch nicht wie aufgebläht Rasplex programmiert ist. Vielleicht ist es einfach ineffizient gestaltet.
 
Wow, danke für die tollen Beiträge! Programmierkentnisse habe ich ein wenig, aber nur in C#. Aber ich denke das könnte ich schon adaptieren mit ein wenig Google-Suche.
Wenns sich etabliert, wäre es natürlich auch cool, das Ganze in Pedal-Form zu haben. GLaube da gibt es auch etwas bereits von nem namenhaften Hersteller. Aber kaufen ist ja öde :)

Ich denke ne Faltung mit FFT auf Microcontroller ist ja wirklich nichts Aussergewöhnliches, da müsste sich doch noch einiges im Netz finden lassen. Auf SpDif könnte ich auch verzichten bzw. in einem späteren Schritt noch nachrüsten.

Die Boxensim müsste fast als erstes stehen. Wenn ich ne funktionierende Version hab, ist der Bau des Preamps dann die einfachere Sache. Gehäuse etc. werd ich wohl wieder bei Tube-Town bestellen. Soll ein Mini-Topteil-Format erhalten. Fänd ich für zu Hause aufm Schreibtisch die bessere Variante als ein Rack.

Die 5V-Aussteuerung dürften kein Problem sein, das müsste ich hinbekommen.

Gruss - Timo
 
Zuletzt bearbeitet:
Naja, FFT ist jetzt nicht das Ding, Echtzeit ist da nochmal ein wenig was anderes weil du, soweit ich weiß, alles in sehr kleine Pakete unterteilen musst, die einzeln dann gefaltet werden. Aber das sollte auch auffindbar sein.

Ansonsten müsstest du dann nur noch drauf achten, dass die Impulsantworten auch von Anfang an im richtigen Format vorliegen. Die Redwirez musste ich zum Beispiel erstmal bearbeiten bevor ich die in meinem Programm zum falten benutzen konnte.

Ansonsten ist das wirklich ein sehr interessantes Projekt :great: Halt uns auf dem laufenden
 
Moin!

Ich muss mich korrigieren. Der Arduino Due kann doch so einiges. Mit nem Cortex M3 bei 64MHz Takt geht ja was, zumal der ADC wohl nur durch die ungünstige Programmierung so langsam ist. Zumindest scheint es hier gut gelöst worden zu sein. Er schafft es 100kHz sauber aufzulösen.
Die FFT Library bei Arduino scheint echt gut zu sein. Da gibt es noch andere Libraries die sich lohnt mal anzusehen. Aber das nur nebenbei.

Zum Thema Echtzeit muss ich aber noch einen Kommentar da lassen. Echtzeit klingt immer total wild, bedeutet aber in Wirklichkeit nichts. Man kann ein System vor sich haben, dass in absoluter Echtzeit arbeitet und die korrekte Antwort kommt erst nach zwei Wochen. Und manchmal hat man keine Echtzeit vor sich, auch wenn das Ergebnis nach 2us da ist.

Gruß,
Etna
 
Moin!

Warum sollte das nichts sein? Liest sich doch für dich passend. Ich hätte nicht damit gerechnet, dass du bereit wärst so viel Geld auszugeben, da die "Geiz ist geil"-Mentalität im Lande regiert. ;)
Also, kaufen, ausprobieren und berichten! (Bitte)

Aber lass dir deine Zeit. Anfangs wird man bei TI und AD überfordert mit den ganzen Register-Einträgen. Aber wenn man mit Muße das Datenblatt, Foren und Tutorials durchleuchtet, wird das dann ein Klacks.

Gruß,
Etna
 
Ist für mich etwas schwer zu beurteilen wie performant die verschiedenen Geschichten sind :) Das grafische Programmiertool Audio Weaver sah zuerst vielversprechend aus. Aber ich find dort nicht mal ne Möglichkeit, wie ich externe Daten einbinden könnte.
Hab jetzt mal angefangen die partionelle Faltung in einem Skript in Matlab zu programmieren. Mal schauen, was ich mit dem Matlab Coder dann machen kann. Die 7er Reihe der Blackfins wird leider nicht so elegant von Matlab unterstützt wie die 5er, aber etwas machen lassen müsste sich damit schon.

Naja, 70€ sind vergleichsweise wenig, wenn man die Kosten für den Preamp und restliches Material betrachtet :)

Ich werd am Ball bleiben und mich melden! Wäre halt mehr ein Winterprojekt, aber hier an der Fachhochschule läuft nicht so viel, wenn Semesterferien sind :)

Gruss - Timo
 
Moin!

Ja, das stimmt! Dann genieße die Ferien! Immerhin erklärt es woher du die ganzen tollen und vor allem teuren Matlab Lizenzen her hast. ;)

Aber ja, bei Einzelfertigung geht das schnell ans Geld und besonders wenn man etwas ausprobiert. Von meinem Pi Projekt habe ich jetzt zB auch 4 ungenutzte USB-Soundkarten zuhause liegen.

Gruß,
Etna
 
Super Interesanntes Projekt. Ich hab mich schon öfters gefragt warum es keine DI Boxen mit IR Responseloader gibt. Da wir bei uns im Proberaum das InEar Monitoring der Gitarren über DI Boxen zwischen Amp und Boxen realisieren würde eine DI Box mit IR Loader dem Rechner etwas Linderung verschaffen.
 
Heute ist der Blackfin von Analog Devices angekommen. Habe schon etwas rumprobiert, aber so ein DSP zu programmieren ist echt nicht mit Matlab oder einer Hochsprache zu vergleichen. Die Beispiele zum Audio-Treiber bringen mich aber etwas weiter. Werd jetzt als erstes mal ne Faltung mit ner Impulsantwort versuchen, die der Grösse der Puffer entspricht. Wenn das klappt, werd ich mich dann mit der partionellen Faltung beschäftigen. Aber bis dorthin gehts wohl noch ne Weile :)

DIe Lizenzgeschichte von Analog Devices leuchtet mir auch nicht so ein. Kann ich das DIng nach 90Tagen Evaluationszeit in die Tonne kloppen?! :D
 
Hab mich nochmals an Audio Weaver gesetzt und sehr schnell eine partionelle Faltung hingekriegt. Geht wirklich erstaunlich einfach. Man muss nur die richtigen Blöcke dazu finden =)
Habs bislang nur Native aufem PC ausprobiert. Hab heute noch zusätzliche Infos von DSP-Concept erhalten, jetzt kann ich den Algorithmus mal auf dem Blackfin laufen lassen. Jetzt muss ichs nur noch schaffen, dass man mittels Taster verschiedene IRs durchschalten kann!
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: 1 Benutzer
Also mich hat der Blackfin 70€ gekostet. Dazu kommt noch ein Gehäuse mit Buchsen und Kleinteilen und du hättest deine DI-Box mit IR-Loader. Ich kenne die Specs der Phantompower nicht, könnte aber für den Betrieb des DSPs reichen. Je nach CPU-Auslastung, reicht auch ein günstigerer DSP. Das wird sich noch zeigen.
Ich bezweifle jedoch, dass es eine Möglichkeit gibt, Impulsantworten über ein GUI am PC zum DSP zu schicken, sofern man mit Audio Weaver arbeitet. Zur Zeit muss ich die IRs ins Matlab laden -> Daten in Audio Weaver als Konstante speichern -> Auf Blackfin flashen. Also nicht besondres für Endanwender geeignet.

Man könnte natürlich auch die Entwicklerlizenz lösen für 8000$, dann ginge das evtl schon mit IRs laden vom PC aus :D
 
Zuletzt bearbeitet:

Ähnliche Themen


Unser weiteres Online-Angebot:
Bassic.de · Deejayforum.de · Sequencer.de · Clavio.de · Guitarworld.de · Recording.de

Musiker-Board Logo
Zurück
Oben