Skocz do zawartości

Korygowanie odpowiedzi częstotliwościowej pomieszczenia via RPi 3+ na Volumio


MariuszZ

Recommended Posts

Ostatnio zapoznałem się z programem REW i nawet myślę o sprzętowym DSP do korekty odpowiedzi częstotliwościowej pomieszczenia ale chcąc sprawdzić jak to się sprawdza próbuję na organizmie żywym wykorzystując różne inne opcje. Przerobiłem REW i APO EQ, a teraz testuję DSP na bazie Volumio z wykorzystaniem bardzo popularnych Malin RPi 3+. 

Przedstawię sposób wykorzystania popularnej malinki RPi B 3+ jako streamera i jednocześnie procesora DSP do zaimplementowania filtrów parametrycznych korygujących mody pomieszczenia. Potrzebujemy działającą w systemie „malinkę” z Volumio (2.834) z podłączonym DAC (u mnie sabaj D5 po USB). Programy do „mieszania” w „malinie”:  PuTTy, WinSCP, RePhase do tworzenia filtrów, REW do pomiarów i eksportowania wyników pomiarów.

Pomiary REW wykonujemy w tradycyjny sposób przy pomocy mikrofonu opisany w innych wątkach. Ja robię pomiary dla osobnych kanałów  L i P tak by móc wygenerować dwa filtry dla osobnych kanałów. Tworzenie filtrów REW można zgapić w tym filmiku na YT, pamiętając o tym, że będziemy potrzebowali dwóch filtrów (L/P).

Do zaimplementowania filtrów w „malince” musimy zainstalować wtyczkę Brutefir. W tym celu włączamy malinę i z laptopa zalogowanego we wspólnej sieci uruchamiamy SSH wpisując w okno adresu IP malinki 192.168.0.XXX/dev/ Następnie kursorem włączamy (enable) SSH.

Teraz możemy mieszać w katalogach maliny. Uruchamiamy PuTTY wpisując adres IP maliny, dalej podajemy login/hasło czyli volumio/volumio. W okno wklejamy kolejno komendy wg tego poradnika widocznego poniżej plików w nim zawartych:

wget https://github.com/balbuze/volumio-plugins/raw/master/plugins/audio_interface/brutefir3/brutefir.zip

mkdir ./brutefir

miniunzip brutefir.zip -d ./brutefir

cd ./brutefir

volumio plugin install

cd ..

rm -Rf brutefir*

Po zainstalowaniu Brutfira z okna przeglądarki na laptopie (192.168.0.XXX) włączamy wtyczkę DSP Volumio (Brutefir) i  robimy reset malinki by w nowej konfiguracji poznała środowisko. W Volumio w ustawieniach (settings), w opcjach odtwarzania ustawiamy urządzenie audio DSP->Nasz DAC (Sabaj D5) oraz w opcjach głośności – mixer type – Software.

Pora na filtry. Filtr wygenerowany REWem do postaci tekstowej musimy "wklepać" do RePhase. Ja robię to ręcznie bo nie poznałem jeszcze jaki format tekstu "łyka" ten program. Odpalamy RePhase i wpisujemy ustawienia w okienku Paragrafic Gain EQ jak na załączonych zdjęciach  (taps 65536, rate 96000 itd.). Generujemy filtr w formacie text- 32/64 bits floats line (.txt) do określonej lokalizacji na laptopie. Warto podbić wzmocnienie w ustawieniach filtra o 6dB zanim go wygenerujemy, gdyż rePhase obniża o tą wartość głośność i będzie ciszej malina odtwarzała po włączeniu filtrów. Podobnie postępujemy dla filtra drugiego kanału. 

Teraz wrzucamy wygenerowane filtry do katalogów Volumio. W tym celu jeszcze raz odpalamy SSH i uruchamiamy program WinSCP podając adres IP malinki (nazwa hosta), login i hasło tak samo jak w przypadku PuTTy. Filtry w formacie txt przenosimy do katalogu data/INTERNAL/Dsp/filters/. Zamykamy program. 

Z okna przeglądarki otwieramy Volumio. We wtyczkach wchodzimy w ustawienia DSP Volumio i włączamy dodane filtry dla DAC tj. Left Main i Right Main pamiętając o odpowiednim (zaszytym w filtrze) sample rate (chyba niekoniecznie;). W tej wersji Volumio nie ma opcji długości filtra ale w starszych też trzeba ustawić odpowiednio jak w wygenerowanym filtrze.

Warto sprawdzać co jakiś czas czy Volumio nie przerzucił ustawień z Software na Hardware i przy okazji nie wyciszył do zera głośności co często czyni i wtedy nie odtwarza muzyki, a my zastanawiamy się osochodzi ;)  

Niestety zaimplementowane filtry możemy tylko posłuchać. Nie da się chyba zainstalować REWa na Volumio by zrobić pomiar odpowiedzi pomieszczenia z filtrami. Ja wygenerowane filtry sprawdzam podłączając kartę audio pod Windowsem z uruchomionym i załadowanym filtrem APO EQ-alizerem. To działa ;)  

 

 

 

 

 

 

SSH (Medium).jpg

putty (Medium).jpg

putty2 (Medium).jpg

rephase (Medium).jpg

gain (Medium).jpg

winSCP (Medium).jpg

volumio (Medium).jpg

volumio dsp (Medium).jpg

Edytowano przez MariuszZ
lit
Link do komentarza
Udostępnij na innych stronach

  • 2 months later...
  • 2 weeks later...

@MariuszZ,

Bardzo ciekawy temat. Ja zamiast malinki użyłem serwera Synology z MinimServer i ffmpeg jako stream converter. Filtry podobnie do Ciebie wygenerowałem w rePhase.

Poza korekcją amplitudy, poprawiłem też fazę co przyniosło rewelacyjne efekty.

Generalnie poza skomplikowaniem w implementacji to nie widzę słabych punktów tego rozwiązania bo można używać filtrów nawet 10x dłuższych (bardziej precyzyjnych) niż w miniDSP, podpiąć pod to prawie dowolnego DACa i cieszyć się lepszą jakością za niższą cenę.

Link do komentarza
Udostępnij na innych stronach

38 minut temu, Tom.O napisał:

Filtry podobnie do Ciebie wygenerowałem w rePhase.

Poza korekcją amplitudy, poprawiłem też fazę co przyniosło rewelacyjne efekty.

Podzielam Twoją opinię. Uważam temat za bardzo ciekawy i użyteczny ;) Fajnie gdybyś podzielił się jakimś tutorialem jak poprawić fazę. Nie dotarłem jeszcze na ten level bo ciągle jakieś inne opcje sie pojawiają. Kolega pożyczył mi DDRC z DL więc się bawię trochę ale uważam, że rozwiązania wyżej wspomniane mają ogromny potencjał i warto to jakoś usystematyzować dla potomnych. Pozdrawiam.

Link do komentarza
Udostępnij na innych stronach

1 godzinę temu, Tenfilip napisał:

A można by tego użyć jako korektor pomieszczenia ? Tzn. mam system biurkowy 2.1, i chcialbym po prostu dodac jakas korekte akustyki - ale dalej puszczac sygnal z PC.

APO Equalizer dla PC. Malina jest niezależnym urządzeniem z własnym systemem i jedyna sensowna korekcja do niej, to właśnie to co @MariuszZ robi. Jak używasz Foobara, to zamiast Apo trzeba do niego jakieś plugin dodać, ale to już poza moim zakresem zainteresowania bo nie używam Foobar

1 godzinę temu, Tom.O napisał:

Poza korekcją amplitudy, poprawiłem też fazę co przyniosło rewelacyjne efekty.

Czy korekta fazy ma sens jeżeli R+L zawsze grają głośniej niż R lub L oddzielnie, czy tylko wtedy kiedy w którymś pasmie się wzajemnie znoszą? 

Link do komentarza
Udostępnij na innych stronach

2 minuty temu, marcinmarcin napisał:

APO Equalizer dla PC. Malina jest niezależnym urządzeniem z własnym systemem i jedyna sensowna korekcja do niej, to właśnie to co @MariuszZ robi. Jak używasz Foobara, to zamiast Apo trzeba do niego jakieś plugin dodać, ale to już poza moim zakresem zainteresowania bo nie używam Foobar

Ok, dzieki za tip. Natomiast myślałem, że malina możę po prostu przetowrzyć sygnał cyfrowy/analogowy i puścić dalej już z EQ.

Link do komentarza
Udostępnij na innych stronach

5 minut temu, Tenfilip napisał:

Ok, dzieki za tip. Natomiast myślałem, że malina możę po prostu przetowrzyć sygnał cyfrowy/analogowy i puścić dalej już z EQ.

Takie coś to miniDsp. Ale Apo jest tak doskonale minimalistyczne że jestem pod wrażeniem. Jedyny minus że tracisz tryb direct/exclusive. Ale nawet najmniejszej degradacji sygnału nie słyszę. Przypuszczam ze miniDsp więcej zakłóceń wprowadza. Na ostatniej stronie wątku o dirac napisałem trochę wiecej

Edytowano przez marcinmarcin
Link do komentarza
Udostępnij na innych stronach

  • 1 month later...
Dnia 7.01.2021 o 23:05, MariuszZ napisał:

Podzielam Twoją opinię. Uważam temat za bardzo ciekawy i użyteczny ;) Fajnie gdybyś podzielił się jakimś tutorialem jak poprawić fazę. Nie dotarłem jeszcze na ten level bo ciągle jakieś inne opcje sie pojawiają. Kolega pożyczył mi DDRC z DL więc się bawię trochę ale uważam, że rozwiązania wyżej wspomniane mają ogromny potencjał i warto to jakoś usystematyzować dla potomnych. Pozdrawiam.

I jak temat z DDRC z DL?

Link do komentarza
Udostępnij na innych stronach

13 minut temu, DudasDudek napisał:

I jak temat z DDRC z DL?

Ogarnięty. Pomierzyłem, skorygowałem i posłuchałem muzyczki. Jest wszystko jak opisali Koledzy w innych wątkach. Algorytmy DL radzą sobie doskonale z poprawą odpowiedzi impulsowej pomieszczenia ale oczywiście nie są remedium na wszystkie bolączki. Warto doinwestować do jakości i zaopatrzyć się w odpowiednie ustroje akustyczne poprawiające parametry IR.

Ogólne wrażenia mam bardzo pozytywne jeżeli chodzi o muzykę po przepuszczeniu jej przez filtry DDRC. Co prawda dźwięk jest nieco "odchudzony" ale zyskał na przejrzystości i klarowności. Może się to podobać lub nie. Mi się podoba. Nie jestem basolubem. 

Z kwestii okołofiltracyjnych to nie podoba mi się, że nie ma wglądu co tak naprawdę DDRC robi z sygnałem akustycznym, jakich filtrów używa itd. Ciekawość mnie rozprasza przy słuchaniu. Poza tym DDRC jest bardzo uniwersalnym DSP, można wykorzystać go na wiele sposobów. do szczęścia brakuje wyjścia cyfrowego tak by nie robić dodatkowych przekształceń z cyfry na analog i odwrotnie. 

Warto zapoznać się z możliwościami tego pudełeczka. Niestety później ból jest taki, że trudno wrócić do tego co było wcześniej ;) 

 

Link do komentarza
Udostępnij na innych stronach

Ja powoli dochodzę 😉 do poprawnej korekcji fazy. Przede wszystkim jednak najlepiej się sprawdza pomiar po korekcie equalizerem, z odległości około metra i z włączonym FDW w Rew. Koniecznie trzeba wyrównać czas impulsu. Znacznie zmniejsza to "skręcenie" fazy. Udało mi się już porobić korekty które nie wprowadzają opóźnień między L i R. Oczywiście dużo też zależy od Eq

Link do komentarza
Udostępnij na innych stronach

37 minut temu, marcinmarcin napisał:

Udało mi się już porobić korekty które nie wprowadzają opóźnień między L i R.

To nie jest tak, że te opóźnienia to mogą być, a można je skorygować suwakiem w APO czy innym programie którym implementujemy filtry? DDRC też oprócz zmian dokonywanych przez same filtry koryguje opóźnienie między kanałami. 

@tomek4446 Poczytałem i pooglądałem te modyfikacje i o ile jest to realizowalne to ja bym się nie podjął. To już jubilerska robota. Trzeba mieć odpowiedni warsztat i trochę więcej doświadczenia z lutowaniem elementów smd. Zawsze istnieje ryzyko uszkodzenia druku i narażenia się na koszty ;) 

Link do komentarza
Udostępnij na innych stronach

4 godziny temu, MariuszZ napisał:

Ogólne wrażenia mam bardzo pozytywne jeżeli chodzi o muzykę po przepuszczeniu jej przez filtry DDRC. Co prawda dźwięk jest nieco "odchudzony" ale zyskał na przejrzystości i klarowności. Może się to podobać lub nie. Mi się podoba. Nie jestem basolubem. 

Właśnie tego odchudzenia się boję. Miałem w planach zmianę CA DM100 na Topping D50s... Ale się mocno zawiodłem. CA gra mega dynamicznie i gęsto. Topping jasne, ma super detale itd. różnorodny bas ale bardzo zwarty i krótki. Nie tworzy takiej przestrzeni.

I szukam właśnie, co tu poradzić, niby miniDSP szał robi, ale im więcej czytam, to się martwię, że jeszcze bardziej wszyskto będzie sterylne. A kosztuje raz tyle.

Link do komentarza
Udostępnij na innych stronach

18 minut temu, DudasDudek napisał:

Właśnie tego odchudzenia się boję. Miałem w planach zmianę CA DM100 na Topping D50s... Ale się mocno zawiodłem. CA gra mega dynamicznie i gęsto. Topping jasne, ma super detale itd. różnorodny bas ale bardzo zwarty i krótki. Nie tworzy takiej przestrzeni.

I szukam właśnie, co tu poradzić, niby miniDSP szał robi, ale im więcej czytam, to się martwię, że jeszcze bardziej wszyskto będzie sterylne. A kosztuje raz tyle.

Sa takie klocki z rca za 70 zl ktore dodaja druga harmoniczna, moze by Ci sie sprawdzily

Link do komentarza
Udostępnij na innych stronach

35 minut temu, DudasDudek napisał:

I szukam właśnie, co tu poradzić, niby miniDSP szał robi, ale im więcej czytam, to się martwię, że jeszcze bardziej wszyskto będzie sterylne. A kosztuje raz tyle.

Ja bym tego nie nazwał sterylnością, tylko uporządkowaniem, poszerzeniem, wyostrzeniem (w pozytywnym tego słowa znaczeniu) tego co sklejone, zamazane. Słuchając bez DL to jakby dostawać w twarz z węża ogrodowego. Po włączeniu DL spływa na ciebie kurtyna dźwięku. Sumarycznie to ta sama energia tylko rozbita na więcej wiązek. Oczywiście to jest system korekcji akustyki. Jeżeli masz zaadaptowane pomieszczenie, nie wzbudzasz modów i brak pogłosów, to rzeczywiście możesz nie mieć spektakularnej poprawy.

Link do komentarza
Udostępnij na innych stronach

38 minut temu, DudasDudek napisał:

A kosztuje raz tyle.

Warto od kogoś pożyczyć i sprawdzić. Ja raczej sterylności nie doświadczyłem. Chodzi bardziej o "czystość" przekazu audio. Sterylność kojarzy mi się z takim suchym graniem bez wypełnienia, dociążenia, a tego raczej u mnie z SETAa na triodzie bezpośrednio żarzonej nie brakuje nawet gdy między DACa, a wzmacniacz po analogu wpięty jest DDRC ;) 

Pisząc o odchudzeniu myślałem zaś o mniej bułowatym basie. Jest go niby mniej ale nie "leje" się tak, nie dudni, ma lepszy kontur, który odbieram jako bardziej zwarty. Oczywiście można "krzywymi" dodawanymi na etapie projektowania filtrów to zmieniać i w zależności od oczekiwań dodawać "imbecyli" tu i ówdzie. 

Link do komentarza
Udostępnij na innych stronach

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś treść z formatowaniem.   Przywróć formatowanie

  Only 75 emoji are allowed.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Poprzedni post został zachowany.   Wyczyść edytor.

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...