第一、 DVRRDK4.0包用到之后首先需要makesys_all一遍,然后make dvr_rdk才行,现在用的合众达的板子,需要用1G256M内存配置文件,uboot下输入:
setenv bootargs 'mem=256Mconsole=ttyO0,115200n8
root=/dev/nfs nfsroot=192.168.1.199:/RDK/DVRRDK_04.00.00.03/target/rfs_816xip=192.168.1.100:192.168.1.199:192.168.1.1:255.255.255.0::eth0:off vram=20Mnotifyk.vpssm3_sva=0xBEE00000 ddr_mem=1024M'
需要注意的是合众达板子使用的是ttyO0,自己板子用的是O2,在文件系统下需要更改etc/inittab文件里面的波特率,否则不能加载文件系统。
第二、需要解压TI提供的NVR补丁包,里面有OpenRTSP.cpp以及live555框架。当时因为没有这个包搞了好久不知道怎么调用。解压以后需要编译:make live555_all来生成live555的一些静态库:librtsprx.a以及那四个环境相关的静态库。
第三、参考DM385提供的链路文件进行修改移植,编写demo_vdec_vdis_rtsp.c等等文件,都一起放到mcfw_demo文件夹下,需要把生成的start函数放到demo.c里面去,也就是加入新的NVR功能。这里需要修改mcfw_demo下的MAKEFILE.MK文件,否则不能编译通过。
MAKEFILE.MK内容:
include$(dvr_rdk_PATH)/makerules/common_header_a8.mk
INCLUDE+= $(MCFW_INC) $(OSA_INC)$(SYSLINK_INC) $(DEVICES_INC) $(RPE_INC) $(LINUXDEVKIT_INC) $(COMMON_UTILS_INC)-I$(KERNELDIR)/usr/include -I$(live555_PATH)/netra_client \
-I$(live555_PATH)/netra_streamer_nvr\
-I$(live555_PATH)/BasicUsageEnvironment/include\
-I$(live555_PATH)/UsageEnvironment/include\
-I$(live555_PATH)/groupsock/include\
-I$(live555_PATH)/liveMedia/include\
-I$(KERNELDIR)/arch/arm/include
LIBS= $(LIB_DIR)/dvr_rdk_demo_mcfw_api.a\
$(MCFW_LIBS)\
$(AUDIO_LIBS)\
$(RPE_LIBS)\
$(TI_SW_ROOT)/cgt_a8/arago/linux-devkit/arm-arago-linux-gnueabi/lib/libstdc++.so\
$(TI_SW_ROOT)/cgt_a8/arago/linux-devkit/arm-arago-linux-gnueabi/lib/libsupc++.a\
$(LIB_DIR)/nvr_rdk_app.a\
$(LIB_DIR)/dvr_disk.a\
$(LIB_DIR)/libnsDVR_AVI.a\
$(LIB_DIR)/libnsDVR_disk.a\
$(LIB_DIR)/libnsDVR_util.a\
$(memcpy_neon_PATH)/memcpy_neon.o\
$(live555_PATH)/netra_client/librtsprx.a
include $(dvr_rdk_PATH)/makerules/common_footer_a8.mk
特别要注意的是一定要加入.so的动态库,否则会出现问题,当时被卡住一个星期。
$(TI_SW_ROOT)/cgt_a8/arago/linux-devkit/arm-arago-linux-gnueabi/lib/libstdc++.so\
$(TI_SW_ROOT)/cgt_a8/arago/linux-devkit/arm-arago-linux-gnueabi/lib/libsupc++.a\
编译还会出现各种路径问题,需要自己在根目录下Rule.make 和makefile文件下修改!
第四:这里面这些函数在DVRRDK下没有,全部屏蔽掉。
第五:
出现这个问题是因为
第六:出现这个问题,要看上一个函数frameSize的大小是否分配的合适。
第七:出现如图问题
需要再取得的帧前加帧头,问题解决。
第八:改变layout布局。。。
遗留问题:系统运行两分钟后就死机,正在寻找解决办法。
2015年11月26日21:56:39by尹雷