tegra_multimedia_api里的README

致谢:http://blog.csdn.net/stefansalvatore/article/details/54915811



本人的是TX2:

编译和运行指南

==============

按照本文档的过程编译和运行示例:

1. 输出环境变量

2. 通过Jetpack,安装NVIDIA(r) CUDA(r)/Opencv4tegra(r) / cuDNN(r)/ GIE(r)(也被称作TensorRT(tm))

3. 创建软连接。

4. 编译和运行示例。 

输出环境变量

==============

1. 基于目标平台,使用以下命令,导出ARM应用二进制接口:

[plain]  view plain  copy
  1. $ export TEGRA_ARMABI=aarch64-linux-gnu  


2. 导出XDisplay,使用以下命令:

[plain]  view plain  copy
  1. $ export DISPLAY=:0  


安装NVIDIA(r) CUDA(r)/ Opencv4tegra(r) / cuDNN(r) / GIE(r) (also known as TensorRT(tm)) via Jetpack

=============================================================================

注:如果你已经安装了它们,你可以跳过以下步骤。

1. 从以下网站下载Jetpack包:

  https://developer.nvidia.com/embedded/downloads

2. 使用以下命令,在host机器上运行安装脚本:

[plain]  view plain  copy
  1. $ chmod +x  ./JetPack-L4T-<version>-linux-x64.run  
  2. $ ./JetPack-L4T-<version>-linux-x64.run  

3. 选择"Jetson TX1 Development Kit(64bit) and Ubuntu host".

4. 选择 "custom" and 点击 "clear action".

5. 选择"CUDA Toolkit for L4T", "OpenCV for Tegra","cuDNN Package" 和  "TensorRT",然后安装它们。

6. 对于安装细节,查看安装文件夹。


创建所需的软连接

=====================

使用以下命令创建软连接:

[plain]  view plain  copy
  1. $ cd /usr/lib/${TEGRA_ARMABI}  
  2. $ sudo ln -sf tegra-egl/libEGL.so.1 libEGL.so  
  3. $ sudo ln -sf tegra-egl/libGLESv2.so.2 libGLESv2.so  
  4. $ sudo ln -sf libv4l2.so.0 libv4l2.so  

编译和运行示例

=====================

1. 改变路径为

[plain]  view plain  copy
  1. $HOME/tegra_multimedia_api/samples  
对于本节中的程序。

2. 关于交叉编译的详细细节,看以下文件(可选)

 tegra_multimedia_api/CROSS_PLATFORM_SUPPORT


1. 视频解码

-----------------------------

这个示例演示了怎样从本地文件解码H.264/H.265视频,支持解码功能。

建立并运行00_video_decode,使用以下命令:

[plain]  view plain  copy
  1. $ cd 00_video_decode  
  2. $ make  
  3. $ ./video_decode <in-file> <in-format> [options]  


2. 编码由YUV到H.264/H.265

-----------------------------------------------------
这个示例演示了怎样从本地YUV文件编码为H.264/H.265,使用可支持的编码功能。

编译和运行01_video_encode,使用以下命令:

[plain]  view plain  copy
  1. $ cd 01_video_encode  
  2. $ make  
  3. $ ./video_encode <in-file> <in-width> <in-height> <encoder-type> <out-file> [OPTIONS]  

8. 视频格式转换

-------------------------------------------------

这个示例演示了怎样使用V4L2接口来做视频格式转换和视频缩放。

编译和运行07_video_convert,使用以下命令:

[plain]  view plain  copy
  1. $ cd 07_video_convert  
  2. $ make  
  3. $ ./video_convert <in-file> <in-width> <in-height> <in-format> <out-file> <out-width> <out-height> <out-format> [OPTIONS]  


9. 一个相机预览流的JPEG编码

--------------------------------------------------

这个示例演示了怎样使用Argus接口来预览相机流并且同时使用libjpeg-8b接口来编码JPEG图像。

编译和运行 09_camera_jpeg_capture,使用以下命令:

[plain]  view plain  copy
  1. $ cd 09_camera_jpeg_capture  
  2. $ make  
  3. $ ./camera_jpeg_capture [OPTIONS]  

这个捕捉预览流能够显示通过HDMI。JPEG文件被保存在当前路径。


10. 使用相机录制流,H.264编码

------------------------------------------------------------

这个示例演示了怎样使用Argus接口来得到实时的相机流,并且把它给视频编码器来生成H.264/H.265视频文件。

编译和运行10_camera_recording,使用以下命令:

[plain]  view plain  copy
  1. $ cd 10_camera_recording  
  2. $ make  
  3. $ ./camera_recording [OPTIONS]  
H.264视频文件被创建在当前目录下。

11. 相机目标识别

------------------------------------

这个示例演示了怎样使用相机Argus接口来得到实时的相机流,并且把它们给Caffe来进行目标分类。

想了解这个示例的细节,查看11_camera_object_identification/README。


12. Backend

---------------------------------

这个示例演示如何从本地文件,解码多路的H.264和H.265,并且给YUV通道中的一个进入GIE来实时。最后,显示框内的原始图像来自GIE。

Backend with GIE(默认)

在Makefile里做以下变化,确保以下变量被设置为1:

[plain]  view plain  copy
  1. ENABLEGIE := 1  
编译和运行 backend with GIE ,使用以下命令:

[plain]  view plain  copy
  1. $ cd backend  
  2. $ make  
  3. $ ./backend 1 ../../data/video/sample_outdoor_car_1080p_10fps.h264 H264 \  
  4.                 --gie-deployfile ../../data/model/GoogleNet-modified.prototxt \  
  5.                 --gie-modelfile ../../data/model/GoogleNet-modified-online_iter_30000.caffemodel \  
  6.                 --gie-forcefp32 0 --gie-proc-interval 1 -fps 10  
注:GIE的批大小能够被配置从以下文件的第三行。

../../data/model/GoogleNet-modified.prototxt

在这里有效值是1(默认),或者2,或者4。

Backend without GIE

在Makefile里做以下变化,确保以下变量被设置为0:

[plain]  view plain  copy
  1. ENABLEGIE := 0  
编译和运行backend without GIE ,使用以下命令:

[plain]  view plain  copy
  1. $ cd backend  
  2. $ make  
  3. $ ./backend <channel-num> <in-file1> <in-file2>... <in-format> [options]  
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值