Jetson Linux API 参考文档

32.7.4 版本
NvVideoConverter.h
前往此文件的文档。
1 /*
2  * 版权所有 (c) 2016, NVIDIA CORPORATION。保留所有权利。
3  *
4  * 源代码和二进制形式的重新分发和使用,无论是否经过
5  * 修改,只要满足以下条件,均被允许
6  * 满足:
7  * * 源代码的重新分发必须保留上述版权
8  * 声明、此条件列表和以下免责声明。
9  * * 二进制形式的重新分发必须在上述版权
10  * 声明、此条件列表和以下免责声明中再现
11  * 文档和/或随发行版提供的其他材料。
12  * * NVIDIA CORPORATION 的名称及其
13  * 贡献者的姓名不得用于认可或推广衍生产品
14  * 未经事先明确书面许可,不得使用本软件。
15  *
16  * 本软件由版权所有者按“原样”提供,并且不提供任何
17  * 明示或暗示的保证,包括但不限于
18  * 对适销性和针对特定用途适用性的暗示保证
19  * 目的均不作担保。在任何情况下,版权所有者或
20  * 贡献者均不对任何直接、间接、偶然、特殊、
21  * 惩戒性或后果性损害(包括但不限于
22  * 采购替代商品或服务; 损失使用、数据或
23  * 利润;或业务中断)承担责任,无论是由何种原因引起,也无论基于何种理论
24  * 的责任,无论是在合同、严格责任还是侵权行为中
25  * (包括疏忽或其他)因使用而以任何方式引起的
26  * 本软件,即使已被告知可能发生此类损害。
27  */
28 
46 #ifndef __NV_VIDEO_CONVERTER_H__
47 #define __NV_VIDEO_CONVERTER_H__
48 
49 #include "NvV4l2Element.h"
50 
65 {
66 public
67 
82  static NvVideoConverter *createVideoConverter(const char *name, int flags = 0);
83 
97  int setCapturePlaneFormat(uint32_t pixfmt, uint32_t width, uint32_t height,
98  enum v4l2_nv_buffer_layout type);
111  int setOutputPlaneFormat(uint32_t pixfmt, uint32_t width, uint32_t height,
112  enum v4l2_nv_buffer_layout type);
113 
126 
139 
153 
165  int setFlipMethod(enum v4l2_flip_method method);
166 
179  int setTnrAlgorithm(enum v4l2_tnr_algorithm algorithm);
180 
193  int setYUVRescale(enum v4l2_yuv_rescale_method method);
194 
208  int setCropRect(uint32_t left, uint32_t top, uint32_t width,
209  uint32_t height);
210 
224  int setDestRect(uint32_t left, uint32_t top, uint32_t width,
225  uint32_t height);
226 
234  int waitForIdle(uint32_t max_wait_ms);
235 
236 private
240  NvVideoConverter(const char *name, int flags);
241 
242  static const NvElementProfiler::ProfilerField valid_fields =
246 };
248 #endif
NvV4l2Element
定义了基于 V4L2 组件的辅助类。
定义位置: NvV4l2Element.h:65
v4l2_nv_buffer_layout
v4l2_nv_buffer_layout
枚举,指定缓冲区布局的类型。
定义位置: v4l2_nv_extensions.h:2483
NvVideoConverter::setCropRect
int setCropRect(uint32_t left, uint32_t top, uint32_t width, uint32_t height)
设置转换器的裁剪矩形。
NvVideoConverter::setInterpolationMethod
int setInterpolationMethod(enum v4l2_interpolation_method method)
设置用于缩放的插值(滤波器)方法。
v4l2_tnr_algorithm
v4l2_tnr_algorithm
指定 TNR 算法的类型。
定义位置: v4l2_nv_extensions.h:2517
NvVideoConverter::setFlipMethod
int setFlipMethod(enum v4l2_flip_method method)
设置翻转方法。
NvVideoConverter::~NvVideoConverter
~NvVideoConverter()
NvVideoConverter::setDestRect
int setDestRect(uint32_t left, uint32_t top, uint32_t width, uint32_t height)
设置转换器的目标矩形。
NvElementProfiler::ProfilerField
int ProfilerField
定义位置: NvElementProfiler.h:79
NvVideoConverter::setTnrAlgorithm
int setTnrAlgorithm(enum v4l2_tnr_algorithm algorithm)
设置要使用的 TNR(时域降噪)算法。
NvVideoConverter::createVideoConverter
static NvVideoConverter * createVideoConverter(const char *name, int flags=0)
创建一个名为 name 的新 V4L2 视频转换器对象。
NvVideoConverter
定义了 V4L2 视频转换器的辅助类。
定义位置: NvVideoConverter.h:64
NvVideoConverter::waitForIdle
int waitForIdle(uint32_t max_wait_ms)
等待直到输出平面上排队的所有缓冲区都已转换并从捕获平面出队。
NvVideoConverter::setOutputPlaneFormat
int setOutputPlaneFormat(uint32_t pixfmt, uint32_t width, uint32_t height, enum v4l2_nv_buffer_layout type)
设置转换器输出平面上的格式。
NvVideoConverter::setCapturePlaneBufferLayout
int setCapturePlaneBufferLayout(enum v4l2_nv_buffer_layout type)
设置捕获平面缓冲区的缓冲区布局。
NvVideoConverter::setOutputPlaneBufferLayout
int setOutputPlaneBufferLayout(enum v4l2_nv_buffer_layout type)
设置输出平面缓冲区的缓冲区布局。
v4l2_yuv_rescale_method
v4l2_yuv_rescale_method
指定 YUV 重新缩放方法的类型。
定义位置: v4l2_nv_extensions.h:2530
NvElementProfiler::PROFILER_FIELD_LATENCIES
static const ProfilerField PROFILER_FIELD_LATENCIES
定义位置: NvElementProfiler.h:83
v4l2_interpolation_method
v4l2_interpolation_method
指定插值方法的类型。
定义位置: v4l2_nv_extensions.h:2505
NvElementProfiler::PROFILER_FIELD_FPS
static const ProfilerField PROFILER_FIELD_FPS
定义位置: NvElementProfiler.h:84
NvVideoConverter::setYUVRescale
int setYUVRescale(enum v4l2_yuv_rescale_method method)
设置要使用的 YUV 重新缩放方法。
NvV4l2Element.h
NvElementProfiler::PROFILER_FIELD_TOTAL_UNITS
static const ProfilerField PROFILER_FIELD_TOTAL_UNITS
定义位置: NvElementProfiler.h:81
v4l2_flip_method
v4l2_flip_method
指定旋转/翻转算法的类型。
定义位置: v4l2_nv_extensions.h:2491
NvVideoConverter::setCapturePlaneFormat
int setCapturePlaneFormat(uint32_t pixfmt, uint32_t width, uint32_t height, enum v4l2_nv_buffer_layout type)
设置转换器输出平面上的格式。
. All rights reserved.