Datenpufferung beim Streaming/Resampling

Antworten
play-mate
Aktiver Hörer
Beiträge: 448
Registriert: 26.02.2010, 08:18
Wohnort: Berlin

Datenpufferung beim Streaming/Resampling

Beitrag von play-mate »

Edit: Die nachfolgende Frage von Fujak war ursprünglich an Uli Brüggemann gerichtet, löste aber in einem Nebenzweig des Threads eine Diskussion über den Einfluss der Datenpufferung bein Streamen bzw. Resampling aus:
Fujak hat geschrieben:Da es für mich klanglich keine wirkliche Alternative zu cmp² gibt , habe ich noch ein Frage zu Deinen Ausführungen bezüglich cplay. Ich "umgehe" den eingebauten Resampler stets dadurch, dass ich immer die Samplerate einstelle, die auch mein Musikfile hat; dadurch wird der Resampler bypassed. In diesem Falle müsste doch Dein Convolver synchron dazu den entsprechenden Einstellungen umschalten, oder?

Schwierig würde es werden, wenn ich den Resampler unabhängig von der Samplerate des Musikfiles permanent auf 192KHz lasse, weil dann Dein Convolver ebenfalls auf 192KHz-Filter bleiben würde. Habe ich das so richtig verstanden?
hey fujak,

eigentlich ich verstehe nicht warum es so viel zweifel am upsamplen hier zu lande herrscht....(hat hier der k-mixer paranoia ausgelöst ?) Ein 44.1 =>96/192 mit einem kompetenten algoritmus und der richtigen hardware ist deutlich einem original file überlegen. das ist keine frage von puritanischer "less is more" logik !

lass doch den convolver auf 96/192 und lass cPlay den rest erledigen.

es muß auch verstanden werden daß cPlay ein memory player ist und daher die ganze streaming geschichte und verschiedene schnittstellen problematik hinter sich lässt. Dieser player ist ein integrales asio !

cPlay lädt den RAM mit der ganzen musikfile vor playback und kann deshalb die ganze konfiguration vorher überprüfen....und tut das auch. Die "diagnosis" (vorab einstellbar) gibt volle auskunft über die file und den modus des playbacks.

der convolver wird genau so wie das cue-sheet das abspielverhalten in seiner konfigurations datei festhalten. bei cPlay sorgt die asio verbundenheit deshalb auch für fehlerfreies verhalten. also nix mit plötzlich auftauchenden problemen :

datei laden > alles richtig konfiguriert (auch convolver) ? > korrekt abspielen !

populär gesagt hat cPlay schon die ganze abspielsequenz jedes tracks im RAM genaustens programmiert (auch zeitlich).

cPlay ist sicherlich für viele anwender ein visuel merkwürdiges "gebasteltes" programm, aber die logik, die technik und die qualität der wiedergabe ist ganz einfach audiophile meisterklasse !
...und erzwingt abstriche im komfort und verständniss für warum - genau so wie im formel 1...

ich freue mich das jedenfalls fujak das hören & verstehen kann... :D


gruß leif
Bild
JoeBroesel
inaktiv
Beiträge: 570
Registriert: 17.01.2008, 21:24
Wohnort: Rosenheim

Beitrag von JoeBroesel »

play-mate hat geschrieben:... eigentlich ich verstehe nicht warum es so viel zweifel am upsamplen hier zu lande herrscht....(hat hier der k-mixer paranoia ausgelöst ?)
Hi,

jede Änderung eine Samplerate ist problematisch und führt nicht unbedingt zu einer Verbesserung. Einzig der Analog-Filter zum Abschneiden der Frequenzen über 192 kHz (oder sollen wir jetzt ab 20 kHz
filtern?) wird einfacher, aber das muss man auch können.
play-mate hat geschrieben:... es muß auch verstanden werden daß cPlay ein memory player ist und daher die ganze streaming geschichte und verschiedene schnittstellen problematik hinter sich lässt. Dieser player ist ein integrales asio !

cPlay lädt den RAM mit der ganzen musikfile vor playback und kann deshalb die ganze konfiguration vorher überprüfen....und tut das auch.
Alles wird gestreamt. Der Wandler hat immer nur 1 Wert anliegen, sei es 2 oder 3 Bytes je Kanal. Der Rest wird gestreamt. Alleine, wie sollen meine 2 GB WAV-Dateien mit ca. 500 MB freien Hauptspeicher verarbeitet werden können? Dann wird halt über das Windows-Dataisystem gestreamt, über das Swapping, über den Hauptspeicher (memory) etc. Alles ist streaming. Es geht gar nicht anders.

Grüße vom Main-Streamer
Bild
uli.brueggemann
Aktiver Hersteller
Beiträge: 4659
Registriert: 23.03.2009, 15:58
Wohnort: 33649
Kontaktdaten:

Beitrag von uli.brueggemann »

play-mate hat geschrieben:eigentlich ich verstehe nicht warum es so viel zweifel am upsamplen hier zu lande herrscht....(hat hier der k-mixer paranoia ausgelöst ?)
Leif,

bei cPlay gibt es die Möglichkeit zwischen mehreren Upsamplern zu wählen. Dabei verwendet cics z.B den Upsampler von sox. Bei den Upsamplern VHQ und HQ lassen sich noch diverse Parameter vorgeben. Es gibt zu diesem Thema ebenso viele Diskussionen hinsichtlich Qualität. Z.B. wird in Studiokreisen sehr über den Upsampler von iZotope geschwärmt. Ein weiteres interessantes Gebiet ist hierbei noch das Thema 'Apodising filters'. Und es wird auch noch zwischen online und offline-Verfahren verglichen, wobei m.E. den offline-Verfahren bessere Ergebnisse zugesprochen werden, weil zeitunkritisch (kein Echtzeit-Streaming) und somit beliebig optimierbar.

Das bedeutet:
es scheint logischerweise keinen perfekten Filter zu geben, Es werden da ja unterschiedliche Filtermöglichkeiten angeboten. Die sich dann wohl irgendwie unterscheiden müssen. Ansonsten gäbe es nur einen fest installierten Upsampler.

Ich selbst würde nun damit nicht schlussfolgern, dass das Upsampling falsch ist. Ich frag mich nur: warum muss ich erst manuell eingreifen und bei einer 44.1 kHz wav eine 44.1 kHz-Ausgabe wählen, damit eine 1:1 Wiedergabe erfolgt. Um dann bei 96 kHz wiederum händisch die Ausgaberate ändern zu müssen, damit es 1:1 bleibt.

Es fehlt doch nur die einfache Möglichkeit, den Upsampler abwählen zu können. Dann kann jeder Nutzer genau das tun was er möchte.

Grüsse, Uli
Bild
play-mate
Aktiver Hörer
Beiträge: 448
Registriert: 26.02.2010, 08:18
Wohnort: Berlin

Beitrag von play-mate »

hallo joe,

cPlay ist ein memory-player. das ist eines der unterschiede zu den anderen.
mit " Address Windowing Extensions (AWE)" wird die RAM allocation in windows geändert und cPlay bekommt einen erheblich größeren teils des RAM zu verfügung. bei files die für den RAM dennoch zu groß ist, lädt er zwei mal.
das wichtige daran ist das cPlay beim abspielen eben nicht "streamt". die musikfile läuft vom RAM in zeitlich genauen buffer-größen adressiert ab, und ist wegen des asio am clock des DAC vorgegeben.
quasi "offline" sampling wie uli es erwähnt.
(hier könnte auch die erklärung für das fehlende abschalten vom resampling verborgen sein)

wer es genauer wissen will. ist es alles auf der webseite erklärt.

auch das upsampling ist genau dargestellt.
da gibt es zu verstehen daß 192kHz samplingrate nix mit übertragung von analogen 192kHz zu tun hat.....

aber das unterschiedliches upsampling sich unterschiedlich anhört ist zwischen SOX und SRC ganz evident.
SOX hört sich "sportlicher" und analytischer an als der von harmonie, musikalität und "fluss" gekennzeichneter SRC.
das diese unterschiede eine "färbung" des signals ist, ist klar, aber der generelle zugewinn bei upsampling in form von ruhe und transparenz lässt bei mir keinen zweifel....!

gruß leif
Bild
uli.brueggemann
Aktiver Hersteller
Beiträge: 4659
Registriert: 23.03.2009, 15:58
Wohnort: 33649
Kontaktdaten:

Beitrag von uli.brueggemann »

Leif,

ASIO ist auch nur ein Zwischenpuffer. D.h. die CPU trägt in einen Puffer einer vorgegebenen Grösse ein, während die Übertragung zur Karte aus dem anderen Puffer erfolgt. Die letztere genannte Übertragung in die Soundkarte übernimmt der Treiber. Der entzieht sich im allgemeinen unseren Blicken, ich weiss nicht was da jeder Hersteller da so tut, DMA oder was auch immer. Die Soundkarte hat auch ihren Puffer (möglicherweise definiert da schon die übliche Vorgabe der Latenz die Grösse z.B mit 1024 Samples).

Demzufolge wäre es prinzipiell egal wie groß irgendwelche Vorpuffer sind und was die CPU tut. Nur im Augenblick des ASIO-Bufferswitches muss der Buffer gefüllt sein.

Unabhängig davon erfolgt bei aller Pufferung immer zum Schluss eine Serialisierung, die gewünscht parallel gespeicherten/übertragenen Samples kommen am DAC seriell heraus. D.h. Streaming.

Meiner Hypothese nach muss dieses letzendliche Streaming absolut ungestört sein, es sollten z.B. auf den Adress- und Datenleitungen keine Interrupts etc. dazwischenfunken.

Seh ich da was falsch?

Gruss, Uli
Bild
play-mate
Aktiver Hörer
Beiträge: 448
Registriert: 26.02.2010, 08:18
Wohnort: Berlin

Beitrag von play-mate »

hier noch eine erläuterung zu datenstreaming :

Mit Datenströmen (englisch: data streams) bezeichnet man in der Informatik kontinuierliche Abfolgen von Datensätzen, deren Ende nicht im Voraus abzusehen ist. Die einzelnen Datensätze sind dabei von beliebigem, aber festem Typ. Die Menge der Datensätze pro Zeiteinheit (Datenrate) kann variieren und so groß sein, dass nur begrenzte Ressourcen zur Weiterverarbeitung zur Verfügung stehen. Im Gegensatz zu anderen Datenquellen können Datenströme daher nicht als ganzes, sondern nur fortlaufend verarbeitet werden. Insbesondere ist im Gegensatz zu Datenstrukturen mit wahlfreiem Zugriff (wie z. B. Arrays) nur ein sequentieller Zugriff auf die einzelnen Datensätze möglich.
Datenströme werden häufig zur Interprozesskommunikation verwendet, sowohl zur Übertragung von Daten über Netzwerke als auch zur Kommunikation zwischen Prozessen auf einem Rechner. Beispiele für Datenströme sind Wetterdaten sowie Audio- und Videoströme (Streaming Media). Die kontinuierliche Übertragung von Daten über ein Netzwerk wird auch als Streaming bezeichnet.


Nicht strömende, das heißt statische Daten werden in der Regel als Tupel von Werten in Relationen in einer Datenbank gespeichert. Sie sind ungeordnet und begrenzt. Die Daten in Datenströmen besitzen dagegen eine geordnete zeitliche Reihenfolge und können praktisch unbegrenzt auftreten. Während Daten in Relationen auch gezielt aktualisiert und gelöscht werden können, ist in Datenströmen nur das Einfügen von neuen Daten möglich, da nicht mit wahlfreiem Zugriff auf einzelne Elemente zugegriffen werden kann. Es können allerdings mittels spezieller Datenstromalgorithmen einzelne Tupel eines Datenstroms, basierend auf ihren Eigenschaften ausgewählt und ggf. zu einem neuen Datenstrom umgewandelt werden.
Bild
JoeBroesel
inaktiv
Beiträge: 570
Registriert: 17.01.2008, 21:24
Wohnort: Rosenheim

Beitrag von JoeBroesel »

Hallo play-mate,

mit diesen, aus dem Zusammenhang gerissenen Beiträgen, die von irgendwoher ohne Quellenangabe zitiert sind und die auch nicht den Sachverhalt, um den es geht, korrekt beschreiben, werde ich mich nicht befassen und sie auch nicht kommentieren.

Ansonsten: Siehe meine vorherigen Beiträge.

Grüße
J.
Bild
play-mate
Aktiver Hörer
Beiträge: 448
Registriert: 26.02.2010, 08:18
Wohnort: Berlin

Beitrag von play-mate »

joe hat recht.....dieser thread steuert in die falsche richtung.

natürlich sind digitale signale grundsätzlich gepuffert und gleichzeitig auch ein stream, aber für audioqualität ist nicht egal wie daten übertragen/gepuffert werden.

http://www.cicsmemoryplayer.com/index.p ... SIOLatency

auch für convolving ist asio der beste übertragungsmodus !
Bild
Antworten