Wie viel Rechenpower braucht man fuer Audio

Gast #1140796
Lesenswert?

Hallo,

ich baue mir grade einen Vorverstärker. SPDIFF & Analog rein und SPDIFF 
& Analog raus. Dazu kommt noch ein Prozessor (AVR) für LEDs, Tasten, RC5 
Encoder. Das ganze ist nichts wildes und damit habe ich auch keine 
Probleme.

Jetzt hatte ich aber die Idee das interne digitale Signal durch meinen 
Prozessor zu leiten, um das Signal auf einer SD-Karte zuspeichern und 
auch abspielen zu können. RAW, FLAC, oder MP3 --> kommt auf die 
benötigte Rechenleistung an.
Einen Filter würde ich auch gerne gleich mit umsetzten.

Mit DSPs habe ich noch nie was gemacht, habe aber gerade Erfahrung mit 
einem ARM7S256 vom Atmel gesammelt.

Jetzt stellt sich nur die Frage würde der für so eine Aufgabe reichen?
Wenn Nein: Für welchen Teil meiner Wünsche wäre der ARM7 noch 
einsetzbar?
Dirk
Gast #1140973
Lesenswert?

Hi,

wenn WAV geht ist das doch schon mal eine Aussage.
Der Prozessor soll übrigens nicht alles gleichzeitig machen.
Nur eine der Funktionen und die System Steuerung (LEDs ...).

Das Aufnehmen ist nett wenn es geht, WAV würde mir reichen. Ich will ja 
nicht 14 Tage lang am Stück aufnehmen, 1GB reicht auch schon für einige 
Minuten im WAV Format.
Könnte OGG funktionieren?

Abspielen soll ja gehen, wie ich hier und da lesen kann.

Was mich wirklich interessiert ist ob der ARM7 reicht um das Signal zu 
Filtern. Vielleicht sogar eine Frequenzweiche?

Dirk
Persönliche Seite #1141460
Lesenswert?

Dirk wrote:
> Könnte OGG funktionieren?

Ich würde schätzen, dass man hierzu schon einen Prozessor mit DSP 
Funktionalität braucht. Samtliche Codierverfahren sind ziemlich 
rechenintensiv. Einige sind optimiert auf möglichst einfaches Dekodieren 
(wenn ich mich recht erinnere ist FLAC hier zu nennen). OGG liegt m.W. 
bereits als Fixkommaimplementierung vor, kannst es ja mal probieren und 
berichten. Was ich definitiv sagen kann ist, dass MP3 dekodieren und 
codieren gleichzeitig (Back-to-Back) auf einem Single-Core Blackfin 
geht (Fixkomma).
Gast #1141558
Lesenswert?

Für die Filter kannst du die benötigte Rechenleistung relativ einfach 
vorherbestimmen. Schau dir mal die für FIR- und IIR-Filter benötigten 
Rechenoperation und Speicherbedarf für die Ringpuffer an.

Mit Assembler, Festkommaarithmetik und 32 bit "Auflösung" (ist 
erforderlich) kriegst du bei Stereo und vorgegebener Samplingfrequenz 
ein Filter welcher Ordnung hin?

Kannst du also vergessen.
Admin Persönliche Seite #1141588
Lesenswert?

Würde ich so pauschal nicht sagen. Der Prozessor hat nicht viel zu tun 
wenn der Transfer ADC -> RAM -> DAC über DMA läuft, man hat also ein 
paar hundert Takte pro Sample zur Verfügung. Und der ARM7TDMI hat z.B. 
Befehle für signed 32x32 MAC. Damit sollte sich also schon was anfangen 
lassen.

OGG funktioniert genausowenig wie MP3, ist von der Komplexität her 
ähnlich (eher aufwändiger).
Gast #1141652
Lesenswert?

Den ADC will ich nicht benutzen, ich habe die Signale doch schon Digital 
im System. Der ARM7 hat eine I²S Schnittstelle. Den DMA muss ich 
benutzen sonst macht der ARM7 nur noch an der Ausgabe der Daten rum und 
hat nicht mal mehr Zeit für mein kleines Steuerprogramm. Zum Rechen 
würde der dann erstrecht nicht mehr kommen.

OK MP3 und Konsorten kann ich zum Aufnehmen also vergessen.
Abspielen geht, haben einige Projekte bewiesen.

Aber was ist mit den Filtern? Vergessen oder habe ich gute Karten das 
zum laufen zu bringen?

Gerhard hast Du ein Paar Quellen über die Rechenoperationen und dem 
Speicherbedarf von Filtern?
Ich bin glaube ich zu Blind, ich finde nichts.
Gast #1142026
Lesenswert?

Ah ein Lichtblick!
Nun ich denke ich komme in Stereo rein (also 2 Signale rein) und gehe 
mit 1-2 * Stereo raus (also 2-4 Signale raus). Was auch gut wäre ist 
noch ein Subwoffer Ausgang (+1 Out Signal mehr).

Das ich mehr brauche kann ich mir nicht vorstellen, soll ja kein Dolby 
7.1 System werden. Das soll nur eine Frequenzweiche werden mit der 
Möglichkeit das Signal zu verbiegen  oder wenn das nicht machbar ist 
dann wenigstens ein Filter ( nur ab X Hz das Signal Ausgeben).

Die Filter???? Nun ich denke das da Filter in der Qualität einer Analog 
Weiche reichen würden. Klar wäre es gut wenn mann die wildesten Filter 
machen könnte, aber das tut nicht not.
Gast #1142057
Lesenswert?

Für MP3 würde ich Dir den AVR32 empfehlen. Hat sogar einen DSP drauf. 
Zusätzlich bei Bedarf: kostenlosen TCP/IP/ USB / Stack und eine 
kostenlose DSP Library, DMA, und wenn willst auch nen RTOS. USB Host 
dann klemmst einfach ne SD Karte dran und gut ist. Und die Eclipse IDE 
nicht vergessen mit kostenlosem GCC. Ich denke 20MHz würden für MP3 
ausreichen...
Gast #1142580
Lesenswert?

Der AVR32 hat keinen USB-Host. SD-Karten kann man aber anschließen. Er 
hat auch keinen DSP on chip, sondern vielmehr einige DPS-ähnliche 
Befehle in seinem Befehlssatz.

Für einfache Audio-Anwendungen könnte er vermutlich ausreichend schnell 
rechnen.

Um so gut wie gute Analog-Filter zu werden, braucht man einiges an 
Rechenleistung. Wenn das Signal nicht ohnehin schon digital vorliegt, 
macht es meistens keinen Sinn, digital zu filtern. Bedenke auch die 
Lautstärkestellung. Bei einer Drei-Kanal-Stereo-Frequenzweiche 
bräuchtest du ein sechsfach-Poti. Digitale Lautstärkestellung ist so 
eine Sache, da verlustbehaftet.
Gast #1143354
Lesenswert?

> Aber was ist mit den Filtern? Vergessen oder habe ich gute Karten
> das zum laufen zu bringen?

Ich wuerde lieber einen FPGA nehmen. Filtern an sich ist nicht so
aufwendig, weder fuer einen DSP noch fuer einen FPGA. Aber du willst
ja eine ganze Menge Filter mit moeglichst hoher Ordnung gleichzeitig
laufen lassen. Da scheint mir ein FPGA die sauberste Loesung zu sein
weil da die Gleichzeitigkeit systemimanent ist.

Olaf
Gast #1144021
Lesenswert?

Hi,

danke für die Antworten.
Ich werde entweder einen Arm7 nehmen, weil ich den halt gerade erst 
kennengelernt hatte und für das was ich machen will reichen wird.
Oder nur einen AVR und die SD card vergessen.

Für die Filter habe ich eine Super Alternative gefunden, es gibt doch 
die TAS3103A und die kosten nicht viel.

DSPs wären zwar auch gut aber da habe ich einfach null Erfahrung.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren