ARM cross-compile toolchain használata
Ahhoz, hogy le tudjuk fordítani egy programot a Beagleboardra, szükség van egy ARM toolchain-re. Egy ajánlott toolchain a CoderSourcery toolchain, ami letölthető innen: CodeSourcery ARM toolchain installer
Installer helyett letölthető a csomagolva is, ez esetben manuálisan kell beállítani az elérési útvonalakat.
A Cross-compiler egy tipikus helye a /opt lehet. Oda kell kicsomagolni, és a fordításhoz a környezeti változókkal kell megadni a cross-compiler elérési útvonalát.
cd /optwget http://bodri.tmit.bme.hu/ip_telefon/docs/Lab/ARM/arm-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
tar -xjf arm-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
export PATH=${PATH}:/opt/arm-2010q1/bin
export ARCH=arm
export CROSS_COMPILE=arm-none-linux-gnueabi-
A Cross-compiler használata:
# edit ~/embed/main.c# arm-none-linux-gnueabi-gcc -o hello main.c
Mai feladat: hello world program megírása és lefordítása a beagleboardra.
Letöltés a beagleboardra: felmásolás az SD kártyára vagy letöltés hálózaton keresztül...
Feltöltés - megosztás
Úgy is lehet megosztani hogy feltöltitek az alábbi oldalra és onnan wget-el a Beagleboardra:
Megosztás letöltése: wget http://bodri.tmit.bme.hu/upload/filenév
RTP folytatás - vevő megvalósítása
Kiindulási pontunk a az előző órai feladat Minta forrás végeredménye. Mintaként itt elérhető Lipcsei János működő verziója: ARM codec + RTP küldés implementálva
Az RTP fogadó implementációja jóval komplexebb, mivel socket pollozás és jitter buffer implementálása is szükséges hozzá. Megoldandó feladat tehát, hogy ha adat jön akkor azt egy jitter bufferbe dekódoljuk, a PCM lejátszás pedig a jitter buffert ürítse. Ez a meglévő minta kód átgondolását igényli, mivel nem feltételezhetjük hogy a csomag mindig a PCM lejátszási idő előtt meg fog érkezni...