Hallo, was meint Ihr zu der Umsetzbarkeit der folgenden Idee. Es gibt einige Projekte bei denen die PWM Einheit eines MCUs zur Tonausgabe genutzt wird. Da die Geschwindigkeit der PWM meist identisch zum Takt des Microcontrollers ist muss hierfür die Qualität stark reduziert werden. Also z.B. 8Bit Amplitudenauflösung und 44,1kHz Abtastrate entspricht ungefähr einem Takt von 11,2MHz. Nun verwenden ja z.B. viele CD-Player "1-Bit DACs". Wenn ich es richtig verstehe wird hierbei aus dem PCM Signal eine Bitfolge generiert welche dann z.B. mit etwa 2MHz ausgegeben und analog Tiefpassgefiltert wird. Die Qualität ist dann identisch zu den 16bit/44,1kHz einer CD - wenn nicht besser da dieses Wandlerprinzip Vorteile gegenüber einem "normalen" DAC hat. Was spräche also prinzipiell dagegen eine solche Sequenz vorab zu berechnen (Ich vermute für eine Liveberechnung ist ein typischer 8bit MCU nicht leistungsfähig genug), auf einer SD-Karte abzulegen und dann mittels eines Timers und ISR auszugeben? Ich freue mich auf eure Meinung:)
Gilbert F schrieb: > was meint Ihr zu der Umsetzbarkeit der folgenden Idee. Es gibt einige > Projekte bei denen die PWM Einheit eines MCUs zur Tonausgabe genutzt > wird. Das ist nix neues. Man kann auch kurze Wavs im uC-Flash ablegen und per PWM ausgeben. Man braucht aber ein halbwegs gutes Filter dahinter, wenn die NF-Quali halbwegs gut sein soll.
Gilbert F schrieb: > Nun verwenden ja z.B. viele CD-Player "1-Bit DACs". Wenn ich es richtig > verstehe wird hierbei aus dem PCM Signal eine Bitfolge generiert welche > dann z.B. mit etwa 2MHz ausgegeben und analog Tiefpassgefiltert wird. http://de.wikipedia.org/wiki/Pulsdichtemodulation > Was spräche also prinzipiell dagegen eine solche Sequenz vorab zu > berechnen (Ich vermute für eine Liveberechnung ist ein typischer 8bit > MCU nicht leistungsfähig genug), auf einer SD-Karte abzulegen und dann > mittels eines Timers und ISR auszugeben? Bei 8-Bit-PCM -> PWM brauchst du nur ein Byte pro Sample. Bei PDM musst du die Einzel-Bits mit den vollen 2Mbit/s von der SD-Karte zum I/O-Pin schaufeln.
:
Bearbeitet durch User
Gilbert F schrieb: > Nun verwenden ja z.B. viele CD-Player "1-Bit DACs". Du meinst das ADPCM Signal? Oder DSD? Ich sehe nicht, wo man da was sparen kann. Insbesondere müsste das Signal ja noch konvertriert werden. Das Einfachste ist es ein Signal direkt als PCM zu speichern und abzuspielen - das ist dann sozusagen optimiertes PWM, nämlich in Form von Sigma Delta Modulation.
Hallo, kann eure Einwände nicht so ganz nachvollziehen. Sicherlich wird dem MCU mehr abverlangt, da nicht einmal pro 1/44100 sec ein neuer PWM Wert geschrieben werden muss, sondern eine Sequenz mit 2MBit ausgegeben werden muss - das ist auch mein Hauptproblem - schaffe ich das, z.B. mit einem MSP430 bei 16MHz. Aber der Vorteil wäre, wenn ich keinen Denkfehler haber, das die Qualität den 16Bit/44.1kHz einer CD entspricht und nicht 8Bit/44.1kHz wie es mit der PWM Methode erreichbar ist.
@ Gilbert F (Gast) >Nun verwenden ja z.B. viele CD-Player "1-Bit DACs". Wenn ich es richtig >verstehe wird hierbei aus dem PCM Signal eine Bitfolge generiert welche >dann z.B. mit etwa 2MHz ausgegeben und analog Tiefpassgefiltert wird. Viel mehr als 2 MHz. Nennt sich Sigma-Delta Wandler. >Was spräche also prinzipiell dagegen eine solche Sequenz vorab zu >berechnen (Ich vermute für eine Liveberechnung ist ein typischer 8bit >MCU nicht leistungsfähig genug), auf einer SD-Karte abzulegen und dann >mittels eines Timers und ISR auszugeben? Der unsinnige Resourcenverbrauch. Heute gibt es billige MP3 Dekoder, die kann jeder Arduino-user ansteurn. Fertig. Für einfachere Anforderungen tut es auch 8 Bit Sound mit 22kHz, war in den 1980er der neueste Schrei bei den 16 Bit Systemen ala Atari, Amiga & Co.
Naja sowas wie PDM sollte sogar mit einem AVR möglich sein. PWM hat den Vorteil eine minimale Anzahl von Schaltflanken zu haben. PDM dagegen quasi die maximale. Damit fängt das Störspektrum erst viel weiter "oben" an. => leichter zu filtern. 44.1kHz @ 8Bit würden 11.29MHz takt für den "PDM-DAC" benötigen. Sagen wir wir würden mit 6-Bit Dynamik durchkommen, dann wären wir bei ca 2.8MHz Takt (44.1kHz*64). 11.289MHZ Quarte gibts (Oh wunder ;P) ja. Damit wüsstest du den SPI nur mit 1/4tel vom CPU-CLK betreiben und das wäre gelöst. Die Sequenz lässt sich einfach voraus berechnen: 64-bit pro Eingangsbyte macht 2kByte Lookup-Table (für die Werte 0-255 jeweils 64bit Daten die per SPI raus müssen). Zuerst würde ich mal PWM emulieren probieren. Also bits von 0-63 raufzählen und mit dem Eingangswert vergleich. Wenn Bit-Position < Wert, dann kommt ne 1. Beispiel für 2bit Eingangswort und 4bit Ausgangswort: Wort zu andeln wäre 10b (also 50%) <pre> Zähler -> Bit im 4-bit breitem Ausgangswort 00b -> kleiner also 1 01b -> kleiner also 1 10b -> nicht kleiner also 0 11b -> nicht kleiner also 0 </pre> Also quasi PWM - 50% 0 und 1. Wenn du jetzt die 1ner gleichmäßig verteilst über die 8Byte dann hast do sowas wie PDM. Ziemlich Gleichmäßig verweilen geht übrigends sehr einfach. Eingangs-Byte mit der "gedrehten" bit-position (MSB-LSB -> LSB-MSB) im 8-byte array vergleichen. Wenn kleiner dann wird das bit eine 1, sonst eine 0. Beispiel wieder für 10b (also 50%) <pre> Zähler -> "gedreht" -> Bit im 4-bit breitem Ausgangswort 00b -> 00b -> kleiner also 1 01b -> 10b -> nicht kleiner also 0 10b -> 01b -> kleiner also 1 11b -> 11b -> nicht kleiner also 0 </pre> Macht 50% 1 und 50% 0 und schön gleichmäßig verteilt. Hoffe das war verständlich... 73
Warum muss man denn überhaupt 1 Bit Audio verwenden, wenn man den Sound schon als 44khzx16 hat? Einfach auf einen billigen 1,90 DAC und fertig. Besser, als jedes digitale Zeug. Oder wenn digital: Dann einfach den digitalen Datenstrom auf I2S ausgeben und einen digitalen Wandler ran.
Audio Phil schrieb: > Warum muss man denn überhaupt 1 Bit Audio verwenden Frage ich mich auch. Vielleicht nicht mehr Pins frei? ;-) Audio Phil schrieb: > Einfach auf einen billigen 1,90 DAC und fertig. Oder nur 10 Cent, siehe Beitrag "DAC-Erweiterung mit TDA1311/PT8211?" Braucht aber 3 Pins für 2 Kanäle, also einen mehr.
Oder einen dsPIC33FJ64GP802 mit einem integriertem 16-bit Dual Channel DAC.
Franz schrieb: > Oder einen dsPIC33FJ64GP802 mit einem integriertem 16-bit Dual Channel > DAC. Gibt's den auch in DIL? (Frage nicht wirklich ernst gemeint...)
c-hater schrieb: > Franz schrieb: > >> Oder einen dsPIC33FJ64GP802 mit einem integriertem 16-bit Dual Channel >> DAC. > > Gibt's den auch in DIL? > > (Frage nicht wirklich ernst gemeint...) Ja. SDIP28. Die Antwort ist ernst gemeint.
c-hater schrieb: > Franz schrieb: > >> Oder einen dsPIC33FJ64GP802 mit einem integriertem 16-bit Dual Channel >> DAC. > > Gibt's den auch in DIL? > > (Frage nicht wirklich ernst gemeint...) Ja. (Antwort ernst gemeint...)
Gilbert F schrieb: > kann eure Einwände nicht so ganz nachvollziehen. Sicherlich wird dem MCU > mehr abverlangt, da nicht einmal pro 1/44100 sec ein neuer PWM Wert > geschrieben werden muss, sondern eine Sequenz mit 2MBit ausgegeben > werden muss Und ich kann deinen Einwand nicht nachvollziehen. Also: bei 44.1 kHz Abtastfrequenz müssen eben die Samples mit 44.1 kHz ausgegeben werden. Das schafft jeder bessere µC. Aber: Die Qualität hängt direkt von der Taktfrequenz ab, mit der der PWM-Timer getaktet wird. Man schreibt eben ein Sample in das Compare-Register, während der Timer mit einer Gesamtzeit von 44.1 kHz durchläuft. Aber wie fein man die ON/OFF-Zeiten per Compare-Register machen kann, hängt direkt davon ab, wie weit der Timer bis zum Reload zählen kann. Für 8 Bit muß der Timer mit mindestens 256*44.1kHz getaktet werden, für 16 Bit wären das dann 64K * 44.1 kHz. Ersteres geht problemlos ab Taktfrequenzen von 12 MHz. Ne andere Frage wäre, ob es nicht besser wäre, auf 22kHz runterzugehen und dafür ein Bit mehr an Amplitude sich zu gönnen. Noch viel besser ist es freilich, dafür die IC's zu nehmen, die tatsächlich dafür vorgesehen sind, also Audio-DAC's bzw. Audio-Codecs und selbige per I2S anzubinden. W.S.
Ist das hier der große Technikratethread? Bei den 1-Bit DACs handelt es sich um Sigma-Delta Wandler: http://de.wikipedia.org/wiki/Delta-Sigma-Modulation Prinzipiell kann man so etwas sehr einfach in Software auf einem MCU programmieren. Sieht in etwas so aus:
1 | uint 16_t accu=0; |
2 | uint 8_t adc_value=123; |
3 | |
4 | while (1) { |
5 | |
6 | accu+=adc_value; |
7 | |
8 | if (accu&0x100) PORT=1; else PORT=0; |
9 | } |
Blöd ist nur, dass die CPU dann nichts anderes machen kann. Vielleicht bastelt ja jemand mit einem hoch getakteten PWM einen Multi-Bit Sigma-Delta DAC? Dann könnte noch genug CPU Zeit frei bleiben. p.s.: Die Audio DACs verwenden üblicherweise 64faches oversampling und einen Modulator mit Ordnung>1.
:
Bearbeitet durch User
Tim schrieb: > p.s.: Die Audio DACs verwenden üblicherweise 64faches oversampling und > einen Modulator mit Ordnung>1. Na, dann machen wir es mal konkret: Der, den ich im Studiowandler habe, arbeitet auf 256fach oversampling, nutzt non linear predistortion und noise shaping /dithering für die Ausgabe. Das kann man in einem AVR nicht mehr nachbilden. Da geht gerade noch in einem FPGA, da aber auch nur bedingt wirtschaftlich. Die Wandlerpreise machen es möglich.
Hier ein paar Versuche mit der 1 Bit wandlung auf dem Arduino: http://www.hobby-roboter.de/forum/viewtopic.php?f=5&t=141
chris_ schrieb: > Hier ein paar Versuche mit der 1 Bit wandlung auf dem Arduino: > http://www.hobby-roboter.de/forum/viewtopic.php?f=5&t=141 | digitalWrite(13, HIGH); Wenn Du das hier weg lässt, wird die Schleife 50x schneller...
Gilbert F schrieb: > da dieses Wandlerprinzip Vorteile gegenüber einem > "normalen" DAC hat. Die "Vorteile" sind so groß, dass Philips das seinerzeit beinahe nicht in den Griff bekommen hat und bei 14 Bit Schluß machen wollte. Also lass den Pfusch und nimm einen käuflichen DAC mit garantierten Daten.
lrep schrieb: > Gilbert F schrieb: >> da dieses Wandlerprinzip Vorteile gegenüber einem >> "normalen" DAC hat. > > Die "Vorteile" sind so groß, dass Philips das seinerzeit beinahe nicht > in den Griff bekommen hat und bei 14 Bit Schluß machen wollte. > Also lass den Pfusch und nimm einen käuflichen DAC mit garantierten > Daten. "Philips" und "Damals" klingt nach den Anfängen der CD-Player. Damals hat man noch keine ΔΣ-DACs eingesetzt.
Gilbert F schrieb: > Aber der Vorteil wäre, wenn ich keinen Denkfehler haber, das die > Qualität den 16Bit/44.1kHz einer CD entspricht und nicht 8Bit/44.1kHz > wie es mit der PWM Methode erreichbar ist. Könnte das jemand erklären, wieso bei PCM hierbei 16 Bit 44,1 erreicht werden? Die Nettodaten von 2MHz x 1 Bit sind ja eigentlich weniger. Lohnt sich dann eine solche PCM-Ausgabe direkt?
PCM ist doch sozusagen die Bruttoinformation, wenn das binäre Format dekodiert wurde. Das kann weder besser, noch effektiver sein.
Dass nie mehr rauskommen kann, als man mal reingesteckt hat, ist mir schon klar, aber das wäre ja nur in dem Fall von Gilbert (s.o.) so, wenn wirklich CD-Daten gewandelt werden. Mir ginge es darum, zu verstehen, wie es wäre, wenn man gar nicht erst PCM speichern würde, sondern direkt die Delta-Sigma-Daten. Das wäre ja dann das topic, nämlich: "1Bit Audio als Alternative zu PWM".
Thomas W. schrieb: > Mir ginge es darum, zu verstehen, wie es wäre, wenn man gar nicht > erst PCM speichern würde, sondern direkt die Delta-Sigma-Daten. Das ist dann wieder DSD, aber wie hier und auch an anderer Stelle diskutiert, ist der Vorteil eben nicht oder kaum hörbar - wenn auch theoretisch vorhanden. Um es nochmal vereinfachend zu sagen, ist die Reduktion des Informationsgehalts des Modulatorsignals durch die Dezimation runter auf das übliche Audioformat von 16kHz@44kHz durchaus signifikant - bei dem "Zwischenstopp" auf 24Bit@192kHz aber eben nicht. Dieses Format ist ausreichend gut. Messtechnisch kann man die Unterschiede meistens zeigen, mathematisch immer. Zu Hören sind sie praktisch nicht.
> Mir ginge es darum, zu verstehen, wie es wäre, wenn man gar nicht erst > PCM speichern würde, sondern direkt die Delta-Sigma-Daten. Das wäre ja > dann das topic, nämlich Gibt es doch schon. Nennt sich Direct Stream Digital (DSD): https://de.wikipedia.org/wiki/Direct_Stream_Digital
An Jürgen und Mike: Ja, dass es das gibt und wie es heißt, ist mir schon bekannt. Die Frage aber war, wann es was bringt. Es gibt ja doch zwei Lager: Die einen behaupten, das 1-Bit Audio sei deutlich schlechter, als das PWM, während die anderen das Gegenteil behaupten und DS favorisieren. Ich nenne dazu den im anderen topic erwähten link auf einen DSD Wandler der Firma RME, der das authentische Audio propagiert, während mindestens ebenso viele ebenso kompetente Leute das 1-Bit Audio verteufeln. Literatur z.B. von Yoshio Yamasaki (Waseda-Universität)
Um zu verstehen, dass ein unverändertes Signal (das vom 1-Bit Wandler) grundsätzlich besser ist, als ein etwa dezimiertes (das aus dem AD-Wandler parallel rauskommt) braucht man keine japanische Universität. Unter der Voraussetzung, dass ein Delta-Sigma-Wandler sauber funktioniert, ist das immer das Beste, das zu speichern und zu behalten. Aber: "sauber funktioniert" ist eine Definitionsfrage. Das Sigma wird idealisiert als lineares Integral angesehen und erfordert zur Rekonstruktion eine Schaltung, die es in der Praxis nicht gibt - jedenfalls nicht perfekt. Daher kann man da "drehen", ohne jetzt zu sehr in die Details zu gehen und auf reale Filter optimieren. Entscheidend ist aber die Rate! Wenn man das "1-Bit" mit einem entsprechenden parallelen ADC vergleicht, hat der immer die schlechtere Auflösung. Nur bei genügendem Abstand zwischen DSD-Frequenz und Fs gilt die Behauptung. Bei DSD64 gilt das definitv nicht. So ist es auch zu erklären, dass einige Dokumente zu der Schlussfolgerung kommen, dass 1-Bit-Audio schlechter sei, während andere das Gegenteil behaupten. Es geht einfach um den head room der Frequenz. Ob es in einer konkreten Anwendung sinnvoll ist, bei DSD zu bleiben, hängt vom Anspruch ab: Bei der reinen Speicherung und Wiedergabe, sind 192kHz ausreichend. So erklären sich die Ergebnisse des Hörversuchs des ETI Detmold. Wenn man aber das Signal modulieren will, z.B. um es in einem Synthesizer abzuspielen und schneller zu machen, Vibrato draufzugeben, etc - dann ist das mit DSD nicht nur einfacher, sondern auch genauer und mit weniger Fehlern behaftet. Schon das resampeln auf z.B. 48kHz statt 44,1 ist mit einem 1-Bit Signal aus dem Modulator genauer, besonders, wenn es in Echtzeit sein soll. Was man sagen grundsätzlich kann: Bei der Dezimation muss man Annahmen über Profil und Grenzfrequenz das Rekonstruktionsfilters machen, was praktisch nicht geht. Damit hört sich PCM auf unterschiedlichen DACs auch unterschiedlicher an. Bei DSD ist es weniger wichtig, ob ein Filter bei 18 oder bei 20kHz beginnt zuzumachen und wie der Verlauf ist, weil das hochfrequente Signal das besser wegdithered. Aber wie weiter oben schon gesagt: Man kann es meistens nur messen und berechnen, nicht aber hören. Das liegt beim Audio einfach daran, dass Mikrofone viele Probleme haben, Höhen sauber omnidirektional und linear aufzunehmen und Lautsprecher wiederum ebenfalls es kaum schaffen, sie korrekt abzubilden.
Jürgen S. schrieb: > Das liegt beim Audio einfach daran, dass > Mikrofone viele Probleme haben, Höhen sauber omnidirektional und linear > aufzunehmen und Lautsprecher wiederum ebenfalls es kaum schaffen, sie > korrekt abzubilden. Was aber eigentlich keine Begründung liefert, dass die digitalen Systeme es sich leisten könnten, dort Ungenauigkeiten reinzubringen. (was sie offenbar tun)
Es war auch nicht so gedacht. Die Argumentation ist, dass man im digitalen Pfad keine abartig höhere Genauigkeit benötigt, als andere (analoge oder mechanische) Komponenten in der Kette vorgeben. Mich stört generell, daß nicht wenige immer wieder den Blick auf eine Komponente in der Signalkette richten und da bis zum geht nicht optimieren und andere, viel relevantere Dinge ignorieren. Lautsprecher sind da ein Thema und auch Mikros. Die Unterschiede in der Qualität der gespeicherten Daten unterschiedlicher Formate sind oft marginal gegen die Artefakte am Beginn und Ende der Audiokette.
Ich schlage einen Delta-Sigma modulator 2. Ordnung der 16 Bit Samples zu n-Bit pwm Samples mit einer Frequenz von m*44.1KHz ausgibt vor. n und m sind hier den Gegebenheiten des Microcontrollers etc. anzupassen. Ich denke für das Upsampling kommt man mit null Samples einfügen für brauchbare Qualität weg? Natürlich nur wenn der resample Faktor ganzzahlig gewählt wird. So ist die CPU laufzeit für einen DS 2. Ordnung klein. In einem LPC8xx (30MHz, Cortex M0) habe ich 3 DSM 2. Ordnung mit 250KHz gesampled die je einen PWM timer versorgen realisieren können. Dies brauchte nur ca. 10% der CPU, rest war nötig für diverse feed forward Berechnungen, Dithering der PWM-Periodendauer zur Linearisierung und eine PI Regelschleife in einer Schaltwandler "Power" Anwendung. Auf dieser Plattform könnte geschätzt m=42 und damit n=16 gut sein. Also 1.875MHz PWM und 4 Bit pro Sample. S/N bis 20KHz könnte praktisch irgendwo zwischen 60-90Db liegen, schätze ich, doch diverse Verzerrungen und Störugen (PWM Analogperformance des Controllers) sind wohl relevanter.
Dogbert schrieb: > Ich denke für das Upsampling kommt man mit null Samples einfügen für > brauchbare Qualität weg? Natürlich nur wenn der resample Faktor > ganzzahlig gewählt wird. Da bitte Ich doch mal um eine Erklärung, wieso man hier mit dem Einfügen von Nullsamples "gut weg" kommt. Was soll das bringen? > m=42 und damit n=16 gut sein Was ist denn M und n? Dezimierungsfaktoren nehme Ich an? > S/N bis 20KHz könnte praktisch irgendwo zwischen 60-90Db liegen 90 wären vielleicht noch zu ertragen, aber 60 ist doch reichlich schlecht, meine Ich. ?
Pallhuber schrieb: > Da bitte Ich doch mal um eine Erklärung, wieso man hier mit dem Einfügen > von Nullsamples "gut weg" kommt. Was soll das bringen? Na, die samples, die durch das erhöhte Abtasten "eingefügt" werden, müssen ja einen Wert haben, also irgendwie belegt werden. Die Idee, Nullen einzufügen, rührt aus der Überlegung, keine Information hinzufügen zu wollen. Das funktioniert natürlich nur bei Daten, die ihre Nulllinie auf der Achse haben. Bei unsymmetrischen Datenströmen mit Offset hat man da ein Problem. Dann wäre das Einfügen des Offsets die Lösung. Dies gelingt aber aus praktischen Gründen nicht immer: Beim Audio ist das deshalb meistens schlecht, weil es gleichstromfrei übertragen wird. Real mittelt sich jeder Gleichanteil, den man hat oder erzeugt, mehr oder weniger weg und genau dieses "mehr oder weniger" ist der Punkt: Er mittelt sich immer ein bischen weg, weswegen das Einfügen der Null (auch bei symmetrischem Datenstrom) versagt. Er mittelt sich aber nicht perfekt weg, weswegen es nur eine lokale Nulllinie gibt und das Einfügen eines berechneten BIAS versagt. Es gibt also praktisch einen BIAS-Fehler, der sich je nach Filter am Ausgang und Analogpfad etc auswirkt. Der Filter ist dabei das größte Problem: Das Einfügen der Nichtinformation per Null oder des BIAS-Wertes gelingt nur theoretisch, weil es bei der Rekonstruktion ein ideales Filter benötigt. Da es das nicht gibt, bekommt man immer Fehler im Signal. Daher braucht es auch bei ganzzahligen Abtastverhältnissen immer ein Interpolationsfilter vor der Ausgabe. Bei Audio stimmt man das einfach auf die Bandbreite, z.B. 20...20.000 Hz ab. Dann hat man eine ausreichend gute Interpolation mit korrektem BIAS-Wert. Mit der Annahme eines guten Rekonstruktionsfilter, kann man etwas konservativer sein und das Filter auf 10Hz bis Nyqust der Abtastung auslegen. Auf diese Weise sind quasi 2 Interpolationsfilter in Reihe geschaltet, wobei das eine idealerweise die Probleme des anderen vermeidet. Wenn z.B. am Ausgang ein analoges mehrstufiges IIR sitzt, neigt das zum Schwingen, wenn es durch die Sprünge angeregt wird. Das ist praktisch überhaupt nicht mehr der Fall, wenn man die Werte aus einfachen Mittelwerten bildet, wodurch nur noch Knicke überbleiben. Es gibt noch ein weiteres Argument für die Vorinterpolation: Der Pegel des Signals reduziert sich nicht. Wenn man ein Signal um Faktor 3 hochsampelt, hätte man ansonsten nur ein Drittel des Pegels. Das macht nur bei rein digitaler Weiterverarbeitung keinen Unterschied, wohl aber, wenn das Signal auf einen Analogfilter geht.
Gilbert F schrieb: > Was spräche also prinzipiell dagegen eine solche Sequenz vorab zu > berechnen (Ich vermute für eine Liveberechnung ist ein typischer 8bit > MCU nicht leistungsfähig genug), auf einer SD-Karte abzulegen und dann > mittels eines Timers und ISR auszugeben? Da sich Giilbert F aus dem Forum verabschiedet zu haben scheint, ist wohl die Idee nicht mehr so wichtig. Zum Thema kann Ich noch beisteuern, dass das direct digital streaming gerade wieder auflebt: https://www.nativedsd.com/
Das DSD hatten wir ja schon oben diskutiert. Ich greife die Frage aber mal auf: Wer hört denn hier DSD-Audio? (und noch wichtiger) Über welche Hardware? Zur Verdeutlichung des Thema Zero-Inserting bei den Samples noch diese Grafik: http://96khz.org/oldpages/digitalupsampling.htm
Jürgen S. schrieb: > Es gibt noch ein weiteres Argument für die Vorinterpolation: Ich denke mal die zusätzlichen Rekonstruktionsartefakte durch den nicht flachen Frequenzgang von Audio gegen 0Hz und real world Rekonstruktionsfilter spielen praktisch keine Rolle, die spielen sich in den Harmonischen der Samplerate ab und würden praktisch in der ganzen Signalkette ausreichend gefiltert. (Ist ja ein low cost hack, oder?) Die Pegelreduktion oder die Konzentration des Signals auf die harmonischen der Samplefrequenz sind aber wirklich blöd für den DS modulator, denn diese reduzieren dessen Aussteuerbarkeit und Praktikabilität empfindlich. Also ein Interpolationsfilter macht absolut Sinn. Da steckt dann etwas Aufwand drin. Ein 42-fach multiphase FIR mit einer "tolerierbaren" Anzahl taps (>10?) wäre mein Ansatz. Muss ja nicht besser von den duch das Resampling erzeugten Rechenfehlern (S/N) als die zu erwartende Gesamtperformance von Audio aus Controller PWM I/O auf R/C tiefpass sein. Vielleicht gibt es noch weitere Optimierungen dafür im konkreten Fall die mir gerade nicht einfallen.
Jürgen S. schrieb: > Mich stört generell, daß nicht wenige immer wieder den Blick auf eine > Komponente in der Signalkette richten und da bis zum geht nicht > optimieren und andere, viel relevantere Dinge ignorieren. Lautsprecher > sind da ein Thema und auch Mikros. Vor allem sollten auch manche High-End-Fetischisten einsehen, dass in den Studios, in denen die Tonträger aufgenommen wurden, auch nur mit Wasser gekocht wird, d.h. zwar großenteils eine technisch hochwertige Ausstattung der jeweiligen Zeit verwendet wird, aber eben keine bei Vollmond aus handgewalztem Silber handgeklöppelten und mit levitiertem Weihwasser gespülten, armdicken monokristallinen Litzen. Und dann meinen solche Leute, mit ihren esoterischen Anlagen irgendwelche Klangdetails in Aufnahmen aus den 1930er bis 1960er Jahren entdecken zu können, als man den Umstieg vom Tondraht zum Magnetband gerade mit Mühe geschafft hatte und im Vergleich zum Bandrauschen selbst die Niagarafälle als schalltoter Raum gelten müssten.
Andreas S. schrieb: > High-End-Fetischisten Sind ein hochprofitabler Markt. Und wo Kunden sind finden sich Verkäufer.
Andreas S. schrieb: > Vor allem sollten auch manche High-End-Fetischisten einsehen, dass in > den Studios, in denen die Tonträger aufgenommen wurden, Ja die Sache ist äußerst ambivalent! Selbst in den Studios sitzen nicht überwiegend sachlich denkende Ingenieure, sondern self made mixer, die sich traditionell audio engineer nennen und dort findet man Leute, die nüchtern und klar geradlinig produzieren und auch konsequent die Verbesserung der Aufnahme und Speicherung von Audiodaten vorangetrieben haben und es gibt die, welche irgendwelche Artefakte als grossartig und warm erachten. Aus dem Grund halten sich in den Studio nach wie vor stark färbende Mikrofone, alte Mikrofeone, klangverfälschende Lautsprecher und Analogaudiotechnik, die mehr Gemüse erzeugt, als Probleme der Digitaltechnik zu umgehen. Die Schwierigkeit ist, dass heute existierende Audiosignale aus allen Epochen stammen und unter verschiedenen Strategien erzeugt wurden. Man erinnere sich nur an die exorbitanten Lautsprecher von Grundig mit ihren Kugeln und anderem. Viele dieser Mischungen nehmen auf die Hörgewohnheiten und Abspielsysteme Rücksicht. Somit ist es bisweilen schwierig, sehr neutral klingende Mikrofone und neutrale Lautsprecher zu verkaufen oder umgekehrt Mischungen in den Markt zu bringen, die solche Systeme erfordern. Es klingt oft langweiliger, weniger druckvoll und luftig. Daher schneiden verfärbende Komponenten im Hörtest oft besser ab und die Leute kaufen holzige Lautsprecher, Röhrenverstärker und Klangverbesserer der unterschiedlichsten Sorte.
Jürgen S. schrieb: > Selbst in den Studios sitzen nicht überwiegend sachlich denkende > Ingenieure, sondern es bestehen natürlich auch kommerzielle Zwänge, insbesondere natürlich bei kleinen Klitschen, in denen höchstens in paar Hobbymusiker ihre Demoaufnahmen machen lassen. Wobei dies heutzutage sicherlich eher am heimischen PC erfolgt. Gerade wenn man sich einige sehr frühe Aufnahmen von "Die Ärzte" anhört, kann man sehr sicher sein, dass die klangliche Unvollkommenheit nicht unter künstlerischen Aspekten entstanden ist, sondern weil es billig und einfach sein musste. Wer dann heute solche Aufnahmen auf seiner High-End-Kunstinstallation abspielt, wird da aber sicherlich mühelos alle möglichen Intentionen und Klangerlebnisse hineininterpretieren können. > Viele dieser Mischungen nehmen auf die > Hörgewohnheiten und Abspielsysteme Rücksicht. Früher war das Radio das Tor zur Welt, und der Stolz jeder wohlhabenden Familie war die Musiktruhe, für die man locker ein halbes Jahresgehalt hinlegte. Sozusagen "frühes High-End". Und dann hörte man gebannt zu. Heutzutage dürfte aber der Anteil derjenigen, die zuhause in der guten Stube Radio hören, verschwindend gering sein. Das Radio dudelt hingegen im Auto, im Büro, auf der Baustelle und in einigen Ladengeschäften, also Umgebungen mit vielen Störgeräuschen. Gerade die üblichen Dudelsender optimieren also ihre Mischungen auf billige Kofferradios und Autoradios. > Daher schneiden verfärbende Komponenten im Hörtest oft besser ab und die > Leute kaufen holzige Lautsprecher, Röhrenverstärker und Klangverbesserer > der unterschiedlichsten Sorte. Oder sie kaufen sich grafische Equalizer und stellen darauf möglichst lustige Hügel ein. :-/
1-Bit Audio erlebt gerade wieder eine Renaissance wie man lesen kann: Beitrag "Re: VHDL Grundlagen Tonerzeugung"
Hi-Tech-Progger S. schrieb: > Zum Thema kann Ich noch beisteuern, dass das direct digital streaming > gerade wieder auflebt: DSD ist nicht identisch mit 1-Bit-Audio. Edi M. schrieb: > 1-Bit Audio erlebt gerade wieder eine Renaissance wie man lesen kann: > Beitrag "Re: VHDL Grundlagen Tonerzeugung" Auch das ist kein 1-Bit-Audio.
Der Artikel ist aber bereits 20 Jahre alt und damals waren andere Abtastraten üblich. Die 96kHz-Technik z.B. war damals erst am Anfang und in guter Ausführung nur in Studiowandlerkarten zu bekommen. Folgt man dem Artikel, insbesondere dem Diagramm auf der 8. Seite, dann kann man leicht erahnen, dass die erwähnten Probleme mit den Spiegelfrequenzen und Verzerrungen bei den heute üblichen 192kHz schon anders aussehen und sich deutlich weiter oben im Band bewegen. Bei der typischen Energieverteilung im Audiospektrum eines Mastertracks, sind auch nur wenige %-te des Anteils von nennenswerten Verzerrungen betroffen. Anders sieht es aus, wenn man eine Welle mit dedizierte Frequenz im Bereich 3-5kHz erzeugen will. Da sind 192kHz ziemlich der Rand des Akzeptablen. Das gilt im Verbund mit anderen Wellen in der Musik ebenfalls, nämlich dann, wenn man die Wellen weiterverwenden möchte und auf exakte Abbildung angewiesen ist, wie beim Phasing, der FM-Modulation und anderen Phaseneffekten, die hohe Spektralanteile erzeugen können. Da muss man dann mit der Abtastfrequenz noch weiter höher gehen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.