Tegra Tx1 硬编码解码H265

Introducation

NVIDIA® TEGRA® X1 全新的移动超级芯片
全新的 Tegra X1 是我们有史以来的移动处理器。 它拥有 256 个 NVIDIA Maxwell™ GPU 核心和一颗 64 位 CPU、具备无与伦比的 4K 视频功能和超越上一代产品的节能性与性能,所有这些使其能够完美适配挑战性的移动应用。

GPU NVIDIA Maxwell 256 核 GPU DX-12、OpenGL 4.5、NVIDIA CUDA®、OpenGL ES 3.1、AEP、以及 Vulkan
CPU 8 核 CPU 、64 位 ARM® CPU 4 颗 A57 2MB 二级缓存颗粒; 4 颗 A53 512KB 二级缓存颗粒
VIDEO H.265、VP9 4K 60 fps 视频 4k H.265、4k VP9、4k H.264
POWER 20 纳米片上系统 – 台积电分离式电源轨、第四代集群交换
显示屏 4K x 2K @60Hz、1080p @120Hz HDMI 2.0 60 fps、HDCP 2.

硬解码

在其文档中已经明确说明支持硬编码、编码。通过gstreamer。

H.265 Encode (NVIDIA accelerated encode)
gst-launch-1.0 videotestsrc ! 'video/x-raw, format=(string)I420, width=(int)640, height=(int)480' ! omxh265enc ! filesink location=test.h265 -e
H.265 Decode (NVIDIA accelerated decode)
gst-launch-1.0 filesrc location=<filename.mp4> ! qtdemux name=demux demux.video_0 ! queue ! h265parse ! omxh265dec ! nvoverlaysink -e

经测试的确很强大。

测试

测试文件是Kimono_1920x1080_24.yuv,

gst-launch-1.0 filesrc location=Kimono_1920x1080_24.yuv ! videoparse format=i420 width=1920 height=1080 framerate=24 ! omxh265enc ! filesink location=Kimono_1920x1080_24.bin -e

终端输出:

Setting pipeline to PAUSED ...
Inside NvxLiteH264DecoderLowLatencyInitNvxLiteH264DecoderLowLatencyInit set DPB and MjstreamingInside NvxLiteH265DecoderLowLatencyInitNvxLiteH265DecoderLowLatencyInit set DPB and MjstreamingPipeline is PREROLLING ...
Framerate set to : 24 at NvxVideoEncoderSetParameterNvMMLiteOpen : Block : BlockType = 8 
===== MSENC =====
NvMMLiteBlockCreate : Block : BlockType = 8 
===== NVENC blits (mode: 1) into block linear surfaces =====
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 0:00:03.341615615
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

压缩10秒的1080p视频只用了3秒,已经实时。
压缩前后文件大小对比

ubuntu@tegra-ubuntu:~$ ll -h Kimono_1920x1080_24.yuv
-rw--w---- 1 ubuntu ubuntu 712M Mar  2 08:36 Kimono_1920x1080_24.yuv
ubuntu@tegra-ubuntu:~$ ll -h Kimono_1920x1080_24.bin
-rw-rw-r-- 1 ubuntu ubuntu 4.8M Mar  2 11:37 Kimono_1920x1080_24.bin

解码命令:

gst-launch-1.0 filesrc location=./Kimono_1920x1080_24.bin ! h265parse ! omxh265dec ! nvoverlaysink -e

会自动播放视频。

gstreamer的相关内容不再贴,我也只是了解了一天。知道并测试tx1能硬编码解码h265即止。

Reference

http://stackoverflow.com/questions/30583133/gstreamer-unalble-to-encode-uyvy-as-h264

文章版权归 FindHao 所有丨本站默认采用CC-BY-NC-SA 4.0协议进行授权|
转载必须包含本声明,并以超链接形式注明作者 FindHao 和本文原始地址:
https://www.findhao.net/easycoding/1646

你可能喜欢:(相似内容推荐和广告都使用了谷歌的推荐系统,需要对本站取消广告屏蔽才能显示。感谢点击↓广告支持博主~)

Find

新浪微博(FindSpace博客)QQ群:不安分的Coder(375670127) 不安分的Coder

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*