1. 下載http://code.google.com/p/rowboat/專用的android2.3 從這裡下載和官方的區別是
增加了兩個目錄
/hardware/ti/omx
/external/ti-dsp
2.DVSDK: Digital video software development kit
裡面有dsplink,dsp/bios,codec-enginer,codec-omap3530專用轉碼器,dvtb,demo,linux核心
3.dvsdk安裝到android中
ti-dsp/目錄下有
fake-toolchain get_tidsp.sh install_dvsdk4.exp Makefile md5sum.list patches
包含了安裝指令碼,方便對dvsdk的安裝,包括環境配置,指令檔先判斷有沒有安裝的目錄是否已經安裝好
再看有沒有安裝包,最後就是打補丁
運行指令碼的時候需要裝expect
tcl8.5.12-src.tar.gz tk8.5.12-src.tar.gz expect5.45.tar.gz
./configure
make
make install
預設安裝的路徑是/usr/local/
所以需要改ti-dsp裡的指令碼
install_dvsdk4.exp
#!/usr/local/bin/expect -f
編譯android的時候進行安裝
android/build/core/rowboat.mk
DSP_PATH := $(wildcard external/ti-dsp)
編譯omx和ti-dsp,omx要使用ti-dsp的dvsdk中的庫所又先編譯
make -C external/ti-dsp combo_target=$(combo_target) $(combo_target)TOOLS_PREFIX=$($(combo_target)TOOLS_PREFIX) HOST_PREBUILT_TAG=$(HOST_PREBUILT_TAG)
make -C hardware/ti/omx combo_target=$(combo_target) $(combo_target)TOOLS_PREFIX=$($(combo_target)TOOLS_PREFIX) HOST_PREBUILT_TAG=$(HOST_PREBUILT_TAG)
4.編譯完後會自動把產生的庫複製到檔案系統中
cp /hardware/ti/omx/video/libomx_dsp_video_sharedlibrary.so
out/target/product/myboard/system/lib
cp /hardware/ti/omx/audio/libomx_dsp_audio_sharedlibrary.so
out/target/product/myboard/system/lib
cp /hardware/ti/omx/interface/libdspengineiface.so
out/target/product/myboard/system/lib
5.產生ko
out/target/product/myboard/system/ti-dsp/
cmemk.ko cs.x64P dsplinkk.ko lpm_omap3530.ko sdmak.ko
修改init.rc
# load DSP modules
insmod /system/ti-dsp/cmemk.ko "phys_start=0x84f00000 phys_end=0x85900000 allowOverlap=1 useHeaplfPooIUnavailable=1"
insmod /system/ti-dsp/dsplinkk.ko
insmod /system/ti-dsp/lpm_omap3530.ko
insmod /system/ti-dsp/sdmak.ko