NVIDIA DRIVE OS Linux SDK API Reference

5.1.12.0 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvmedia_vop.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017 - 2019, NVIDIA CORPORATION. All rights reserved. All
3  * information contained herein is proprietary and confidential to NVIDIA
4  * Corporation. Any use, reproduction, or disclosure without the written
5  * permission of NVIDIA Corporation is prohibited.
6  */
7 
15 #ifndef _NVMEDIA_VOP_H
16 #define _NVMEDIA_VOP_H
17 
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21 
22 #include "nvmedia_core.h"
23 #include "nvmedia_common.h"
24 #include "nvmedia_video.h"
25 
39 #define NVMEDIA_VOP_VERSION_MAJOR 3
40 
41 #define NVMEDIA_VOP_VERSION_MINOR 0
42 
46 typedef struct {
48  uint32_t width;
50  uint32_t height;
52  float_t refreshRate;
54 
60 typedef struct {
62  uint32_t width;
64  uint32_t height;
66  float_t refreshRate;
68 
72 typedef struct {
74  uint32_t displayId;
78  uint32_t width;
80  uint32_t height;
82  float_t refreshRate;
84 
96  NvMediaVideoOutput *output,
97  NvMediaRect *position
98 );
99 
113  NvMediaVideoOutput *output,
114  uint32_t depth
115 );
116 
140  int32_t *outputDevices,
141  NvMediaVideoOutputDeviceParams *outputParams
142 );
143 
155  NvMediaVersion *version
156 );
157 
177  uint32_t displayId,
178  uint32_t windowId,
179  NvMediaVideoOutputPreferences *outputPreference,
180  NvMediaBool alreadyCreated
181 );
182 
187 void
189  NvMediaVideoOutput *output
190 );
191 
205 void
207  NvMediaVideoOutput *output,
208  uint32_t attributeMask,
209  NvMediaDispAttributes *attributes
210 );
211 
242  NvMediaVideoOutput *output,
243  NvMediaVideoSurface *videoSurface,
244  NvMediaRect *srcRect,
245  NvMediaRect *dstRect,
246  NvMediaVideoSurface **releaseList,
247  NvMediaTime *timeStamp
248 );
251 /*
252  * \defgroup history_nvmedia_vop History
253  * Provides change history for the NvMedia Video Output API.
254  *
255  * \section history_nvmedia_vop Version History
256  *
257  * <b> Version 1.0 </b> March 21, 2017
258  * - Initial release
259  *
260  * <b> Version 2.0 </b> May 16, 2017
261  * - Removed NvMediaVideoOutputType and NvMediaVideoOutputDevice types
262  * - Removed NvMediaVideoOutputCreateEx function
263  * - Removed NvMediaVideoOutputCheckFormatSupport function
264  * - Changed parameters of NvMediaVideoOutputCreate function
265  * - Added NvMediaVideoOutputGetVersion function
266  * - All NvMedia data types are moved to standard data types
267  *
268  * <b> Version 3.0 </b> February 6, 2019
269  * - Deprecated brightness, hue, saturation, contrast, limitedRGB and
270  * colorStandard support from \ref NvMediaVideoOutputSetAttributes.
271  * - Updated description of \ref NvMediaVideoOutputSetAttributes API to
272  * add composition, depth and position attributes
273  */
274 
275 #ifdef __cplusplus
276 }; /* extern "C" */
277 #endif
278 
279 #endif /* _NVMEDIA_VOP_H */
uint32_t width
Display width.
Definition: nvmedia_vop.h:62
NvMediaStatus NvMediaVideoOutputFlip(NvMediaVideoOutput *output, NvMediaVideoSurface *videoSurface, NvMediaRect *srcRect, NvMediaRect *dstRect, NvMediaVideoSurface **releaseList, NvMediaTime *timeStamp)
Displays a video surface using video output that NvMediaVideoOutputCreate() created.
uint32_t NvMediaBool
A boolean value, holding NVMEDIA_TRUE or NVMEDIA_FALSE.
Definition: nvmedia_core.h:80
uint32_t width
Display width.
Definition: nvmedia_vop.h:48
struct timespec NvMediaTime
Holds the media time (timespec as defined by the POSIX specification).
Definition: nvmedia_core.h:85
Holds NvMedia version information.
Definition: nvmedia_core.h:226
void NvMediaVideoOutputDestroy(NvMediaVideoOutput *output)
Destroys a video output created by NvMediaVideoOutputCreate.
NVIDIA Media Interface: Common Types for Video/Image Encode/Decode
NvMediaStatus NvMediaVideoOutputSetPosition(NvMediaVideoOutput *output, NvMediaRect *position)
Sets video output position and size.
uint32_t height
Display height.
Definition: nvmedia_vop.h:80
float_t refreshRate
Display refresh rate in Hertz.
Definition: nvmedia_vop.h:52
uint32_t width
Display width.
Definition: nvmedia_vop.h:78
NVIDIA Media Interface: Core
NvMediaStatus
Defines all possible error codes.
Definition: nvmedia_core.h:169
float_t refreshRate
Display refresh rate in Hertz.
Definition: nvmedia_vop.h:82
Holds a rectangular region of a surface.
Definition: nvmedia_core.h:133
NVIDIA Media Interface: Video Surface Processing
Holds NvMedia display attributes.
float_t refreshRate
Display refresh rate in Hertz.
Definition: nvmedia_vop.h:66
NvMediaVideoOutput * NvMediaVideoOutputCreate(uint32_t displayId, uint32_t windowId, NvMediaVideoOutputPreferences *outputPreference, NvMediaBool alreadyCreated)
Creates a video output object.
NvMediaBool enabled
Set to NVMEDIA_TRUE if the device is already enabled (initialized) by the system. ...
Definition: nvmedia_vop.h:76
uint32_t height
Display height.
Definition: nvmedia_vop.h:64
NvMediaStatus NvMediaVideoOutputSetDepth(NvMediaVideoOutput *output, uint32_t depth)
Sets video output depth.
Video output object created by NvMediaVideoOutputCreate.
Definition: nvmedia_vop.h:46
Device parameters returned by NvMediaVideoOutputDevicesQuery function.
Definition: nvmedia_vop.h:72
NvMediaStatus NvMediaVideoOutputDevicesQuery(int32_t *outputDevices, NvMediaVideoOutputDeviceParams *outputParams)
Queries the display system and returns the parameters of all display devices.
NvMediaStatus NvMediaVideoOutputGetVersion(NvMediaVersion *version)
Returns the version information for the Video Output Processing library.
Sets the preferences for the video output creation.
Definition: nvmedia_vop.h:60
uint32_t displayId
Display identification.
Definition: nvmedia_vop.h:74
void NvMediaVideoOutputSetAttributes(NvMediaVideoOutput *output, uint32_t attributeMask, NvMediaDispAttributes *attributes)
Sets NvMediaVideoOutput attributes.
A handle representing a video surface object.
Definition: nvmedia_video.h:58
uint32_t height
Display height.
Definition: nvmedia_vop.h:50