NVIDIA DeepStream SDK API Reference

5.0 Release

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvll_osd_api.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019-2020, NVIDIA CORPORATION. All rights reserved.
3  *
4  * NVIDIA Corporation and its licensors retain all intellectual property
5  * and proprietary rights in and to this software, related documentation
6  * and any modifications thereto. Any use, reproduction, disclosure or
7  * distribution of this software and related documentation without an express
8  * license agreement from NVIDIA Corporation is strictly prohibited.
9  *
10  */
11 
33 #ifndef __NVLL_OSD_API_DEFS__
34 #define __NVLL_OSD_API_DEFS__
35 
36 #include "nvll_osd_struct.h"
37 #include "nvbufsurface.h"
38 
39 #define NVOSD_PRINT_E(f_, ...) \
40  printf("libnvosd (%d):(ERROR) : " f_, __LINE__, ##__VA_ARGS__)
41 
42 #define MAX_IN_BUF 16
43 #define MAX_BORDER_WIDTH 32
44 
45 #ifdef __cplusplus
46 extern "C"
47 {
48 #endif
49 
50 typedef void * NvOSDCtxHandle;
54 typedef struct _NvOSD_FrameTextParams
55 {
65 
67 typedef struct _NvOSD_FrameRectParams
68 {
74  int num_rects;
78 
81 {
93 
95 typedef struct _NvOSD_FrameLineParams
96 {
106 
109 {
119 
122 {
132 
138 NvOSDCtxHandle nvll_osd_create_context(void);
139 
145 void nvll_osd_destroy_context(NvOSDCtxHandle nvosd_ctx);
146 
158 void nvll_osd_set_clock_params(NvOSDCtxHandle nvosd_ctx, NvOSD_TextParams *clk_params);
159 
160 
177 int nvll_osd_put_text(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameTextParams *frame_text_params);
178 
191 int nvll_osd_draw_segment_masks(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameSegmentMaskParams *frame_mask_params);
192 
218 int nvll_osd_draw_rectangles(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameRectParams *frame_rect_params);
219 
235 int nvll_osd_draw_lines(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameLineParams *frame_line_params);
236 
251 int nvll_osd_draw_arrows(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameArrowParams *frame_arrow_params);
252 
266 int nvll_osd_draw_circles(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameCircleParams *frame_circle_params);
267 
277 void *nvll_osd_set_params (NvOSDCtxHandle nvosd_ctx, int width, int height);
278 
291 int nvll_osd_init_colors_for_hw_blend(void *nvosd_ctx, NvOSD_Color_info * color_info, int num_classes);
292 
293 #ifdef __cplusplus
294 }
295 #endif
296 
297 #endif
NvOSD_MaskParams * mask_params_list
Holds mask parameters.
Definition: nvll_osd_api.h:91
struct _NvOSD_FrameCircleParams NvOSD_FrameCircleParams
Holds information about the circles in a frame.
NvBufSurfaceParams * buf_ptr
Holds a pointer to the buffer containing the frame.
Definition: nvll_osd_api.h:111
struct _NvOSD_FrameSegmentMaskParams NvOSD_FrameSegmentMaskParams
Holds information about the rectangles in a frame.
NvOSD_CircleParams * circle_params_list
Holds the parameters of the circles.
Definition: nvll_osd_api.h:130
NvBufSurface Interface
Holds information about the rectangles in a frame.
Definition: nvll_osd_api.h:80
NvOSD_LineParams * line_params_list
Holds the lines' parameters.
Definition: nvll_osd_api.h:104
NvBufSurfaceParams * buf_ptr
Holds a pointer to the buffer containing the frame.
Definition: nvll_osd_api.h:70
NvBufSurfaceParams * buf_ptr
Holds a pointer to a buffer containing a frame.
Definition: nvll_osd_api.h:57
int nvll_osd_draw_rectangles(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameRectParams *frame_rect_params)
Overlays boxes at a given location in a buffer.
struct _NvOSD_FrameTextParams NvOSD_FrameTextParams
Holds information about the text in a frame.
void * NvOSDCtxHandle
Definition: nvll_osd_api.h:50
int num_circles
Holds the number of circles.
Definition: nvll_osd_api.h:128
NvOSD_Mode mode
Holds the OSD mode to be used for processing.
Definition: nvll_osd_api.h:113
NvOSD_ArrowParams * arrow_params_list
Holds the parameters of the arrows.
Definition: nvll_osd_api.h:117
Holds information about the arrows in a frame.
Definition: nvll_osd_api.h:108
NvOSDCtxHandle nvll_osd_create_context(void)
Creates an NvOSD context.
Holds the box parameters of the box to be overlayed.
Holds information about a single buffer in a batch.
Definition: nvbufsurface.h:253
NvOSD_Mode mode
Holds the OSD mode to be used for processing.
Definition: nvll_osd_api.h:85
void nvll_osd_destroy_context(NvOSDCtxHandle nvosd_ctx)
Destroys an NvOSD context.
Holds circle parameters to be overlayed.
NvOSD_Mode mode
Holds the OSD mode to be used for processing.
Definition: nvll_osd_api.h:59
Holds the mask parameters of the segment to be overlayed.
Holds information about the text in a frame.
Definition: nvll_osd_api.h:54
Holds arrow parameters to be overlaid.
int num_strings
Holds the number of strings.
Definition: nvll_osd_api.h:61
int nvll_osd_draw_lines(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameLineParams *frame_line_params)
Overlays lines on the buffer.
NvOSD_Mode
Defines modes used to overlay boxes and text.
int nvll_osd_draw_segment_masks(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameSegmentMaskParams *frame_mask_params)
Overlays segment masks at a given location in a buffer.
struct _NvOSD_FrameRectParams NvOSD_FrameRectParams
Holds information about the rectangles in a frame.
NvOSD_Mode mode
Holds the OSD mode to be used for processing.
Definition: nvll_osd_api.h:126
int num_arrows
Holds the number of arrows.
Definition: nvll_osd_api.h:115
Holds information about the lines in a frame.
Definition: nvll_osd_api.h:95
NvOSD_TextParams * text_params_list
Holds the strings' text parameters.
Definition: nvll_osd_api.h:63
struct _NvOSD_FrameArrowParams NvOSD_FrameArrowParams
Holds information about the arrows in a frame.
int nvll_osd_init_colors_for_hw_blend(void *nvosd_ctx, NvOSD_Color_info *color_info, int num_classes)
Initializes colors for HW based blending.
Holds the box parameters of a line to be overlayed.
Holds information about the circles in a frame.
Definition: nvll_osd_api.h:121
int nvll_osd_put_text(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameTextParams *frame_text_params)
/brief Overlays clock and given text at a given location in a buffer.
NVIDIA Multimedia Utilities: On-Screen Display Manager
Holds parameters of text to be overlayed.
Holds information about the rectangles in a frame.
Definition: nvll_osd_api.h:67
int num_segments
Holds the number of rectangles.
Definition: nvll_osd_api.h:87
void * nvll_osd_set_params(NvOSDCtxHandle nvosd_ctx, int width, int height)
Sets the resolution of the frames on which the NvOSDContext is to operate.
NvOSD_RectParams * rect_params_list
Holds the rectangles' parameters.
Definition: nvll_osd_api.h:76
NvOSD_RectParams * rect_params_list
Holds the rectangles' parameters.
Definition: nvll_osd_api.h:89
NvBufSurfaceParams * buf_ptr
Holds a pointer to the buffer containing the frame.
Definition: nvll_osd_api.h:124
struct _NvOSD_FrameLineParams NvOSD_FrameLineParams
Holds information about the lines in a frame.
NvOSD_Mode mode
Holds the OSD mode to be used for processing.
Definition: nvll_osd_api.h:100
NvBufSurfaceParams * buf_ptr
Holds a pointer to the buffer containing the frame.
Definition: nvll_osd_api.h:98
void nvll_osd_set_clock_params(NvOSDCtxHandle nvosd_ctx, NvOSD_TextParams *clk_params)
Sets clock parameters for a given context.
int num_lines
Holds the number of lines.
Definition: nvll_osd_api.h:102
int num_rects
Holds the number of rectangles.
Definition: nvll_osd_api.h:74
int nvll_osd_draw_circles(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameCircleParams *frame_circle_params)
Overlays circles on the buffer.
NvBufSurfaceParams * buf_ptr
Holds a pointer to the buffer containing the frame.
Definition: nvll_osd_api.h:83
NvOSD_Mode mode
Holds the OSD mode to be used for processing.
Definition: nvll_osd_api.h:72
int nvll_osd_draw_arrows(NvOSDCtxHandle nvosd_ctx, NvOSD_FrameArrowParams *frame_arrow_params)
Overlays arrows on the buffer.