您好,登錄后才能下訂單哦!
經過前幾篇文章的介紹,您的系統已經構建成功了,接下來就要開發自己的應用程序了。開發應用程序一個就是根據TI的結構來建立工程。一個很重要的就是DSP和ARM的雙核通信。下面我一一介紹。
我們看一下DVSDK下面有哪些內容,查看一下:
root@ubuntu:/home/dm6467t/dvsdk_3_10_00_19#ls
bin dvtb_4_20_10
bios_5_41_00_06 edma3_lld_01_11_00_03
biosutils_1_02_02 examples
C6000CGT7.4.2 examples-r37
cg_xml framework_components_2_25_02_06
codec_engine_2_25_05_16 kernel_binaries
cs2dm6467_1_00_00_10 linux_dvsdk_3_10_manifest.pdf
dm355_codecs_03_10_00_02 linuxlibs-2009.11-armv5te
dm365_codecs_03_10_00_07 linuxutils_2_25_04_10
dm365mm_01_00_03 Makefile
dmai_2_10_00_12 mapdmaq
docs mapdmaq-hd
dsplink_linux_1_64 Rules.make
DVSDK_3_10_00_19_release_notes.html uninstall
DVSDK_3_10_00_19_release_notes.pdf xdais_6_25_02_11
dvsdk_demos_3_10_00_16 xdctools_3_16_01_27
root@ubuntu:/home/dm6467t/dvsdk_3_10_00_19#
先做一個簡單的介紹
Bin:沒有什么內容,不用關注
bios_5_41_00_06:BIOS的內容,不用關注
biosutils_1_02_02:BIOS的內容,不用關注。BIOS是TI的實時操作系統,想關注的朋友建議看CCS。
C6000CGT7.4.2:DSP編譯器,在linux下編譯,在DSP上運行,也不用關注。
cg_xml:一些工具,你用不上的。
codec_engine_2_25_05_16:雙核通信的機制,你如果做DSP與ARM通信,你需要詳細研讀和理解。
cs2dm6467_1_00_00_10:雙核通信的機制,寫出了一些實用算法的集成例子,建議你詳細研讀。
dm355_codecs_03_10_00_02:看名字就知道,不用管了(DM355的,我們用的是DM6467T)。
dm365_codecs_03_10_00_07:看名字就知道,不用管了。
dm365mm_01_00_03:看名字就知道,不用管了。
dmai_2_10_00_12:你做應用開發,這個需要你做詳細的研讀。這個模塊寫了很多有用的例子,包括獲取圖像,音視頻壓縮,及其它的一些實用的例子及模塊。
Docs:沒有什么內容
dsplink_linux_1_64:這個是DSPLINK的內空,會編譯就行了,不用關注。
DVSDK_3_10_00_19_release_notes.html:文檔,可以看一下
DVSDK_3_10_00_19_release_notes.pdf:文檔,可以看一下
dvsdk_demos_3_10_00_16:TI提供的編碼,解碼,視頻輸入輸出的例子,很值得一看,建議詳讀、理解。
dvtb_4_20_10:不用關注
edma3_lld_01_11_00_03:DMA的東西,可以看看。
examples:CGI例子,沒有什么用。
examples-r37:一些例子,可以不用關注
framework_components_2_25_02_06:主要是DSP和DMA相關的東西,做算法優化的看可以看看。
kernel_binaries:編譯的兩個KO文件在這里,cmemk.ko,dsplinkk.ko,需要用到。
linux_dvsdk_3_10_manifest.pdf:可以看一下
linuxlibs-2009.11-armv5te:不用關注
linuxutils_2_25_04_10:不用關注
Makefile:前面《DM6467T開發領航——環境文件配置》中有詳細介紹
mapdmaq:不用關注
mapdmaq-hd:不用關注
Rules.make:前面《DM6467T開發領航——環境文件配置》中有詳細介紹
uninstall:不用關注
xdais_6_25_02_11:不用關注
xdctools_3_16_01_27:不用關注
經過上面的介紹,你做DVSDK有一個大致的了解了。
重點看encode這個代碼,包括音視頻采集和編碼。TI提供的這個DEMOS有個BUG,安裝好環境編譯不過去。你需要做以下修改:
在\home\dm6467t\dvsdk_3_10_00_19\dvsdk_demos_3_10_00_16\dm6467\Makefile文件中:
第一行增加:
exportCROSS_COMPILE=bin/arm-none-linux-gnueabi-
否則會找不到編譯器報錯,沒有辦法,TI提供的軟件就是有這樣那樣的問題的,不知道他們發行的時候測試過沒有。
TI提供的例子是在720P的模式的情況下運行的,我們的開發板支持的是D1輸入,我們encode做了修改。
進入到root@ubuntu:/home/dm6467t/dvsdk_3_10_00_19/dmai_2_10_00_12/packages/ti/sdo/dmai#
這個目錄。
Apps中是應用程序的例子,當要使用TI的資源不知道怎么用時,可以查看里面的例子,非常有用。
在DEMOS中調用的函數很多在linux下,你也要仔細查看,如果你能理解,最好你的應用程序拋開dami中函數,讓你的應用程序直接訪問內核,少了這個dmai,你會發現你和應用程序穩定的多。以前就發現TI提供的這個dmai中的管道就不夠穩定,用幾天就莫名的出問題。我自己做產品時基本不怎么使用dmai的這一套東西。當然先期使用的話,可以明顯加快你的研發速度。
這個里面主要包括三個方面的內容,codec、server、app
每一個算法可以做成一個CODEC,
把所有的算法集成在一個server中
APP是介紹算法的調用。
在DVSDK目錄下執行:
root@ubuntu:/home/dm6467t/dvsdk_3_10_00_19#make codecs
就可以完成對這個目錄的編譯。
你可以把\home\dm6467t\dvsdk_3_10_00_19\cs2dm6467_1_00_00_10\packages\ti\sdo\codecs
中的算法Copy到\home\dm6467t\dvsdk_3_10_00_19\codec_engine_2_25_05_16\examples\ti\sdo\ce\examples\codecs中,當然你需要增加相應的makefile文件,否則會編譯不過去的。增加了的算法可以在server中集成。
這個里面主要包括三個方面的內容,codec、server、app
每一個算法可以做成一個CODEC,
把所有的算法集成在一個server中
這個模塊中基本上包括了所有應用需要的TI提供的算法,你自己的算法可以在codec中類似的寫一個模塊,在server中集成。很方便。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。