GstCUDA - libGstCUDA API: Difference between revisions
No edit summary |
No edit summary |
||
Line 19: | Line 19: | ||
An opaque structure representing a data buffer. | An opaque structure representing a data buffer. | ||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | |||
====GstCudaMapper==== | ====GstCudaMapper==== | ||
Line 25: | Line 26: | ||
An opaque structure representing a mapper to convert GstBuffer to GstCudaBuffer. | An opaque structure representing a mapper to convert GstBuffer to GstCudaBuffer. | ||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | |||
====GstCudaChannel==== | ====GstCudaChannel==== | ||
Line 37: | Line 39: | ||
:: width: The width of the plane. | :: width: The width of the plane. | ||
:: height: The height of the plane. | :: height: The height of the plane. | ||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | |||
====GstCudaData==== | ====GstCudaData==== | ||
Line 47: | Line 49: | ||
<b><i>Members</i></b> | <b><i>Members</i></b> | ||
:: channels: An array of planes specified as GstCudaChannel. | :: channels: An array of planes specified as GstCudaChannel. | ||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ||
Revision as of 00:41, 5 October 2017
← |
⌂ Home |
→ |
This page shows the libGstCUDA API documentation provided in the GstCUDA framework.
Description
LibGstCUDA API consists in a library that expose special structures and functions that abstracts the complexity of: handle NVMM memory type buffers, extracts the data buffer to be processed and pass it to the GPU, and recover back the processed data from the GPU to the GStreamer element. The methods implemented in the libGstCUDA API ensures an optimal performance, due to direct handling of NVMM memory type buffers and zero memory copy interface between GStreamer and CUDA.
API Documentation
Structures
GstCudaBuffer
Code typedef struct _GstCudaBuffer GstCudaBuffer
An opaque structure representing a data buffer.
GstCudaMapper
Code typedef struct _GstCudaMapper GstCudaMapper
An opaque structure representing a mapper to convert GstBuffer to GstCudaBuffer.
GstCudaChannel
Code typedef struct _GstCudaChannel GstCudaChannel
The image size and data information for a single image plane. I.e.; for I420 a plane could be either Y, U or V.
Members
- data: A pointer to the plane data. This data can be directly consumed by CUDA.
- pitch: The width of the plane plus some HW dependent extra padding.
- width: The width of the plane.
- height: The height of the plane.
GstCudaData
Code typedef struct _GstCudaData GstCudaData
Data information as an array of channels. The meaning of each channel depends on the application's color space, i.e.: for I420 they will represent Y, U and V, respectively.
Members
- channels: An array of planes specified as GstCudaChannel.
Functions
fddfdff
Code pipeline_create <name> <description>
Creates a new pipeline named after name using the description gst-launch syntax.
Parameters
- name: name of the pipeline to create.
- description: pipeline with gst-launch syntax.
Returns
- a new code: 0 "success" , 2 "Bad pipeline description", 9 "Cannot update this resource", 10 "Bad command"
← |
⌂ Home |
→ |