Changes

Jump to navigation Jump to search
Line 66: Line 66:  
<code>cd $L4T_DIR/sources/kernel/kernel-4.9/</code>
 
<code>cd $L4T_DIR/sources/kernel/kernel-4.9/</code>
   −
* 生成默认版本烧写镜像,烧写默认镜像到TX2,准备好L4T环境
+
*生成默认版本烧写镜像,烧写默认镜像到TX2,准备好L4T环境
    
<code>cd $L4T_DIR</code>
 
<code>cd $L4T_DIR</code>
Line 74: Line 74:  
<code>sudo ./flash.sh jetson-tx2 mmcblk0p1</code>
 
<code>sudo ./flash.sh jetson-tx2 mmcblk0p1</code>
 
====下载我们的bsp包====
 
====下载我们的bsp包====
<br />
+
<code>cd $L4T_DIR</code>
    +
<code>git clone https://github.com/veyeimaging/nvidia_jetson_veye_bsp<nowiki/>.git</code>
 +
 +
<code>export RELEASE_PACK_DIR=$L4T_DIR/nvidia_jetson_veye_bsp</code>
 
====使用预编译好Image和DTB====
 
====使用预编译好Image和DTB====
<br />
      +
*升级Image文件
 +
 +
无论是使用预编译好的程序还是使用自行编译出的Image,只需在Jetson TX2板子上执行:
 +
 +
<code>sudo cp <path to your Image dir>/Image  /boot/Image -f</code>
 +
 +
*烧写DTS分区,进入烧写模式,在Host PC执行
 +
 +
<code>cp <path to your dtb dir>/dtbfilename $L4T_DIR/kernel/dtb/ -f</code>
 +
 +
<code>cd $L4T_DIR</code>
 +
 +
<code>sudo ./flash.sh -r -k kernel-dtb jetson-tx2 mmcblk0p1</code>
 +
 +
烧写完成后,断电重启。
 
====使用源码进行编译====
 
====使用源码进行编译====
    +
===== 编译kernel =====
 +
 +
* patch代码
 +
 +
<code>cp $RELEASE_PACK_DIR/drivers_source/cs_imx307 veye327/* $NVIDIA_PATH/drivers/media/i2c/</code>
 +
 +
<code>cp $RELEASE_PACK_DIR/drivers_source/kernel_csimx307veye327_config $L4T_DIR/sources/kernel/kernel-4.9/arch/arm64/configs/kernel_csimx307veye327_config</code>
 +
 +
* 编译
 +
 +
<code>cd $L4T_DIR/sources/kernel/kernel-4.9/</code>
 +
 +
<code>make ARCH=arm64 O=$TEGRA_KERNEL_OUT kernel_csimx307veye327_config</code>
 +
 +
<code>make ARCH=arm64 O=$TEGRA_KERNEL_OUT Image -j4</code>
 +
 +
编译完成的Image文件在 $TEGRA_KERNEL_OUT/arch/arm64/boot/Image,可以用于整体烧写,也可以用于动态升级。
 +
 +
以下用于整体烧写
 +
 +
<code>sudo cp $TEGRA_KERNEL_OUT/arch/arm64/boot/Image $L4T_DIR/kernel/ -f</code>
 +
 +
===== 编译DTS(TODO) =====
 +
 +
* patch代码
 +
 +
* 编译
 +
 +
kernel和DTS编译完成后,可以按照上面的步骤升级Image和DTB。
 +
 +
===应用和测试===
 +
====系统状态检测====
 +
完成系统安装后,在Jetson TX2板端执行以下命令来检测是否正确连接摄像头。
 +
 +
(Below TODO)
 +
 +
<code>dmesg | grep veye327</code>  
 +
 +
应当有如下提示:
 +
 +
<code>subdev veye327 6-003b bound</code>
 +
 +
此外,检查/dev/video0设备节点,应当是存在的。
 +
====视频流软件包和测试====
 +
=====Gstreamer Usage (TODO)=====
 +
 +
*视频预览1080p HD(硬件加速)
 +
 +
<code>gst-launch-1.0 v4l2src ! "video/x-raw,format=(string)UYVY, width=(int)1920, height=(int)1080" ! nvvidconv ! "video/x-raw(memory:NVMM),format=(string)I420" ! nvoverlaysink sync=false</code>
 +
 +
* 视频预览720p@60 HD(硬件加速)
 +
 +
<code>gst-launch-1.0 v4l2src ! "video/x-raw,format=(string)UYVY, width=(int)1280, height=(int)720, framerate=(fraction)60/1" ! nvvidconv ! "video/x-raw(memory:NVMM),format=(string)I420" ! nvoverlaysink sync=false</code>
 +
 +
*视频录像1080p HD(硬件加速)
 +
 +
<code>gst-launch-1.0 v4l2src ! "video/x-raw,format=(string)UYVY, width=(int)1920, height=(int)1080" ! nvvidconv ! "video/x-raw(memory:NVMM),format=(string)I420" ! omxh264enc qp-range=20,20:20,20:-1,-1 ! matroskamux ! queue ! filesink location=videoname.mkv</code>
 +
 +
*录像回放(硬件加速)
 +
 +
<code>gst-launch-1.0 filesrc location=videoname.mkv ! matroskademux ! h264parse ! omxh264dec ! nvoverlaysink</code>
 +
 +
*抓拍图片
 +
 +
<code>gst-launch-1.0 v4l2src num-buffers=1 ! "video/x-raw,format=(string)UYVY, width=(int)1920, height=(int)1080" ! jpegenc ! filesink location=jpgname.jpg</code>
 +
====视频控制软件包的使用(TODO)====
 +
 +
 +
<code>cd $L4T_DIR/jetson_nano/i2c_cmd/bin</code>
 +
 +
具体使用说明请见:[[VEYE-MIPI-290/327/zh/i2c|I2C脚本使用说明]]。
 
===参考资料===
 
===参考资料===
 
1. 北京瑞泰新时代公司网址:http://www.realtimes.cn/<nowiki/>。
 
1. 北京瑞泰新时代公司网址:http://www.realtimes.cn/<nowiki/>。
    
<br />
 
<br />

Navigation menu