uC do kompresji dźwięku

Witam. Potrzebuję kompresować mowę aby przesłać ją po RS-485. Zastanawiam się, jakiego użyć mikrokontrolera, aby mógł w czasie rzeczywistym wykonywać kompresję i dekompresję (komunikacja dwustronna). Może jakiś Blackfin i kompresja MP3? A może da się to zrobić na STM32 korzystając z jakiegoś mniej skomplikowanego kodeka, np. GSM? Czy ktoś z Was przerabiał temat?

Reply to
Grzegorz Niemirowski
Loading thread data ...

W dniu 2011-10-15 15:29, Grzegorz Niemirowski pisze:

A dlaczego musisz kompresować? RS-485 bez problemu (w odpowiednich warunkach) ciągnie takie prędkości, żeby mowę (czyli wystarczy próbkowanie 8KHz i 8bitów, czyli *8 to 64kbps plus jakiś narzut protokołu) przesłać na parę kilometrów.

Reply to
BartekK

BartekK snipped-for-privacy@NOSPAMdrut.org napisał(a):

Też się nad tym zacząłem zastanawiać. Co prawda tam mają być więcej niż dwie stacje i ma być kilka-kilkanaście rozmów jednocześnie (dane przesyłane w slotach czasowych) ale chyba faktycznie będzie się mogło obejść bez kompresji.

Reply to
Grzegorz Niemirowski

W dniu 15.10.2011 16:17, Grzegorz Niemirowski pisze:

Jak potrzeba większej jakości niż 8-bit (przy zachowaniu 8-bitowej przesyłanej informacji), to można dołożyć aLaw/uLaw. Poprawia stosunek sygnału do szumu dla cichych partii. Potrzebna moc obliczeniowa praktycznie zerowa, prosta tablica wystarcza do kompresji.

Pozdrawiam, Paweł

Reply to
Paweł Hadam

Paweł Hadam snipped-for-privacy@p.p napisał(a):

O, wygląda fajnie. Dzięki.

Reply to
Grzegorz Niemirowski

W dniu 2011-10-15 22:04 Paweł Hadam napisał(a):

To trudno nazwać nawet kompresją, bo "skompresowanie" 12-16 bitowych próbek do 8-bitowych nie pozwoli zaoszczędzić znacznie pasma.

Proponuję raczej zastosować taniego ARMa i kompresować dzwięk darmowym kodekiem Vorbis (ogg). Sama biblioteka jest na licencji BSD więc można ją całkowicie dowolnie używać nawet w rozwiązaniach komercyjnych. Jedną z lepszych gotowych implementacji jest Tremor.

Reply to
Adam Dybkowski

Wlasnie,

Czy nie lepiej wziac plyte z ARM-em i linuxem. Podlaczyc konwerter RS232<->RS485 i wysylac kodowany stream na RS232 ?

---- Bartlomiej Grzeskowiak

Reply to
elonica.pl

W dniu 2011-10-17 10:12, elonica.pl pisze:

Ale płytki z ARMem i linuksem to co najmniej 200-300zł i rozmiary zbliżone do płyty ITX. Małe - jak DIMM-PC kosztują znacznie więcej a hucznie zapowiadana Raspberry przesuwana jest na koniec roku i ciekawe czy będzie faktycznie za 25$. Brak małych i tanich płytek z ARMem pod linuksa odpowiadających np Arduino. Tzn. tanich i przygotowanych do realizacji własnych wdrożeń.

ATSD pisz pod cytowanym tekstem i popraw delimiter. Powinny być dwie kreski i spacja.

Reply to
Mario

Dnia 15-10-2011 o 15:29:05 Grzegorz Niemirowski snipped-for-privacy@poczta.onet.pl> napisał(a):

Ja się jak zwykle wtrącę z rozwiązaniem od Microchipa na PIC32 lub dsPIC33F z kompresją Speex. Taniej raczej tego nie zrobisz.

formatting link
?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en023610 Więcej o Speex:
formatting link
Pozdrawiam, Andrzej Ekiert

Reply to
Andrzej Ekiert

W dniu 2011-10-17 10:12 elonica.pl napisał(a):

A po co do tego Linux? Tania płytka z kilkudziesięciomegahercowym ARMem

7TDMI (albo nawet jakimś małym Cortexem) da radę. Poczytaj o wymaganiach wydajnościowych algorytmu Vorbis.
Reply to
Adam Dybkowski

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.