Kompresja dźwięku z postaci wav

0

Witam.
Szukałem jakiegoś działu typu algorytmika, ale nie znalazłem, więc zamieszczę pytanie w tym dziale.
Potrzebuje dokonać kompresji pliku wav, najlepiej tylko dane(format i nagłówek sobie wymyślę). Potrzebuje wgrać go do flash'a mikrokontrolera ARM, gdzie mam 54kB miejsca na muzyczkę. Nie chcę drastycznie zminiejszać jakości dźwięku.
Teraz mam fragment muzyki skonwertowany do postaci 8bitowej z próbkowaniem 8kHz, zmniejszając plik dobrej jakości wav(4s) z ok 350KB na 38KB, gdzie niestety jakość jest nie najlepsza.
Zadawalała by mnie jakość 8bit, i około 40kHz próbkowanie. Mam zamiar zastosować kompresje mp3, ale nie chcę Od razu skakać na głęboką wodę. Poszukuję prostego algorytmu kodującego i dekodującego, która umożliwiła by mi kompresje dźwięku. Oczywiście jakąś zrozumiałą dla człowieka(chce stopniowo zagłebić się w tajnikach kompresji dźwięku).
Mogą być jakieś sample w C.
Zna ktoś takie coś?

0

a 4bity@16kHz? polecam też ADPCM, a jeśli chcesz coś trochę bardziej ambitnego, to DPCM ze stworzonym przez Ciebie algorytmem predykcji.

0

Dzięki za odpowiedź.
Jeszcze mam takie małe pytanko. Czym na linuxie moge zmienić częstotliwość próbkowania i rozdzielczość pliku wav?
Jestem teraz zmuszony posiedzieć na linuxie, bo na windowsie dało się zwykłym rejestratorem dźwięku to zmienić :/

0

mencoder, audacity?

0

Mam audacity... niestety tam mogę przestawić częstotliwość próbkowania, a rozdzielczość już nie. Nie ma opcji aby ustawić 8bitową rozdzielczość. Na windowsa (vista) też nie moge znaleźć - myślałem że będzie łatwiej.

0

Rozdzielczość ustawisz przy zapisie. Jako typ pliku wybierasz "Other uncompressed files", a potem "Opcje..."

1 użytkowników online, w tym zalogowanych: 0, gości: 1