[#121] Re: Quite OK Audio

@Mikrobi, post #120

Czy macie jakiś wzorcowy utwór do testowania algorytmu?
Po pierwsze są tutaj.
Po drugie jest enkoder QOA na Linuksa, to sobie skompilowałem i skonwertowałem kilkanaście utworów.

Ostatnia aktualizacja: 24.09.2025 16:59:04 przez Krashan
[#122] Re: Quite OK Audio

@Krashan, post #119

Nie za bardzo rozumiem.
Skoro to moze byc dowolna wartosc random.
To po prostu pobrac np. 5, 17, 19, 35 bajt z pliku zrodlowego.
Ewentualnie to jeszcze jakos zmodyfikowac eor-em lub mulu (dlugosc pliku), wartosciami z pliku zrodlowego.
I jest seed, zawsze taki sam, dla danego pliku.
[#123] Re: Quite OK Audio

@Don_Adan, post #122

Nie za bardzo rozumiem.
To jest pytanie do autora kodeka, dlaczego tak jest. Moim zdaniem ten kodek (FAC) jest wciąż trochę eksperymentalny, o czym świadczy choćby brak formalnej specyfikacji. Jest tylko film na YT omawiający podstawy działania, oraz enkdoer i dekoder w JavaScripcie. Jest też taka możliwość, że ja nie do końca zrozumiałem działanie kodu, niemniej funkcja Math.random() się tam znajduje i to jest fakt niezbity i łatwy do sprawdzenia.
[#124] Re: Quite OK Audio

@Krashan, post #123

A jak random zmienisz na stala wartosc (dla kazdego pliku zrodlowego inna).
To cos to zmieni w dzialaniu tego kodeka?
Moze po prostu autor nie wiedzial jak staly seed obliczyc/znalezc?
Jako bardziej profesjonalne to np. taki CRC32 pliku zrodlowego zrobic.
Wtedy bedzie, zawsze taka sama wartosc dla danego pliku, ale dla kazdego pliku inna.

Edycja.
Mozesz mu to zaproponowac.

Ostatnia aktualizacja: 25.09.2025 16:39:56 przez Don_Adan
[#125] Re: Quite OK Audio

@Don_Adan, post #124

Moze po prostu autor nie wiedzial jak staly seed obliczyc/znalezc?
Może po prostu użył to co miał pod ręką w JS, czyli Math.random(), gdzie nie masz możliwości podania własnego seeda i jest on ustawiany automatycznie z jakiegoś tam źródła entropii. Oczywiście są lepsze generatory (w tym jakości kryptograficznej), ale nie są wbudowane w ten język.
Mozesz mu to zaproponowac.
Ja się skupiam na razie na QOA. Cały ten FAC został tu wrzucony jako ciekawostka, na razie nie będę się nim zajmował.
[#126] Re: Quite OK Audio

@Krashan, post #1

Po dekoderze mam w planach player
Pierwsza wersja już jest. Na razie można pobrać ze strony projektu na itch.io, gdzie zgłosiłem QoaPlay do konkursu Amiga 40 Tools Jam 2025. Chwilowo nie wrzucam na Aminet, bo to jeszcze 0.6 i ma pewną wadę. Jak wiecie, maksymalna częstotliwość wypuszczania próbek dźwięku przez Paulę zależy od trybu graficznego i w PAL wynosi około 27 kHz. Co dla typowych 44,1 kHz jest za mało. W takim przypadku należy odegrać co drugą próbkę na 22,05 kHz, co pozwala poprawnie odtworzyć taki plik, kosztem górnej części pasma. Alternatywą są tryby graficzne DblPAL/DblNTSC/Multiscan, które podnoszą tę maksymalną częstotliwość do około 55 kHz.

QoaPlay 0.6 nic nie sprawdza, tylko wypuszcza audio do Pauli z taką częstotliwością, jaka jest w pliku. Jeżeli puścimy plik w 44,1 kHz nie mając trybu Dbl, to będzie zniekształcony. Następne wersje taki plik domyślnie "podzielą przez dwa", chyba że podamy parametr DBLSCAN, który będzie to wyłączał.

Oczywiście dla mocniejszych konfiguracji dodam odtwarzanie przez AHI. Co też doda tryb 14-bit przy Pauli.

Testy na A1200 z kartą ACA1221 (020@28) wykazały bezproblemowe odtwarzanie plików 22,05 kHz mono i stereo, a także, po włączeniu DblPAL, 44,1 kHz mono. Dla 44,1 kHz stereo minimalnie zabrakło mocy, ale to jest prawdopodobnie kwestia przeniesienia dekodera i pętli audio do oddzielnego procesu o nieco wyższym priorytecie (dźwięk przycina się w momencie doczytywania danych z dysku).

Program jest w pełni systemowy, używa Pauli poprzez audio.device więc być może zadziała również na systemach NG posiadających emulację tego urządzenia. Co prawda AHI będzie tu i tak rozwiązaniem docelowym.

Ostatnia aktualizacja: 05.10.2025 19:16:10 przez Krashan
5
[#127] Re: Quite OK Audio

@Krashan, post #126

Już jest wersja 0.7, wciąż póki co tylko na itch.io. Dodałem dzielenie częstotliwości i argument DBLSCAN. A czemu dzielenie jest domyślnie włączone dla plików z próbkowaniem powyżej 27 kHz? Bo program powinien zawsze "grać dobrze" dla ludzi, którzy nie czytają instrukcji. Czyli jak ktoś ma tego DblPAL-a (albo ma kartę graficzną i włączony dblscan na chipsecie tooltypem), a puści bez dodatkowego argumentu, to zagra dobrze. Nie tak dobrze jakby mogło, bo pasmo będzie przycięte, a poziom szumów lekko wzrośnie. Ale z racji wieku większości z nas, może nawet tego nie usłyszy.

A gdyby dzielenie częstotliwości było domyślnie wyłączone? To wtedy po odpaleniu czegoś w 44,1 kHz na maszynie z 68060, ale pracującej w PAL, doszłoby do zacinania się dźwięku i... "o panie, co za gunwo, nawet na 060 się przycina, a taki to niby miał być lekki format, ić pan z tym w..."

Nadciągające do kodu AHI trochę tu usprawni, z odpowiednim sprzętem pełne 16 bitów w 44,1 kHz przestaje być problematyczne.
7
[#128] Re: Quite OK Audio

@Krashan, post #127

Działa. Jeszcze jakby w czasie odtwarzania można było okienka otwierać, zamykać i robić cokolwiek na Workbenchu bez pauzy w odtwarzaniu to byłoby fajniej. Odtwarzałem z pamięci na 030 40Mhz w HiresLaced PAL. Szkoda, że pod podanym linkiem do Gita nie ma żadnego gotowego programu do enkodowania. Chyba, że nie umiem szukać.
[#129] Re: Quite OK Audio

@koczis, post #128

Działa. Jeszcze jakby w czasie odtwarzania można było okienka otwierać, zamykać i robić cokolwiek na Workbenchu bez pauzy w odtwarzaniu to byłoby fajniej.
To wciąż wersja beta i wszystko działa na jednym wątku, na priorytecie domyślnym, czyli 0. Muszę podzielić wszystko na dwa procesy i jednemu z nich podnieść priorytet. Przy okazji, w wersji 0.7 jest błąd - jeżeli aktywne jest dzielenie częstotliwości, to z pliku stereo odtwarzany jest tylko lewy kanał w obu głośnikach. To jest już poprawione i w następnej wersji będzie już dobrze.
Szkoda, że pod podanym linkiem do Gita nie ma żadnego gotowego programu do enkodowania.
Niestety nie ma, referencyjny enkoder trzeba sobie skompilować. Znalazłem natomiast alternatywny enkoder z gotowymi binarkami na Linuksa, Windows i Maca. Enkoder na Amigę będzie, ale dla cierpliwych, emulujących, albo posiadaczy pistorma, czy chociaż 060. Co prawda powinien być jednak sporo szybszy niż Lame z formatem MP3.
3
[#130] Re: Quite OK Audio

@Krashan, post #129

Znalazłem natomiast alternatywny enkoder z gotowymi binarkami na Linuksa, Windows i Maca.

OK
Enkoder na Amigę będzie, ale dla cierpliwych, emulujących, albo posiadaczy pistorma, czy chociaż 060. Co prawda powinien być jednak sporo szybszy niż Lame z formatem MP3

I niech tak się stanie. Thanks
1
[#131] Re: Quite OK Audio

@Don_Adan, post #124

Tutaj jest jeszcze jakis audio compresssor, moze cos ciekawego, do wykorzystania w calosci lub w czesci.

link
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem