RTV forum PL | NewsGroups PL

Mikrokontrolery do kompresji mowy w czasie rzeczywistym przez RS-485 - STM32 vs Blackfin

uC do kompresji dźwięku

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Mikrokontrolery do kompresji mowy w czasie rzeczywistym przez RS-485 - STM32 vs Blackfin

Grzegorz Niemirowski
Guest

Sat Oct 15, 2011 1:29 pm   



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?

--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 3 days, 11 hours, 48 minutes and 6 seconds

BartekK
Guest

Sat Oct 15, 2011 2:05 pm   



W dniu 2011-10-15 15:29, Grzegorz Niemirowski pisze:
Quote:
Witam.
Potrzebuję kompresować mowę aby przesłać ją po RS-485.
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.


--
| Bartłomiej Kuźniewski
| sibi@drut.org GG:23319 tel +48 696455098 http://drut.org/
| http://www.allegro.pl/show_user_auctions.php?uid=338173

Grzegorz Niemirowski
Guest

Sat Oct 15, 2011 2:17 pm   



BartekK <sibi@NOSPAMdrut.org> napisał(a):
Quote:
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.

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.

--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 3 days, 12 hours, 54 minutes and 50 seconds

Paweł Hadam
Guest

Sat Oct 15, 2011 8:04 pm   



W dniu 15.10.2011 16:17, Grzegorz Niemirowski pisze:
Quote:
BartekK <sibi@NOSPAMdrut.org> napisał(a):
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.

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.


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ł

Grzegorz Niemirowski
Guest

Sat Oct 15, 2011 8:41 pm   



Paweł Hadam <p@p.p> napisał(a):
Quote:
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.

O, wygląda fajnie. Dzięki.

--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 3 days, 19 hours, 20 minutes and 40 seconds

Adam Dybkowski
Guest

Sat Oct 15, 2011 9:40 pm   



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

Quote:
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.

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.

--
Adam Dybkowski
http://dybkowski.net/

Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.

elonica.pl
Guest

Mon Oct 17, 2011 10:12 am   



Wlasnie,

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

----
Bartlomiej Grzeskowiak


On 15 Paź, 23:40, Adam Dybkowski <a1d2y3b4k5o6w...@g1m2a3i4l5.6c7o8m>
wrote:
Quote:
W dniu 2011-10-15 22:04 Paweł Hadam napisał(a):

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.

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.

--
Adam Dybkowski
               http://dybkowski.net/

Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.


Mario
Guest

Mon Oct 17, 2011 1:39 pm   



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

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

----
Bartlomiej Grzeskowiak



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.

--
Pozdrawiam
MD

Andrzej Ekiert
Guest

Mon Oct 17, 2011 4:23 pm   



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

Quote:
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).

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

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en554168
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en023610

Więcej o Speex: http://www.speex.org/

Pozdrawiam,
Andrzej Ekiert
--
http://www.ekiert.com/microchip

Adam Dybkowski
Guest

Mon Oct 17, 2011 7:35 pm   



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

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

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.

--
Adam Dybkowski
http://dybkowski.net/

Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.

elektroda NewsGroups Forum Index - Elektronika Polska - Mikrokontrolery do kompresji mowy w czasie rzeczywistym przez RS-485 - STM32 vs Blackfin

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map