|
hifi.slovanet.sk
Bolo zavedene manualne potvrdzovanie registracii !!!
|
|
Zobraziť predchádzajúcu tému :: Zobraziť nasledujúcu tému |
Autor |
Správa |
opa Hifi inventar
Založený: 24 február 2007 Príspevky: 11177 Bydlisko: Praha
|
Zaslal: St marec 13, 2019 11:10:24 Predmet: |
|
|
dustin napísal: | Nyní přidám vstup/výstup do souboru místo zvukovky, tedy podporu pro tvůj režim. Pro použití postačí čisté octave z instalátoru (win, linux), rozbalit zip stažený z githubu a drobná konfigurace... |
Octave mám nainstalováno už když jsem generoval pomocí toho scriptu.
Až budou dodělány vstupy/výstupy, poprosím o odkaz na ten github (nebo nejlépe přímo na ten správný zip).
Popis, jak s tím pracovat asi budu muset ještě několikrát přečíst, ale snad to nakonec pochopím. Ono to asi bude jasnější, když to člověk zkusí.
Nicméně všechny pokusy můžu dělat jenom na WIN7, tedy s externí zvukovkou (Steinberg). Do Win XP jsem Octave neprotlačil, instalace na něčem zdechla.
Koneckonců, trochu horší zvukovka, než mám na XP, vlastně nevadí, alespoň bude zřetelnější přínos té kompenzace.
Když DUT nastavím tak, aby přenos byl jednotkový, kompenzace se provede v loopbacku na definované úrovni, tak by to nejspíš mělo fungovat i v té zjednodušené verzi bez relátek a přepínačů. _________________ Cui bono ? |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: St marec 13, 2019 11:56:42 Predmet: |
|
|
opa napísal: |
Octave mám nainstalováno už když jsem generoval pomocí toho scriptu.
|
Super, pro souborovou verzi nebudeš nic jiného potřebovat.
citácia: |
Až budou dodělány vstupy/výstupy, poprosím o odkaz na ten github (nebo nejlépe přímo na ten správný zip).
|
Na https://github.com/pavhofman/nonlinear-compensation/ rozbalíš menu "Clone or download" a dáš Download ZIP. Tím vždy dostaneš nejnovější verzi. Do ní bude potřeba nakopírovat tvůj nastavený konfigurák. Ještě to nějak promyslím, aby byl snadný update ze zipu. Když se používá systém na správu verzí git, mění se automaticky jen změněné soubory, takže původní adresář s lokálními konfiguráky zůstává. Ale git je pro tebe zbytečný.
citácia: | Popis, jak s tím pracovat asi budu muset ještě několikrát přečíst, ale snad to nakonec pochopím. Ono to asi bude jasnější, když to člověk zkusí. |
Jasně, ale i z toho videa je vidět, že to bude jednoduché.
citácia: | Nicméně všechny pokusy můžu dělat jenom na WIN7, tedy s externí zvukovkou (Steinberg). Do Win XP jsem Octave neprotlačil, instalace na něčem zdechla.
Koneckonců, trochu horší zvukovka, než mám na XP, vlastně nevadí, alespoň bude zřetelnější přínos té kompenzace. |
Souborovou verzi můžeš spouštět na čemkoliv, kde ti poběží octave. Komplet s podporou zvukovky (což stále věřím, že se k tomu ve finále dostaneš ) bude vyžadovat funkční octave a nějaký ten audio loopback. Kompilace rozšíření playrec je přímo z octave, tam bude stačit jen rozbalit jeden zip a spustit skript přímo v octave.
Windowsovský instalátor octave si už s sebou nese vše potřebné pro kompilaci rozšíření, což je obrovské usnadnění. Uvidíš, že to pak dáš snadno.
citácia: | Když DUT nastavím tak, aby přenos byl jednotkový, kompenzace se provede v loopbacku na definované úrovni, tak by to nejspíš mělo fungovat i v té zjednodušené verzi bez relátek a přepínačů. |
Pro souborovou verzi (tj. fixní kompenzace na straně přehrávání) je to jedno. Naměřené distorze při vstupním levelu se stejně škálují na aktuálně přehrávaný level. V případě souborů se naškálují na level, který nastavíš v tom generátoru signálu při generování wavu s antidistorzemi.
Pro zvukovkovou verzi (tedy split-sides kompenzace) to vidím na dvě verze adaptéru. Ruční bude mít pár přepínačů a (ideálně) víceotáčkový potenciometr.
Automatický bude... automatický, výstupní/vstupní buffery s gainem x1/x10 atd.
Myslím si (doufám), že ten ruční bude pro běžnou práci stačit. Taky ještě dlouho nic jiného mít nebudu |
|
Návrat hore |
|
|
miero Hifi inventar
Založený: 08 september 2010 Príspevky: 11503 Bydlisko: Praha
|
Zaslal: Pi marec 15, 2019 19:45:27 Predmet: |
|
|
dustin, ked uz bude kalibrovane DA, tak by slo pomocou druheho DA kanalu urobit odcitanie fundamentu z meraneho signalu v analogovej domene na pripravku a AD by uz len meralo harmonicke. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Pi marec 15, 2019 21:03:19 Predmet: |
|
|
Velice zajímavá myšlenka. Vlastně notch filtr na libovolné frekvenci. Ten zesík x10, který by tam stejně byl, by zbytky vhodně zesílil mimo šum. Sice by pak nefungovala kompenzace na straně ADC, protože by se bez fundamentu neměla čeho chytit, ale to nevadí, protože zkreslení malých distorzí není podstatné.
DUT zavede zpoždění, které způsobí nenulové odečtení fundamentu. Ovšem můžeme ve zpětné vazbě naladit zpoždění referenčního kanálu z DACu, aby byl výsledek minimální. Pak můžeme vyladit amplitudu, aby byl fundament z diferáku nulový/minimální.
Jenže stejně nebudeme mít DAC zkompenzovaný tak přesně, aby po zesílení za notch filtrem nevylezla jeho zkreslení. To by se musel nějak kompenzovat už s použitím toho notch filtru.... hmm to už by byla pěkná vychytávka pro Keysight nebo AP |
|
Návrat hore |
|
|
opa Hifi inventar
Založený: 24 február 2007 Príspevky: 11177 Bydlisko: Praha
|
Zaslal: Pi marec 15, 2019 21:42:01 Predmet: |
|
|
dustin napísal: | ... Ovšem můžeme ve zpětné vazbě naladit zpoždění referenčního kanálu z DACu, aby byl výsledek minimální. Pak můžeme vyladit amplitudu, aby byl fundament z diferáku nulový/minimální. |
To zpoždění lze běžnými prostředky ladit s krokem 1/Fs. To je málo, to na notch filtr nestačí. Celý ten princip je trochu sporný, zkus jednoduchou věc, do jednoho kanálu signál a do druhého v protifázi. Pak to analogově sečti, měl bys dostat nulu. A to, co nebude nula, to je chyba metody.
S opravdovým notch filtrem potlačíš první harmonickou třeba o 80 dB bez jakéhokoliv narušení harmonických složek. Abych nekecal, obyčejné 2T trochu skrouhne nižší harmonické a každý notch filtr přidá šum. Ale to je všechno. _________________ Cui bono ? |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Pi marec 15, 2019 22:02:23 Predmet: |
|
|
opa napísal: |
To zpoždění lze běžnými prostředky ladit s krokem 1/Fs. |
Ano, pokud bys zpožďoval signál z nějakého externího softwaru. Referenci by sis ale generoval sám, již stávající verze umí generovat na obou stranách, používá se např. při kalibraci pro měření transferu LP filtru na frekvencích jednotlivých distorzí. Takže frekvenci generátoru arty (tedy DUTu) znáš (ta se zjišťuje neustále na obou stranách) a do druhého kanálu můžeš generovat tu samou, ovšem s libovolným časovým posunem/fází. Přesně tak se generují ty antidistorze a zvládají se odečítat s přesností na -140dB. Možná i víc, ale zatím nepoužívám tak čistou zvukovku.
citácia: | To je málo, to na notch filtr nestačí. Celý ten princip je trochu sporný, zkus jednoduchou věc, do jednoho kanálu signál a do druhého v protifázi. Pak to analogově sečti, měl bys dostat nulu. A to, co nebude nula, to je chyba metody. |
Výše uvedeným postupem (nejdříve minimalizovat rozdíl optimalizací fáze a pak jej stáhnout do nuly optimalizací amplitudy) se dostaneš spolehlivě na nulu v rámci šumu FFT. Ani nemusí mít diferák gain laděný laserem, tímhle to nastavíš řádově přesněji.
citácia: | S opravdovým notch filtrem potlačíš první harmonickou třeba o 80 dB bez jakéhokoliv narušení harmonických složek. |
Troufnu si tvrdit, že výše uvedeným postupem potlačíš první harmonickou na nulu/šum FFT i s obyčejným SW vykompenzovaným operákem jako diferákem a na té ji udržíš, když necháš zpětnovazební smyčku průběžně dolaďovat pořád se měnící gain kanálů DACu i DUTu. Ale při následném zesílení zesílíš i distorze DACu, které dosud byly pod limitem kompenzace, tedy nezkompenzované. A bez zesílení notch filtr až tak nepotřebuju, protože ty distorze DUTu nad šumem už stejně vidím. Když je zesílím, nevím, zda pochází z DUTu, nebo z DACu.
Ale možná se to dá vymyslet a možná bychom byli/možná budeme překvapeni, jaké další možnosti/nápady se ještě objeví. Nicméně tohle všechno lze kdykoliv přidat rozšířit, upravit. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Po marec 18, 2019 12:07:51 Predmet: |
|
|
opa: Bohužel kompenzace v octave pod Win XP spustit nepůjde. Octave sice běží, ale přibalená knihovna pro komunikační protokol ZeroMQ volá API windows if_nametoindex, které bylo přidané až ve Vistách https://msdn.microsoft.com/en-us/library/windows/desktop/bb408409%28v=vs.85%29.aspx . ZeroMQ používám pro komunikaci mezi skripty na obou stranách zvukovky a procesem s GUI.
Přehrávání/ukládání audio souborů je už skoro hotové. Pro použití čistě souborů nejsou potřeba zvukovky a tedy zkompilovaný playrec (napojení octave na zvukovky), ale zeromq se stejně používá, protože načítání/ukládání audio souboru provádí skript na nahrávací straně a ovládá se to skriptem z GUI - tedy musí komunikovat.
Také lze zeromq ve výkonných skriptech úplně vypnout a posílat příkazy místo z GUI panelu rovnou zápisem do ovládacích souborů. Pak by se konverze naskriptovala bez GUI a takový skript by šel spustit ve WinXP s tím, že by názvy vstupních i výstupních souborů byly fixní. To jsem před chvílí otestoval a funguje OK i pod Win XP. Takže pro WinXP je to jediný způsob použití - spustit skript v octave, který nastartuje přehrávací proces a pošle mu příslušné příkazy přes soubory:
* začni přehrávat soubor nahrany.wav/flac
* proveď jednorázovou kalibraci - vytvoří se kalibrační profil pro fundament v přehrávaném souboru
* zapni generátor na požadované frekvenci a amplitudě - to bude asi ve skriptu natvrdo jako parametry. Od té chvíle bude na vstupu čistý sinus, místo vzorků z nahraného souboru.
* spusť kompenzaci - tím se začnou do čistého sinu přidávat antidistorze
* zapni nahrávání do paměti
* skript počká požadovanou časovou délku výstupního souboru
* ulož nahrané vzorky do souboru antidistorted.wav/flac
Přesně stejná sekvence by se dělala výběrem příkazů v rozbalovacím menu GUI, od Win7 výše. |
|
Návrat hore |
|
|
opa Hifi inventar
Založený: 24 február 2007 Príspevky: 11177 Bydlisko: Praha
|
Zaslal: Po marec 18, 2019 13:16:49 Predmet: |
|
|
Nechtěl jsem s těma XP moc otravovat, už je to fakt starý systém. Nicméně když by to nějak šlo, třeba i bez jakéhokoliv komfortu, bylo by to fajn. Zatím ale neprošla ani samotná instalace Octave, tak je otázka kolik energie tomu věnovat...
V každém případě dík. Až bude nějaká zkušební verze pro sedmičky, dej prosím vědět. _________________ Cui bono ? |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
|
Návrat hore |
|
|
opa Hifi inventar
Založený: 24 február 2007 Príspevky: 11177 Bydlisko: Praha
|
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut marec 19, 2019 23:08:34 Predmet: |
|
|
Mrknu zítra v práci, dělal jsem to na nějaké starém virtuálu s XP. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
|
Návrat hore |
|
|
opa Hifi inventar
Založený: 24 február 2007 Príspevky: 11177 Bydlisko: Praha
|
Zaslal: St marec 20, 2019 16:42:19 Predmet: |
|
|
Tak jinak, já si tu instalaci jenom nachystám. Až bude něco k vyzkoušení, tak to pustím a když to poběží bez Javy, nechám to tak. Teprve když se to kousne, nebo bude řvát, že mu chybí Java, tak to začnu řešit. _________________ Cui bono ? |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: St marec 20, 2019 16:55:13 Predmet: |
|
|
Super, chytré. Aspoň to budeme vědět do popisu instalace na XP. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Pi marec 29, 2019 19:34:37 Predmet: |
|
|
Hraju si s arduinem, je to (zatím) radost. Jedním příkazem v octave si samo spustí arduino IDE a otevře v něm sketch k nahrání do arduina, takže je arduino naprogramované na pár kliknutí. Knihovna si pak připojené arduino sama najde a stačí posílat příkazy.
kód: | ar = arduino();
led_pin = "d13";
while true
writeDigitalPin (ar, led_pin, 0);
pause (0.5)
writeDigitalPin (ar, led_pin, 1);
pause (0.5)
endwhile
|
A onboard ledka bliká. Destička za 55Kč https://www.ebay.com/itm/ATmega168-CH340G-Nano-V3-0-5V-16M-USB-Micro-Controller-For-Arduino/322819463123 + miniUSB kabel a ovládání hardwaru z jakéhokoliv PC funguje.
Volání arduino() na začátku programu trvá tak 2 sekundy, než se octave k arduinu připojí a ověří si jeho firmware, pak každý příkaz trvá tak 20ms, což je pro běžné účely OK. Příkazy běží po sériové lince 9600bps. Zkoušel jsem 57600 v arduinu i octave, ale to blblo, navíc by nefungovala jednoduchá instalace bez úprav knihoven. Ve win jsem zatím nezkoušel, ale bude to fungovat pravděpodobně úplně stejně, používá spoustu lidí. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: So marec 30, 2019 10:45:23 Predmet: |
|
|
Se standardní knihovnou Firmata, která je přímo k nahrání v defaultní instalaci Arduino IDE, trvá zavolání příkazu v octave 1ms (writeDigitalPin), 2ms (readVoltage), 5ms (readDigitalPin). Firmata komunikuje na 57600bps a je datově velice optimalizovaná (používá protokol MIDI).
Při 20ms zápisu by bylo nutné jedním příkazem přepínat celý 8-pinový port (po úpravě knihovny), ale při 1ms lze postupovat po jednotlivých pinech. Arduino Nano má 22 pinů, to bude stačit na celý adaptér bez potřeby posuvného registru. |
|
Návrat hore |
|
|
opa Hifi inventar
Založený: 24 február 2007 Príspevky: 11177 Bydlisko: Praha
|
Zaslal: So marec 30, 2019 12:19:46 Predmet: |
|
|
Zeptám se jako úplný debil, nemá obyčejné PC dostatečný výkon na to, aby řídilo pár relátek ? K čemu je zapotřebí další (byť miniaturní) počítač Arduino ? _________________ Cui bono ? |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: So marec 30, 2019 13:22:08 Predmet: |
|
|
Máš pravdu, výkon je zcela dostatečný. Akorát to PC nemá žádné fyzické výstupy, ke kterým ta relátka můžeš připojit (přes ULN2003 apod.).
Arduino v tomto případě slouží jen jako hloupých 22 spínačů, které ovládáš přes USB port rovnou z programů (v tomto případě z Octave).
RPi je tak oblíbené, protože nabízí integrované vstupy/výstupy/analogové vstupy, které lze rovnou ovládat z pythonu, javy, shellu. PC to nemá, ale přes protokol firmata, který umí používat spoustu programů https://github.com/firmata/protocol#firmata-client-libraries , můžeš přes USB ovládat arduino za pár korun, které už všechny vstupy/výstupy/analogové vstupy má. IMO je v řadě případů kombinace x86 PC + arduino s firmatou lepší než RPi. Např. na tom PC mohou běžet windowsy, máš jej již doma, má mnohonásobně větší výkon apod.
Knihovna posílá binární zprávy přes USB-serial, na arduinu běží standardní implementace firmaty, která s protokolem umí pracovat. Vypálení firmaty do arduina je otázka několika minut, zdrojový kód je mezi standardními knihovnami pro Arduino IDE https://github.com/firmata/arduino#updating-firmata-in-the-arduino-ide---arduino-164-and-higher . |
|
Návrat hore |
|
|
opa Hifi inventar
Založený: 24 február 2007 Príspevky: 11177 Bydlisko: Praha
|
Zaslal: So marec 30, 2019 14:30:50 Predmet: |
|
|
Aha, takže funguje jenom jako takový chytřejší meziksicht. Tak to potom jó. _________________ Cui bono ? |
|
Návrat hore |
|
|
Kozousch Hifi inventar
Založený: 09 máj 2009 Príspevky: 4168
|
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: So marec 30, 2019 15:03:22 Predmet: |
|
|
Přesně tak. Někdo používá USB relátka, která jsou uvnitř úplně stejná - nějaké MCU s USB-serial převodníkem. Akorát USB relátka mají každé jiný komunikační protokol, tedy vlastní software/knihovnu. Zatímco protokol firmata se stal standardem a díky tomu lze používat takřka z každého jazyka, což je zásadní výhoda. Navíc nabízí nejen ovládání pinů, ale dalších periférií arduina (i další připojené standardy) - I2C i SPI linka pro ovládání např. čipu DACu, interní AD převodník (třeba změřit baterku), PWM výstupy pro serva, posílat text přímo se zobrazující na 4bitovém LCD připojeném k arduinu, ovládat posuvný registr pro přidání/úsporu pinů atd. Pořád vychází nové verze, které umí další periférie (samozřejmě danou verzi musí podporovat i knihovna na druhé straně sériového portu - v PC) |
|
Návrat hore |
|
|
opa Hifi inventar
Založený: 24 február 2007 Príspevky: 11177 Bydlisko: Praha
|
Zaslal: So marec 30, 2019 17:21:34 Predmet: |
|
|
To je velmi užitečná informace, děkuju.
Má to ale háček, pro stažení vyžaduje registraci se zadáním všech možných i nemožných údajů do zaměstnání. Zdá se, že vůbec není počítáno s variantou, že by šlo o soukromou osobu. Co s tím ? _________________ Cui bono ? |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
|
Návrat hore |
|
|
Kozousch Hifi inventar
Založený: 09 máj 2009 Príspevky: 4168
|
Zaslal: So marec 30, 2019 18:25:21 Predmet: |
|
|
Za snad bezpečný archiv starších verzí se dá považovat Filehippo:
https://filehippo.com/download_jre_32/62223/
Případně sem jsem uložil "mojí" verzi, kterou jsem kdysi stáhnul přímo z webu Oracle:
[url]https://uloz.to/!5K5hv5R4G1Rn/jre-8u51-windows-i586-exe[/url]
Paranoik může stáhnout více verzí a bitově je porovnat... |
|
Návrat hore |
|
|
opa Hifi inventar
Založený: 24 február 2007 Príspevky: 11177 Bydlisko: Praha
|
Zaslal: So marec 30, 2019 19:01:39 Predmet: |
|
|
Staženo, děkuji uctivě. _________________ Cui bono ? |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ne apríl 14, 2019 19:18:04 Predmet: |
|
|
Uf, po celodenním boji konečně funguje split kalibrace. Minule mi to trvalo odladit několik dnů, doufal jsem, že změna vstupních typů dat bude formalitka. Nakonec jsem se na tom pěkně zapotil, než začaly lézt zkompenzované distorze bez ohledu na přepnutí na napěťový dělič nebo na LP filtr. Už jsem to skoro vzdával, doma se mnou nemluví ani zavřené dveře...
Ještě tak týden to trochu učesat a na řadě je měření zkreslení operáku. Na tom se teprve uvidí, jestli těch půl roku mělo smysl nebo ne |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Po apríl 15, 2019 21:58:13 Predmet: |
|
|
Díky split kalibraci je vidět podíl strany DA a AD na celkovém zkreslení.
Max. zkreslení - výstupní signál -0.1dB. Plný level jde na vstupu (capture) do levého kanálu (pravý je přes dělič). Max. harmonické -97/-90dB zkompenzované na finálních cca -140dB |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Po apríl 15, 2019 22:06:49 Predmet: |
|
|
Při -1dB už zkreslení nutné vykompenzovat klesá. To zkompenzované THD není úplně marné |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Po apríl 15, 2019 22:08:02 Predmet: |
|
|
Při -3dB už zvukovka přestává tolik zkreslovat.
Naposledy upravil dustin dňa Po apríl 15, 2019 22:21:22, celkom upravené 1 krát. |
|
Návrat hore |
|
|
|
|
Nemôžete pridávať nové témy do tohto fóra. Nemôžete odpovedať na témy v tomto fóre. Nemôžete upravovať svoje príspevky v tomto fóre. Nemôžete mazať svoje príspevky v tomto fóre. Nemôžete hlasovať v tomto fóre. Nemôžete pripojiť súbory do tohto fóra. Nemôžete sťahovať súbory z tohto fóra.
|
|