extend-robotics / gst-nvvideo4linux2 Goto Github PK
View Code? Open in Web Editor NEWNvidia nvvideo4linux GStreamear source (Jetson/Tegra)
License: GNU Lesser General Public License v2.1
Nvidia nvvideo4linux GStreamear source (Jetson/Tegra)
License: GNU Lesser General Public License v2.1
gst-inspect-1.0 nvv4l2decoder
Factory Details:
Rank primary + 11 (267)
Long-name NVIDIA v4l2 video decoder
Klass Codec/Decoder/Video
Description Decode video streams via V4L2 API
Author Nicolas Dufresne <[email protected]>, Viranjan Pagar <[email protected]>
Plugin Details:
Name nvvideo4linux2
Description Nvidia elements for Video 4 Linux
Filename /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideo4linux2.so
Version 1.14.0
License LGPL
Source module nvvideo4linux2
Binary package nvvideo4linux2
Origin URL http://nvidia.com/
GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstVideoDecoder
+----GstNvV4l2VideoDec
+----nvv4l2decoder
Pad Templates:
SINK template: 'sink'
Availability: Always
Capabilities:
image/jpeg
video/x-h264
stream-format: { (string)byte-stream }
alignment: { (string)au }
video/x-h265
stream-format: { (string)byte-stream }
alignment: { (string)au }
video/mpeg
mpegversion: 4
systemstream: false
parsed: true
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
video/mpeg
mpegversion: [ 1, 2 ]
systemstream: false
parsed: true
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
video/x-divx
divxversion: [ 4, 5 ]
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
video/x-av1
video/x-vp8
video/x-vp9
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
SRC template: 'src'
Availability: Always
Capabilities:
video/x-raw(memory:NVMM)
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
Element has no clocking capabilities.
Element has no URI handling capabilities.
Pads:
SINK: 'sink'
Pad Template: 'sink'
SRC: 'src'
Pad Template: 'src'
Element Properties:
capture-buffer-dynamic-allocation: Set to enable capture buffer dynamic allocation
flags: readable, writable
Enum "CaptureBufferDynamicAllocationModes" Default: 0, "cap_buf_dyn_alloc_disabled"
(0): cap_buf_dyn_alloc_disabled - Capture buffer dynamic allocation disabled
(1): fw_cap_buf_dyn_alloc_enabled - Capture buffer dynamic allocation enabled for forward playback
(2): rw_cap_buf_dyn_alloc_enabled - Capture buffer dynamic allocation enabled for reverse playback
(3): fw_rw_cap_buf_dyn_alloc_enabled - Capture buffer dynamic allocation enabled for forward and reverse playback
capture-io-mode : Capture I/O mode (matches src pad)
flags: readable, writable
Enum "GstNvV4l2DecCaptureIOMode" Default: 0, "auto"
(0): auto - GST_V4L2_IO_AUTO
(2): mmap - GST_V4L2_IO_MMAP
device : Device location
flags: readable
String. Default: "/dev/nvhost-nvdec"
device-fd : File descriptor of the device
flags: readable
Integer. Range: -1 - 2147483647 Default: -1
device-name : Name of the device
flags: Opening in BLOCKING MODE
readable
String. Default: ""
disable-dpb : Set to disable DPB buffer for low latency
flags: readable, writable
Boolean. Default: false
drop-frame-interval : Interval to drop the frames,ex: value of 5 means every 5th frame will be given by decoder, rest all dropped
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 30 Default: 0
enable-error-check : Set to enable error check
flags: readable, writable
Boolean. Default: false
enable-frame-type-reporting: Set to enable frame type reporting
flags: readable, writable
Boolean. Default: false
enable-full-frame : Whether or not the data is full framed
flags: readable, writable
Boolean. Default: false
enable-max-performance: Set to enable max performance
flags: readable, writable
Boolean. Default: false
extra-controls : Extra v4l2 controls (CIDs) for the device
flags: readable, writable
Boxed pointer of type "GstStructure"
mjpeg : Set to open MJPEG block
flags: readable, writable
Boolean. Default: false
name : The name of the object
flags: readable, writable
String. Default: "nvv4l2decoder0"
num-extra-surfaces : Additional number of surfaces in addition to min decode surfaces given by the v4l2 driver
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 55 Default: 1
output-io-mode : Output side I/O mode (matches sink pad)
flags: readable, writable
Enum "GstNvV4l2DecOutputIOMode" Default: 0, "auto"
(0): auto - GST_V4L2_IO_AUTO
(2): mmap - GST_V4L2_IO_MMAP
(3): userptr - GST_V4L2_IO_USERPTR
parent : The parent of the object
flags: readable, writable
Object of type "GstObject"
skip-frames : Type of frames to skip during decoding
flags: readable, writable, changeable in NULL, READY, PAUSED or PLAYING state
Enum "SkipFrame" Default: 0, "decode_all"
(0): decode_all - Decode all frames
(1): decode_non_ref - Decode non-ref frames
(2): decode_key - decode key frames
gst-nvvideo4linux2/gst-v4l2/gstv4l2videoenc.c
Lines 1986 to 1991 in e3ebc13
gst-inspect-1.0 nvv4l2h264enc
Factory Details:
Rank primary + 1 (257)
Long-name V4L2 H.264 Encoder
Klass Codec/Encoder/Video
Description Encode H.264 video streams via V4L2 API
Author ayaka <[email protected]>
Plugin Details:
Name nvvideo4linux2
Description Nvidia elements for Video 4 Linux
Filename /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideo4linux2.so
Version 1.14.0
License LGPL
Source module nvvideo4linux2
Binary package nvvideo4linux2
Origin URL http://nvidia.com/
GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstVideoEncoder
+----GstV4l2VideoEnc
+----GstV4l2H264Enc
+----nvv4l2h264enc
Implemented Interfaces:
GstPreset
Pad Templates:
SRC template: 'src'
Availability: Always
Capabilities:
video/x-h264
stream-format: byte-stream
alignment: { (string)au, (string)nal }
SINK template: 'sink'
Availability: Always
Capabilities:
video/x-raw(memory:NVMM)
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
format: { (string)I420, (string)NV12, (string)P010_10LE, (string)NV24 }
framerate: [ 0/1, 2147483647/1 ]
Element has no clocking capabilities.
Element has no URI handling capabilities.
Pads:
SINK: 'sink'
Pad Template: 'sink'
SRC: 'src'
Pad Template: 'src'
Element Properties:
EnableMVBufferMeta : Enable Motion Vector Meta data for encoding
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
EnableTwopassCBR : Enable two pass CBR while encoding
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
MeasureEncoderLatency: Enable Measure Encoder latency Per Frame
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
SliceIntraRefreshInterval: Set SliceIntraRefreshInterval
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 0
bit-packetization : Whether or not Packet size is based upon Number Of bits
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
bitrate : Set bitrate for v4l2 encode
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 4000000
capture-io-mode : Capture I/O mode (matches src pad)
flags: readable, writable
Enum "GstNvV4l2EncCaptureIOMode" Default: 0, "auto"
(0): auto - GST_V4L2_IO_AUTO
(2): mmap - GST_V4L2_IO_MMAP
control-rate : Set control rate for v4l2 encode
flags: readable, writable, changeable only in NULL or READY state
Enum "GstV4l2VideoEncRateControlType" Default: 1, "constant_bitrate"
(0): variable_bitrate - GST_V4L2_VIDENC_VARIABLE_BITRATE
(1): constant_bitrate - GST_V4L2_VIDENC_CONSTANT_BITRATE
device : Device location
flags: readable
String. Default: "/dev/nvhost-msenc"
device-fd : File descriptor of the device
flags: readable
Integer. Range: -1 - 2147483647 Default: -1
device-name : Name of the device
flags: Opening in BLOCKING MODE
readable
String. Default: ""
disable-cabac : Set Entropy Coding Type CAVLC(TRUE) or CABAC(FALSE)
flags: readable, writable
Boolean. Default: false
enable-lossless : Enable lossless encoding for YUV444
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
extra-controls : Extra v4l2 controls (CIDs) for the device
flags: readable, writable
Boxed pointer of type "GstStructure"
idrinterval : Encoding IDR Frame occurance frequency
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 256
iframeinterval : Encoding Intra Frame occurance frequency
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 30
insert-aud : Insert H.264 Access Unit Delimiter(AUD)
flags: readable, writable
Boolean. Default: false
insert-sps-pps : Insert H.264 SPS, PPS at every IDR frame
flags: readable, writable
Boolean. Default: false
insert-vui : Insert H.264 VUI(Video Usability Information) in SPS
flags: readable, writable
Boolean. Default: false
maxperf-enable : Enable or Disable Max Performance mode
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
name : The name of the object
flags: readable, writable
String. Default: "nvv4l2h264enc0"
num-B-Frames : Number of B Frames between two reference frames (not recommended)
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 2 Default: 0
num-Ref-Frames : Number of Reference Frames for encoder
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 8 Default: 1
output-io-mode : Output side I/O mode (matches sink pad)
flags: readable, writable
Enum "GstNvV4l2EncOutputIOMode" Default: 0, "auto"
(0): auto - GST_V4L2_IO_AUTO
(2): mmap - GST_V4L2_IO_MMAP
(5): dmabuf-import - GST_V4L2_IO_DMABUF_IMPORT
parent : The parent of the object
flags: readable, writable
Object of type "GstObject"
peak-bitrate : Peak bitrate in variable control-rate
The value must be >= bitrate
(1.2*bitrate) is set by default(Default: 0)
flags: readable, writable, changeable in NULL, READY, PAUSED or PLAYING state
Unsigned Integer. Range: 0 - 4294967295 Default: 0
poc-type : Set Picture Order Count type value
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 2 Default: 0
preset-level : HW preset level for encoder
flags: readable, writable, changeable only in NULL or READY state
Enum "GstV4L2VideoEncHwPreset" Default: 1, "UltraFastPreset"
(0): DisablePreset - Disable HW-Preset
(1): UltraFastPreset - UltraFastPreset for high perf
(2): FastPreset - FastPreset
(3): MediumPreset - MediumPreset
(4): SlowPreset - SlowPreset
profile : Set profile for v4l2 encode
flags: readable, writable, changeable only in NULL or READY state
Enum "GstV4l2VideoEncProfileType" Default: 0, "Baseline"
(0): Baseline - GST_V4L2_H264_VIDENC_BASELINE_PROFILE
(2): Main - GST_V4L2_H264_VIDENC_MAIN_PROFILE
(4): High - GST_V4L2_H264_VIDENC_HIGH_PROFILE
(7): High444 - GST_V4L2_H264_VIDENC_HIGH_444_PREDICTIVE
qos : Handle Quality-of-Service events from downstream
flags: readable, writable
Boolean. Default: false
qp-range : Qunatization range for P, I and B frame,
Use string with values of Qunatization Range
in MinQpP-MaxQpP:MinQpI-MaxQpI:MinQpB-MaxQpB order, to set the property.
flags: readable, writable
String. Default: null
quant-b-frames : Quantization parameter for B-frames (0xffffffff=component default),
use with ratecontrol-enable = 0
and preset-level = 0
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 4294967295
quant-i-frames : Quantization parameter for I-frames (0xffffffff=component default),
use with ratecontrol-enable = 0
and preset-level = 0
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 4294967295
quant-p-frames : Quantization parameter for P-frames (0xffffffff=component default),
use with ratecontrol-enable = 0
and preset-level = 0
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 4294967295
ratecontrol-enable : Enable or Disable rate control mode
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: true
slice-header-spacing: Slice Header Spacing number of macroblocks/bits in one packet
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer64. Range: 0 - 18446744073709551615 Default: 0
vbv-size : virtual buffer size
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 4000000
Element Actions:
"force-IDR" : void user_function (GstElement* object);
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.