Skocz do zawartości

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


MariuszZ

Recommended Posts

5 minut temu, Tom.O napisał:

Zawsze filtr IIR wpływa na fazę. Kwestia o ile dB korygujesz i czy wprowadzasz zmiany dla 1 czy 2 kolumn.

Mówię o moim przypadku ;) spróbuje jutro jeszcze porobić delikatne korekty fazy oddzielnie dla L i R tak żeby wyrównać kilka miejsc gdzie jest około 50-60st różnicy pomiędzy kanałami (chce jeden pomiar ruszyć 30st w góre drugi w dół tak żeby się spotkały. Ostatnia taka większa różnica to okolice 400Hz. To też ruszyć, czy zakres do 250Hz korygować wyłącznie?

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

25 minut temu, marcinmarcin napisał:

Mówię o moim przypadku ;) spróbuje jutro jeszcze porobić delikatne korekty fazy oddzielnie dla L i R tak żeby wyrównać kilka miejsc gdzie jest około 50-60st różnicy pomiędzy kanałami (chce jeden pomiar ruszyć 30st w góre drugi w dół tak żeby się spotkały. Ostatnia taka większa różnica to okolice 400Hz. To też ruszyć, czy zakres do 250Hz korygować wyłącznie?

Odnośnie okolic 400Hz to zobaczyłbym jak wygląda faza przy uśrednieniu wektorowym dla pomiarów w okolicy +/-30cm w każdą stronę oraz na wysokość.

Dodatkowo porównałbym każdy z tych pomiarów dla tej częstotliwości i wtedy decydował co dalej. Raczej staram się niekorygowań powyżej 200-250Hz. Zrób wersję z i bez korekcji dla tego zakresu. Puść z generatora odpowiednie częstotliwości i porównaj. Potem przetestuj na muzyce i wybierz to co Ci bardziej odpowiada.

1 godzinę temu, MariuszZ napisał:

Efekt "powala" :) Jak zrobić taką hybrydę? W jednym impulsie się chyba nie da. Jak to robisz?

Poniżej 100Hz nie korygowałem fazy jeszcze ale czytam, że to podstawa więc pora się za to zabrać ;)  Na zdjęciu faza z jakichś moich eksperymentów z mikrofonem (z pomiarów w załączniku). Mikrofon w trzech punktach był oddalonych około 15 cm dla L i P względem środka i pomiar dla LP w środku (miejsce odsłuchu, bez żadnych korekt). Faza na początku jest w miarę zbieżna dla kanałów ale miejscami się rozjeżdża i widać jak na zdjęciu, gdzie przekracza 120 stopni w paśmie kilkudziesięciu Hz. Jak praktycznie się za nią zabrać by była mniej rozjechana? rePhase i suwaki wystarczą? Jedną ruszyć czy dwie do siebie? 

Porównanie LiP.mdat 3 MB · 1 downloa

Hybrydę robisz używając 2 banków filtrów, gdzie w jednym wybierasz minimum phase, a w drugim linear phase.

Fazę dla kanałów koryguję tak, by spotkały się mniej więcej w środku, ale jednocześnie staram się zachować/uzyskać liniowy przebieg.

W Twoim przypadku jak skorygujesz fazę to np. dla 74Hz zyskasz >6dB i to bez ruszania amplitudy !!

Samą korektą fazy wyrównasz dołek od 59-100Hz - wynika on właśnie z dużych różnic między kanałami.

Konieczne jest poprawienie całej charakterystyki bo występują bardzo duże nierównomierności.

Pomieszczenie wygląda na częściowo zaadoptowane akustycznie.

Faza2.png

Edytowano przez Tom.O
Link do komentarza
Udostępnij na innych stronach

20 minut temu, Tom.O napisał:

Konieczne jest poprawienie całej charakterystyki bo występują bardzo duże nierównomierności.

Pomieszczenie wygląda na częściowo zaadoptowane akustycznie.

Dzięki za wskazówki. Będę próbował. Pomieszczenie ze zdjęć we wcześniejszych postach. Mam tylko pianki i kilka obrazów akustycznych na pogłos. Planuję jeszcze pułapki po rogach wolnych rozstawić ale wątpię żeby te nierównomierności się od tego zmniejszyły. 

Link do komentarza
Udostępnij na innych stronach

Ręce mi opadają powoli 🙃

Zrobione dwie korekty fazy oddzielnie dla L i R. Zrobione minimalne korekty i symetrycznie to znaczy jedna wygląda tak:

Rephase_korekta.png.70b87793a49b12200649712007d26d86.png

a dla drugiego kanału idealnie symetryczna odwrócona tzn 50Hz ma 25,56, 70 ma 20, 116 -9,44 itd. (czyli korekty minimalne, mające na celu wyrównanie faz, podzielone na 2 kanały)

Wygenerowane dwa pliki konwolucyjne na ustawieniach defaultowych Rephase ze zmianą - 24bits LPCM mono, 88,2kHz i podniesiona ilość tapsów do 65536.

Pulpit w APO wygląda tak:

APO2.thumb.png.286e064a0eb3246483b1f383827a4bca.png

Jak są włączone wyłącznie pliki konwolucyjne to APO pokazuje że różnica opóźnień (Latency) między L i R to prawie 6milisekund (514 tapsów)

Dodanie Equalizera (aktywacja 2 i 6 w Apo) zmienia tą różnice między L i R do 483 tapsów.

Dodałem 2 Delay'e  (jak dodawałem 1 to coś trzaskało, ale jak dodałem dwa po jednym dla każdego kanału jest OK, które wyrównują opóźnienia pomiędzy plikami konwolucyjnymi.

Po dodaniu pliku konwolucyjnego dźwięk się zmienia... jest ostrzej, bas mniej rozlany, dźwięk jakby bogatszy, bardziej uprzestrzenniony.... ale

Siada bardzo mocno lokalizacja dźwięków - dźwięki bez konwolucji słyszę idealnie w swojej pozycji -po dodaniu pliku kaskada dźwięków dobiega zewsząd...

Co ciekawe nie miałem tego efektu zaburzenia stereo jak generowałem jeden plik konwolucyjny dla obu kanałów (prostowanie fazy) - tamto dawało tylko efekty wyostrzenia dźwięku....

EDIT: - sprawdziłem jeszcze bez DELAYA - wygląda że mimo różnicy opóźnień które pokazuje APO, nie mam  takiego rozjechania sceny z plikami konwolucyjnymi. Rozjeżdża ją dopiero korekta opóźnień funcją Delay w APO. Zmierzę później impuls i rozjechanie kanałów L do R i R do L w REW, dla obu ustawień. (z dodatkowym delay i bez niego).

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

Dnia 26.03.2021 o 10:30, MariuszZ napisał:

Na razie chodzi mi po głowie Behringer DEQ2496 z wejściem/wyjściem po optyku.

Mariusz jak to jedt z tym deq? Mozna wejść cyfrowo, zrobic korekcje i wyjsc rowniez cyfrowo pomijając "konwersje do analog", ktora to podobno (takie słyszałem uwagi)  nie jest niskoszumowa a i kosci tez juz leciwe ma podobno. Wiesz cos???

A drugie pytanie to cyfrowo mozna atakowac tylko optyk czy moze ma jeszcze inne mozliwosci???

Edytowano przez Chyba Miro 84
Link do komentarza
Udostępnij na innych stronach

@Tom.O i @MariuszZ nie dawały mi spokoju te opóźnienia między kanałami ktore pokazywało APO. Stwierdziłem że pomierzę oba kanały z referencją do kanału przeciwnego, żeby zmierzyć różnicę między nimi.

544240056_Ldelay.png.425894d93704b8653e5ddf3b9f41df4a.png

Tak wygląda różnica między kanałami jak dodam 13,5ms delay dla kanału L w Apo. To mi potwierdziło że metoda pomiarowa jest ok i pokazuje różnice.

Ale zobaczcie tutaj:

konw_VS2.png.12c0a3a2b3694192671381bb9d162597.png

Ani plik konwolucyjny ani Equalizer nie wpływają  zupełnie na opóźnienie między kanałami. W sweet spot są to okolice zera, zarówna dla R zmierzonego z referencją L jak i L zmierzonego z referencją R.

Co znaczy że można stosować konwolucje i się nie przejmować "rzekomymi" rozjazdami które pokazuje APO

To co pisałem o całkowitym rozjechaniu sceny wynikało z tego że "skorygowałem" czyli rozjechałem opóźnienia o 5,5ms...

DElay.png.40b3f9d5a217f5500ac2f237db83f97f.png

Testów CD :D

 @Tom.O twoje wsparcie jest tu bezcenne!

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

44 minuty temu, marcinmarcin napisał:

To co pisałem o całkowitym rozjechaniu sceny wynikało z tego że "skorygowałem" czyli rozjechałem opóźnienia o 5,5ms...

Ja myślałem, że REW już uwzględnia w pomiarach pojedynczych kanałów opóźnienia więc nic z tym nie kombinowałem. Patrząc na to co liczył i wyświetlał DL w DDRC też było widać, że sobie mierzy odległości kolumn od miejsca mikrofonu (opóźnienia) co wyświetla przy informacji o kanałach i uwzględnia w filtrach. 

Chyba, że piszesz o czym innym, a ja dalej bujam w obłokach 😉

54 minuty temu, Chyba Miro 84 napisał:

Mariusz jak to jedt z tym deq? Mozna wejść cyfrowo, zrobic korekcje i wyjsc rowniez cyfrowo pomijając "konwersje do analog",

 

54 minuty temu, Chyba Miro 84 napisał:

 

Tak właśnie można. Na ASR wielu chwali mimo, że sprzęt leciwy jest. Niestety tylko korekcja parametryczna amplitudy jest możliwa. Jest sporo tutoriali na YT. Uwzględniając koszt/efekt myślę, że to jedna z korzystniejszych opcji rynkowych. Mi dodatkowo pasuje konfigurowalny wyświetlacz gdzie można zapodać spektrometr czy wycieraczki 😉

Link do komentarza
Udostępnij na innych stronach

15 minut temu, MariuszZ napisał:

Chyba, że piszesz o czym innym, a ja dalej bujam w obłokach 😉

Jedyne o czym pisze to że Latency które pokazuje APO i jego różne wartości dla obu kanałów, to nie jest faktyczna wartość opóżnienia. Pliki konwolucyjne i Equalizer w APO nie powodują rozjechania kanałów co mi się udało udowodnić mierząc kanały z referencją do drugiego. Być może wartość delay to minimalna wymagana wartość dla wprowadzonych korekt (a rzeczywiste opóźnienie to zadana ilość tapsów)

Link do komentarza
Udostępnij na innych stronach

11 minut temu, marcinmarcin napisał:

Jedyne o czym pisze to że Latency które pokazuje APO i jego różne wartości dla obu kanałów, to nie jest faktyczna wartość opóżnienia.

Z tymi danymi to dziwna sprawa bo nawet nic nie robiąc, a przełączając w APO tylko kanały żeby podejrzeć wartości latency to one fluktuują i co przełączenie są inne i różnią się kilka ms. Tak jakby algorytm programu liczył i wyrzucał dane z jakimś fluktuacyjnym błędem. Trudno mi to ogarnąć ogólnie, a tu jeszcze takie zagadki 😉

Link do komentarza
Udostępnij na innych stronach

3 minuty temu, MariuszZ napisał:

Z tymi danymi to dziwna sprawa bo nawet nic nie robiąc, a przełączając w APO tylko kanały żeby podejrzeć wartości latency to one fluktuują i co przełączenie są inne i różnią się kilka ms. Tak jakby algorytm programu liczył i wyrzucał dane z jakimś fluktuacyjnym błędem

Zmienia się na bieżąco parametr Init Time. Latency ulega zmianie dopiero jak ruszysz coś (EQ, plik konwolucyjny, delay) dla danego kanału. Ale na szczęście nie przekłada się to na faktyczne opóźnienia między kanałami.

Link do komentarza
Udostępnij na innych stronach

2 godziny temu, MariuszZ napisał:

Tak właśnie można. Na ASR wielu chwali mimo, że sprzęt leciwy jest. Niestety tylko korekcja parametryczna amplitudy jest możliwa. Jest sporo tutoriali na YT. Uwzględniając koszt/efekt myślę, że to jedna z korzystniejszych opcji rynkowych. Mi dodatkowo pasuje konfigurowalny wyświetlacz gdzie można zapodać spektrometr czy wycieraczki 😉

Sorki ze wam sie wcinam z "lamerskim" pytaniem ale....

Jesli chodzi o cyfre to chyba tam nie ma tych niepotrzebnych konwerterow jak w przejsciu na analog czyli wejscie analog - konwersja a/d- dsp- d/a- wyjscie. Chcialbym tego uniknąć i rozumiem ze to Nie dotyczy sekcji cyfrowej bo tam jest bezposrednie wejscie na "procesory" - obróbka(eq) i "wypad" z dzwiekiem na optyk... 

Link do komentarza
Udostępnij na innych stronach

1 godzinę temu, Chyba Miro 84 napisał:

Chcialbym tego uniknąć i rozumiem ze to Nie dotyczy sekcji cyfrowej bo tam jest bezposrednie wejscie na "procesory" - obróbka(eq) i "wypad" z dzwiekiem na optyk

Z opisów użytkowników wynika, że omijasz przetworniki AD i DA wchodząc i wychodząc optykiem. Jak poszperasz na ASR w tematach o REW to na pewno znajdziesz pełniejsze info. Mi utkwiło, że tak to działa i tylko w takiej konfiguracji warto sobie zawracać tym DSP głowę 😉

Tu jeden z zadowolonych użytkowników opisuje co i jak. 

Link do komentarza
Udostępnij na innych stronach

2 godziny temu, Chyba Miro 84 napisał:

 

No wlasnie tez gdzies czytalem na ten temat ale nie bylem pewny na 100% - dzieki wielkie.

Panowie, stosowanie na dzień dzisiejszy zwykłego korektora parametrycznego nie jest optymalnym rozwiązaniem. Takie urządzenie (Behringer) pozwoli dobrze skorygować amplitudę dla każdego kanału, ale może doprowadzić (i w wielu przypadkach doprowadzi) do rozjazdu fazy. Wtedy jak będą grały 2 kolumny razem to np. na niskich tonach będzie wyraźny dołek. Pisałem parę postów wcześniej o tym, że tak też działa Audyssey lub Dirac. (dla pasma <100Hz)

Stosowałem Behringera ileś lat wcześniej do korekcji charakterystyki subwoofer'a.

 

Link do komentarza
Udostępnij na innych stronach

16 godzin temu, Tom.O napisał:

Panowie, stosowanie na dzień dzisiejszy zwykłego korektora parametrycznego nie jest optymalnym rozwiązaniem

Ja wróciłem do Volumio. Jednak jest to chyba najlepsza opcja dla mnie dopóki korzystam ze streamera Allo Sparky. Jedyny minus, że trzeba resampling w Volumio robić pod filtry ale nie zauważyłem żadnej degradacji dźwięku. 

Link do komentarza
Udostępnij na innych stronach

15 minut temu, MariuszZ napisał:

Ja wróciłem do Volumio. Jednak jest to chyba najlepsza opcja dla mnie dopóki korzystam ze streamera Allo Sparky. Jedyny minus, że trzeba resampling w Volumio robić pod filtry ale nie zauważyłem żadnej degradacji dźwięku. 

Czy masz też tak, że od czasu do czasu nie ma dźwięku lub zmienia się mixer na programowy itd ?

Zdarzyło mi się też, że nagle przestało się Volumio uruchamiać... Mam częściowo zmodyfikowaną wersję, gdzie wyłączyłem HDMI, BT, zmieniłem zarządzanie procesorem na "ondemand", itd..

Odnośnie resamplingu to ustawiłem na sztywno Brutefir na 88200Hz i 32b. Jakoś średnio mi się chce zmieniać za każdym razem filtry by dopasować do właściwej częstotliwości próbkowania sygnału wejściowego. Być może docelowo potraktuję Volumio jako rendering Device i będzie używało już zmodyfikowanej wersji plików przygotowanej przez MinimSever na Synology.

Link do komentarza
Udostępnij na innych stronach

5 minut temu, Tom.O napisał:

Czy masz też tak, że od czasu do czasu nie ma dźwięku lub zmienia się mixer na programowy itd ?

Tak. Czasami przeskakuje. Czasami głosu nie ma mimo, że idzie kursor po ścieżce. Na Qobuzie mniej problemów. Na Tidalu głos wcina jak z Qobuza przechodzę. Mam resampling ustawiony tak jak w filtrach generowałem 96k i 24bit. Potrafi działać bez zwiech ale czasami zaniemówi. Teraz właśnie się bawię. Muzyka leci, a mixer widzę wskoczył na Hardware. Jakieś bugi są chyba jeszcze albo coś źle ustawiam. Przełączyłem na None, odpaliłem piosenkę i działa. Wcześniej na Allo Sparky miałem mixer na software i myślałem, że tak ma być ale artefakty pojawiały się w dźwięku co mnie zniechęciło. Teraz mixer na None i nic nie ma złego w dźwięku. Jest super. Filtry działają elegancko. Tylko, że w formacie txt je trzeba preparować.

Link do komentarza
Udostępnij na innych stronach

1 minutę temu, MariuszZ napisał:

Tak. Czasami przeskakuje. Czasami głosu nie ma mimo, że idzie kursor po ścieżce. Na Qobuzie mniej problemów. Na Tidalu głos wcina jak z Qobuza przechodzę. Mam resampling ustawiony tak jak w filtrach generowałem 96k i 24bit. Potrafi działać bez zwiech ale czasami zaniemówi. Teraz właśnie się bawię. Muzyka leci, a mixer widzę wskoczył na Hardware. Jakieś bugi są chyba jeszcze albo coś źle ustawiam. Przełączyłem na None, odpaliłem piosenkę i działa. Wcześniej na Allo Sparky miałem mixer na software i myślałem, że tak ma być ale artefakty pojawiały się w dźwięku co mnie zniechęciło. Teraz mixer na None i nic nie ma złego w dźwięku. Jest super. Filtry działają elegancko. Tylko, że w formacie txt je trzeba preparować.

Ja używam hardware mixer z Topping E30.

Jak miałeś z programowym mikserem znieszktałcenia to w alsamixer -D hw:7 zmniejsz głośność. (7 jak pod tym jest u Ciebie Loopback)

U mnie nic nie przeskakuje i albo działa albo nie. Przy czym dużo eksperymentowałem i może przez to więcej problemów. Dzisiaj wrzuciłem czystą instalkę i tylko zmieniłem zarządzanie procesorem oraz zainstalowałem BruteFIR.

Link do komentarza
Udostępnij na innych stronach

 

4 godziny temu, MariuszZ napisał:

Tak. Czasami przeskakuje. Czasami głosu nie ma mimo, że idzie kursor po ścieżce. Na Qobuzie mniej problemów. Na Tidalu głos wcina jak z Qobuza przechodzę. Mam resampling ustawiony tak jak w filtrach generowałem 96k i 24bit. Potrafi działać bez zwiech ale czasami zaniemówi. Teraz właśnie się bawię. Muzyka leci, a mixer widzę wskoczył na Hardware. Jakieś bugi są chyba jeszcze albo coś źle ustawiam. Przełączyłem na None, odpaliłem piosenkę i działa. Wcześniej na Allo Sparky miałem mixer na software i myślałem, że tak ma być ale artefakty pojawiały się w dźwięku co mnie zniechęciło. Teraz mixer na None i nic nie ma złego w dźwięku. Jest super. Filtry działają elegancko. Tylko, że w formacie txt je trzeba preparować.

Filtry stosuję w formacie wav. Po powrocie do domu będę chciał poeksperymentować z Moodeaudio: https://moodeaudio.org

Najnowsza wersja wspiera interfejs graficzny do camilladsp - to taki ulepszony britefir.

Tak z ciekawości - co masz wybrane w output format w BruteFIR ?

Byłem przekonany, że zawsze należy tam wybierać HW-Detected...

 

Screenshot 2021-04-01 at 22.21.50.png

Screenshot 2021-04-01 at 22.22.49.png

Link do komentarza
Udostępnij na innych stronach

32 minuty temu, Tom.O napisał:

Tak z ciekawości - co masz wybrane w output format w BruteFIR ?

Mam HW Detected 32_LE ale na innych, nie wszystkich też działa. Na tych co ich nie akceptuje wyrzuca czerwony komunikat Brutefir failed. No i widzę, że masz filtry wav. Mi nie chcą działać. Tylko txt. Jakieś wskazówki może masz na tą przypadłość? ;) Już działa. 

Edytowano przez MariuszZ
już działa :)
Link do komentarza
Udostępnij na innych stronach

Pobawiłem się trochę w wolnym czasie różnymi filtrami FIR vs IIR. Wcześniej w wątku marudziłem że zawsze po dodaniu pliku konwolucyjnego w APO mam wrażenie "metaliczności" dźwięku. Jednak nie jest to kwestia APO, a prawdopodobnie tego że moje ucho jest wrażliwe na tzw pre-ringing czyli efekt zastosowania filtrów FIR. A wyszło to przypadkiem, ponieważ jednym z generowanych plików był zestaw filtrów EQ minimum phase (IIR) który wklepałem do Rephase i okazało się że nic mnie nie denerwuje w dźwięku. Pomierzyłem trochę i o ile zastosowanie filtrów IIR daje efekt jak poniżej: ( Step Response - bez jakiejkolwiek korekcji, z Equalizerem w APO i z Equalizerem jako plik konwolucyjny wav (minimum phase) - cisza przed głównym impulsem.

795764781_Stepresponse_IR.thumb.png.37181217f87391c358354674e4ffa6f5.png

Poniżej efekt zastosowania filtrów typu FIR (Equalizer typu linear phase jako plik konwolucyjny - czerwony, Equalizer typu hybryda (cześć IIR, wysokie FIR) - niebieski, oraz Equalizer IIR w APO plus bardzo delikatna korekta fazy (wyrównanie L i R - max 25st przesunięcia) - zielony. Tu widać jak ładnie Equalizer w moim przypadku eleminuje nadmierny pogłos - brązowy wykres po głównym impulsie skacze w okolice 30%, a po korekcie EQ 10-15% (wycięte największe rezonanse).

773826423_Stepresponse_FIR2.thumb.png.4e79b24eb3cc469f93889278a538d188.png

Jak widać każda opcja powoduje pojawianie się przed impulsem dodatkowych artefaktów. Czym mocniejsza ingerencja w fazę tym większa ilość artefaktów. Zmniejszanie ilości tapsów może wpływać na efekt pre-ringing. Będę musiał to jeszcze pomierzyć i odsłuchać, tak żeby powalczyć o jak najmniejszy efekt dzwonienia.

Co do samego przebiegu fazy. Zastosowanie EQ IIR w APO jest identyczne z zastosowaniem IIR minimum phase w Rephase - powoduje identyczny rozjazd w fazy.

Rozjazd fazy jest znacząco większy jeżeli używamy nadmiernej (zbyt szczegółowej) korekty, a w szczególności jeśli stosujemy filtry dodatnie. ( Rew ma tendencje do ostrej korekty w tym wrzucania filtrów dodatnich - sprawdza się zasada że korygujemy górki a nie ruszamy dołków - gdzie i tak nie wyrabia głośnik/akustyka pomieszczenia).

Edytowano przez marcinmarcin
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...