Zobraziť predchádzajúcu tému :: Zobraziť nasledujúcu tému |
Autor |
Správa |
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: So november 14, 2020 18:33:12 Predmet: WASAPI - shared vs. exclusive mode |
|
|
Meral som rozdiel medzi "Shared" a "Exclusive" modom pri WASAPI zvukovom rozhrani.
Donutilo ma k tomu to ze po prepnuti modov sa mi zazdalo ze naozaj pocujem rozdiel. Kupil som koli tomu aj dalsiu zvukovku aby som to mohol zrealizovat.
Uz sa zo mna stava audiofil hehe. Otacanie "hifi poistiek" si ale nechavam na neskor
Takze ako som meral (ked najdete blbost co som nepostrehol hned mi napiste, odmeriam znovu):
Vzorovy subor bol biely sum (cele pasmo rovno) - 44,1 kHz-16bit-mono-wav.
SW prehravac AIMP s podporou roznych modou WASAPI.
Zosik Yamaha R-N602 s optickym vstupom 96 KHz/16bit-24bit
Samplovacia karta SoundBlaster Audigy RX, samplovanie pri 96 kHz-24bit-mono
1. Prve meranie - bol "Shared" mod kde sa mixovalo vo Windows-e na 96 kHz/24bit a aj zosik pisal ze ma vstupny signal 96 kHz (bitovu hlbku nepise).
2. Druhe meranie - bol "Exclusive" mod kde sa islo priamo do zosika 96 kHz/16bit a aj zosik pisal ze ma vstupny signal 96 kHz (bitovu hlbku nepise).
3. Tretie meranie - bol "Exclusive" mod kde sa islo priamo do zosika 96 kHz/24bit a aj zosik pisal ze ma vstupny signal 96 kHz (bitovu hlbku nepise).
Z merani je vidiet ze je poznatelny rozdiel medzi "Shared" a "Exclusive".
Takze "Windows mixer" stale prepocitava signal z prehravaca aj ked ho aktualne nemiesa s inym signalom napr. systemovymi zvukmi.
Rozdiel medzi 16 bit a 24 bit prehravani je pri "Exclusive" relativne minimalny.
Vysledky:
https://photos.app.goo.gl/sMf9d4H4MFEetPhB8 |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: So november 14, 2020 21:23:05 Predmet: |
|
|
Dle tvého popisu byl šum vygenerovaný ve 44.1kHz a přehrávalo se v 96kHz. Pak něco logicky muselo resamplovat. Tipnul bych si, že v shared režimu resamploval audio subsystém windows a přehrávači dovolil výstup ve 44.1, zatímco v exclusive režimu neměl přehrávač na výběr a musel resamplovat do 96kHz sám. A nebo to bylo úplně jinak |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Ne november 15, 2020 08:07:44 Predmet: |
|
|
Resamplovanie na 96 kHz robi vzdy SW prehravac u mna lebo to robi naozaj kvalitne a je to zamerne tak u mna aj nastavene.
Zistil som meranim vystupnej frekvencnej charakteristiky ze pri samplovani 44,1 kHz priamo do zosilnovaca flter samotneho DAC-u zosilnovaca vyrazne zacina potlacat frekvencie nad 15 kHz a je to naozaj aj pocut.
Teda "windows mixer" miesal signal z SW prehravaca ktory bol vzdy uz 96 kHz/32 bit.
Jedine co musel windows premiesat bolo 32 bit na 24 bit.
Teraz uz samozrejme windows mixer nemiesa nic lebo idem stale uz len "exclusive" mode |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Pi november 20, 2020 19:12:50 Predmet: |
|
|
Schema ako to vo windows-e funguje ohladom audia: |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Po november 23, 2020 17:33:24 Predmet: |
|
|
Mam uz kartu s digitalnym optickym vstupom a uz som aj nahral subor na porovnavanie bit na bit a je tu taka haluz ze nahodne asi kazdy 20 sampel (2bajty= 16bit) je posunuty vzdy len o jeden bit bud hore alebo dolu.
Tj namiesto A6 je napriklad A5 alebo namiesto 32 je 31 (vsetko v hexa).
Ked to pozriete v audio editore kde su zobrazene sinusovky tak sa to zda identicke a aj analyza amplitudy vypoctom je identicka.
Ked to pozriete v hexa editore tak vidiet rozdiel ale vzdy len na poslednom bit-e z 16tich.
Cil buc mudri ked je cela dedina sprosta
https://photos.app.goo.gl/uqCAhsYsL8AbXAoC9 |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Po november 23, 2020 18:12:01 Predmet: |
|
|
V 16 bitech to vypadá na dither. Může jej přidávat přehrávač nebo audio subsystem. Je to v shared i exclusive?
Nicméně je potřeba použít co nejjednodušší cestu. Track bez resamplingu, bez změny bitové hloubky. V soxu si můžeš vygenerovat cokoliv. |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Po november 23, 2020 18:19:10 Predmet: |
|
|
Praveze idem len exclusive, ziaden dither, klasika 44kHz-16bit-mono.
Ale chapes ?! Vzdy len posledny bit a aj to nahodne a este aj nahodne hore alebo dolu. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Po november 23, 2020 20:20:56 Predmet: |
|
|
Asi to nebude dither lebo ten je vypnuty ale asi to ze prehravac prevedie signal hned do 32 bit floating point a potom ide z neho naspat na klasickych 16-bit.
Tych 32 bit-FP sa neda nicim vypnut.
Preto asi chyba vznika len na poslednom bit-e (najmensia vaha) a nahodne.
Spatny prepocet z 32 bit FP na 16 bit asi nie je identicky alebo sa niekde v algoritme pri 32 bit FP zaokruhluje a potom naspat na 16 bit to generuje "rozlicne" vysledky.
Posledny bit v kvalite pri 16 bit je 0,0nic takze pohoda: (1/(2^15)=0.0031%
Kazdopadne vracat sa do 16-bit je aj tak somarina ked DAC je 24-bit a dochadza aj tak k resamplu na 96 alebo 192 kHz. Ale robil som to len kvoli testu aby som sam vedel.
AIMP to standardne teda nedokaze, v podstate realne to ani netreba.
Otestujem ale iny SW player aby som mal 100% istotu ze karta sampluje presne |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Po november 23, 2020 20:58:45 Predmet: |
|
|
Presne rovnako som vyskusal "foobar2000" s doinstalovanym WASAPI komponentom a nepresnost presne ta ista. Zas posledny bit nahodne meneny. Uplne identicke spravanie.
Musim vyskusat asi druhy audio editor |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Po november 23, 2020 21:33:49 Predmet: |
|
|
JRiver Media Center 27 presne tiez to iste
Som zvedavy kde bude chyba. |
|
Návrat hore |
|
|
matulo_g Hifista
Založený: 02 august 2010 Príspevky: 189
|
Zaslal: Ut november 24, 2020 09:01:05 Predmet: |
|
|
Skusil by som to aj na vz. frekvencii 48kHz - HD Audio (kt. pouziva ten Realtek) bezi na 48kHz a pri spracovani 44.1 kHz nejako to riesi vynechavanim vzoriek vo frames. Uz si to presne nepamatam, no davnejsie som to studoval v dokumentacii Intelu ku HD Audio.
To moze sposobovat tie nahodne data.
Martin
P.S.: Nieco som predsa len nasiel, citat z dokumentacie:
"44.1-kHz Delivery Timings
Since the link frame rate is fixed at 48 kHz, streams using a base rate of 44.1 kHz must have samples transmitted on a cadence creating the slightly lower aggregate transmission rate to match the slightly lower rendering rate. For streams running at a sample rate of 44.1 kHz, instead of transmitting one sample block in each frame (as happens for 48.0 kHz rate streams), there are occasional frames that will not contain a sample generating the following cadence.
12-11-11-12-11-11-12-11-11-12-11-11-11- (repeat)
In this cadence, the dashes indicate frames that do not contain a sample block. Therefore, there are 12 frames containing one sample block each, followed by one frame with no sample block, followed by 11 frames with one sample block each, etc. Following the empty frame at the end, the cadence repeats continuously generating exactly 147 sample blocks every 160 frames and avoiding any long-term drift between sample delivery and rendering clock."
Odkaz na dokument (cca od str. 91):
https://www.intel.com/content/www/us/en/standards/high-definition-audio-specification.html?wapkw=hd%20audio _________________ PC/iPad/BR/TV > DENON AVR (multi-amp) > LinkwitzLab ORION (ASP)
Naposledy upravil matulo_g dňa Ut november 24, 2020 16:28:54, celkom upravené 1 krát. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut november 24, 2020 09:25:24 Predmet: |
|
|
HDA na 44.1kHz vzorky nevynechává, to by byli autoři řešení úplní mimoni Sběrnice mezi HDA řadičem a HDA kodekem je sériová linka časovaná na packety 48kHz, takže pro násobky 44.1kHz musí počty vzorků v paketu "kulhat". Kodek si to nabafruje a má vlastní hodiny, kterými to pouští do DACu, SPDIF vysílače, nebo HDMI streamu. Úplně stejně "kulhá" počet paketů pro násobky 44.1kHz v USB audio, které má rámec v násobcích 125us (tedy také nesoudělné pro 44.1kHz).
Zajímavější by bylo sledování bitové přesnosti na 24bitech, kdy se dither již standardně nepoužívá. Konverze float32 -> 16bit či 24bit či 32bit s rozlišením 24bit obecně nemá žádnou náhodnou složku. Pořád jsem přesvědčený, že ty náhodné změny jsou dither, může být natvrdo kdekoliv v řetězci při konverzi float32/int32 -> 16bit, protože tak je to defaultně správně. I SoX má dither pro konverzi do 16bit defaultně zapnutý a musí se mu říct, aby jej nepoužíval. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut november 24, 2020 09:37:36 Predmet: |
|
|
Jinak třeba audacity pro zachování bitové přesnosti nahrávky z SPDIF musí být v https://manual.audacityteam.org/man/quality_preferences.html nastavená tak, aby formát vzorku (a samozřejmě samplerate) přesně odpovídal nahrávanému formátu z SPDIF. Jinak docházelo k nepřesnostem. |
|
Návrat hore |
|
|
matulo_g Hifista
Založený: 02 august 2010 Príspevky: 189
|
Zaslal: Ut november 24, 2020 09:56:58 Predmet: |
|
|
dustin napísal: | HDA na 44.1kHz vzorky nevynechává, to by byli autoři řešení úplní mimoni
|
Nebudem sa tahat za slovicka, no pre mna "...there are occasional frames that will not contain a sample ..." je to jasne.
M. _________________ PC/iPad/BR/TV > DENON AVR (multi-amp) > LinkwitzLab ORION (ASP) |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut november 24, 2020 11:03:16 Predmet: |
|
|
Jasné je, že HDA sběrnice žádné vzorky neztrácí. Samozřejmě řadič HDA v jednom cyklu musí poslat po HDA lince v packetu o vzorek méně ("will not contain a sample"), když je posílá v rytmu 48kHz. Kodek to pak ze svého příchozího bufferu čte audio hodinami. A do toho bufferu samozřejmě nevkládá všechny packety, které putují po HDA lince, protože tam běhaji i pakety pro ostatní kodeky (max. 16 kodeků na lince) a pakety s řídícími příkazy.
Mimochodem už se to tu řešilo dřív https://hifi.slovanet.sk/bb/viewtopic.php?p=254109#254109
Že to funguje úplně stejně u USB audio si můžeš ověřit odchytem rámců ve wiresharku, i ve windows. USB také nezahazuje data při 44.1kHz samplerate, to by byl nesmysl. |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Ut november 24, 2020 13:16:07 Predmet: |
|
|
Divne je ze to robia presne vsetky 3 prehravace rovnako.
Vyzera to ako dither ale ten to podla mna nie je.
Myslim si skor ze vsetky 3 prehravace prevedu vzdy najprv data do 32 bit float
a az potom s nimi pocitaju aj ked maju samotne prehravace nastavene ze vystup sa parametricky zhoduje so vstupom.
Podla mna tato konverzia naspat z 32 bit float na 16 bit nie je exaktna nakolko float je realtivne specialny format a nie je to klasicky 32 bit format.
Preto mozno posledny bit "uleti" lebo sa vypocitana vysledna hodnota pre 16bit "presupne" cez pol bitovu hranicu chyby.
Skusim dnes presamplovat 24-bit co to urobi |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut november 24, 2020 13:30:28 Predmet: |
|
|
Konverze float32 na 16bit je úplně přesná, float32 má 24bit mantisu (tj. přesnost).
Pro všechny testované případy máš společnou stranu nahrávací, bitové změny mohou nastat i tam.
24bit si rovnou vygeneruj, konverze z původních 16bit na 24bit je pouhé přidání 8 nulových bitů, na tom pak nic nepoznáš. |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Ut november 24, 2020 13:42:43 Predmet: |
|
|
Mantisu ma 24 bit ale ma aj exponent a s tym prehravac mozno nieco "robi"
Ide o to ze to nie klasicky 24 bit a ani klasicky 32 bit format cisla.
24bit subor pojde vygenerovat nanovo, to je jasne. |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Ut november 24, 2020 15:53:24 Predmet: |
|
|
24 bit tiez je zle a chyba je minimalne na urovni poslednych 8 bitov (0-255).
https://photos.app.goo.gl/1saS7FWPe9HYmt8i7
Pustim z telky cez optiku subor z USB disku nech vylucim chybu postupne
((((((((( z telky nepustim lebo ide natvrdo 48 kHz)))))))) |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut november 24, 2020 17:30:15 Predmet: |
|
|
Tak si na USB ulož soubor ve 48kHz. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut november 24, 2020 17:32:43 Predmet: |
|
|
Jakou máš vlastně zvukovku s SPDIF vstupem? |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Ut november 24, 2020 19:18:02 Predmet: |
|
|
Tak 44.1 kHz - 16 bit mono sa mi podarilo prehrat a nahrat "bit na bit" v adobe audition tak ze som naraz prehraval a aj nahraval.
Robil som to pre istotu 2x odznova tak by to malo byt OK
Tym istym sposobom ale uz neslo prehrat a nahrat "bit na bit" pre 24 bit.
Zas tam boli drobne chyby v porovnani.
Skusim znovu, je to narocne na nepomylenie sa tak je mozne ze som sa niekde sekol.
https://photos.app.goo.gl/Y1C2tz6PFdnXG1Fr9 |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Pi november 27, 2020 23:30:18 Predmet: |
|
|
Tento SW prehravac pre windows v uvedenej verzii umoznuje bit-perfect prehravanie "44,1kHz-16bit-stereo" : |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Pi november 27, 2020 23:35:27 Predmet: |
|
|
Bola to makacka ale podarilo sa.
Adobe Audition v mode "Waveform" pridavalo do nahravky nejaky dither (+- posledny bit) alebo co. Fakt neviem.
V mode "Multitrack" to uz bolo "bit-perfect"
Idem ceknut znovu ten foobar. |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: Pi november 27, 2020 23:50:14 Predmet: |
|
|
Takze aj foobar2000 pre windows v uvedenej verzii umoznuje bit-perfect prehravanie "44,1kHz-16bit-stereo" : |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: So november 28, 2020 00:07:18 Predmet: |
|
|
JRiver Media Center 27 (verzia 27.0.26) pre windows umoznuje tiez bit-perfect prehravanie "44,1kHz-16bit-stereo". |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: So november 28, 2020 15:59:59 Predmet: |
|
|
Vo finalnom iba "digitalnom" porovnani shared vs exclusive v 44.1 kHz -16bit je vysledok takyto:
Chyba "shared" je na urovni +/- posledny bit 16-bitoveho rozsahu.
Tj pouzitelna dynamika sa zhorsi na 90,3 dB z povodnych 96,3 dB.
Skreslenie stupne na 0.00305% z 0,00153 %.
Ci to robi nejaky dithering alebo nieco ine naozaj neviem.
Kazdopadne vyssie uvedene je isto nerozoznatelne pre ludske ucho ak je nahravka nahrata poctivo v plnej dostupnej dynamike.
Poznatelny rozdiel ale uz mozu byt kratkodobe (max 30 ms) "rusenia" ktore fakt neviem odkial sa beru.
Ich uroven siaha az k -36,5 dB co uz je isto pocutelne.
Meral som to 3 krat a "rusenia" su vzdy na presnom mieste tj su vsetky medzi sebou bit-perfect.
https://photos.app.goo.gl/4PvqvD7EGBx7dpcJ6
Tu je aj rozdielovy subor medzi shared a exclusive vzorkami ak by to chel niekto pozriet.
https://drive.google.com/file/d/1YLokoejIwn_9osm8PGU0tKYRcFYDPmnE/view?usp=sharing |
|
Návrat hore |
|
|
BK Hifista - zaslúžilec
Založený: 16 december 2016 Príspevky: 723
|
Zaslal: So november 28, 2020 17:04:14 Predmet: |
|
|
Zahada vyriesena
Windows audio mixer pouziva pri "shared" nieco ako urovnovy kompresor.
Vzorky co su na 0 dB alebo blizko tejto urovne znizi az o uroven 1,5 %.
Takze vlastne "vsunie" do signalu skreslenie az 1,5%
Cim mate silnejsie nahraty signal tak tym vam ho windows mixer viac zhovadi.
Takze wasapi v mode "shared" nikdy viac |
|
Návrat hore |
|
|
|