NVIDIA Tegra Linux Driver Package

Development Guide
32.2 Release

Multimedia API
GStreamer-based Multimedia Playback
GStreamer API
GStreamer-based Camera Capture
The NVIDIA® Tegra® Linux Driver Package includes the multimedia framework modules for testing purposes.
For GStreamer information consult:
Jetson Xavier Accelerated GStreamer User Guide
Multimedia API
The Multimedia API is a collection of low-level APIs that support flexible application development. These low-level APIs enable flexibility by providing better control over the underlying hardware blocks.
The Multimedia API includes:
libargus for imaging applications
V4L2 API for encoding, decoding, scaling, and other media functions
NVOSD for On-Screen display
Buffer Utility for buffer allocation, management, and sharing, transform, composition, and blending
Example applications are provided to demonstrate:
Video decode (dual decode support with NVDEC)
Video encode (dual encode support with NVENC)
Video decode and DRM based render
Video convert
Video decode with multi-channels
Multivideo decode (decoding of multiple video streams in parallel)
JPEG decode and JPEG encode
Image/video processing with CUDA
Camera JPEG capture and video record
Camera capture and CUDA processing
Multicamera capture with composition
Object detection and classification with cuDNN
TensorRT and OpenCV usage
The Multimedia API provides another application development path for those not using a framework such as GStreamer, or for developers leveraging custom frameworks.
The Multimedia API reference is available for download at:
GStreamer-based Multimedia Playback
Installing GStreamer
Using NvGstPlayer
Use the GStreamer open source multimedia framework and the NvGstPlayer utility for testing multimedia local playback and HTTP/RTSP streaming playback use cases. The NvGstPlayer can be used as a reference implementation.
For more information about the NvGstPlayer application, refer to the ReadMe file included with the release.
Installing GStreamer
Downloand and install GStreamer directly on the target. The wrapper library, gst-openmax, is an interface between GStreamer and OpenMAX. It enables accelerated NVIDIA plug-ins in the GStreamer framework.
For more information about GStreamer, consult:
NvGstPlayer is a multimedia player test application.
Before running the NvGstPlayer and NvGstCapture applications, complete prerequisite steps and install GStreamer as directed in the README file available at:
Using NvGstPlayer
The gst-omx plugin is deprecated in Linux for Tegra (L4T) Release 32.1. Use gst-v4l2 plugin for development instead.
NvGstPlayer is a command line media file player. It plays audio/video files encapsulated in:
NvGstPlayer supports local file playback and playback over RSTP, HTTP, and UDP.
For information consult the README:
GStreamer API
GStreamer default support is migrated to version 1.14.0 on Ubuntu 18.04.
GStreamer-based Camera Capture
NvGstCapture is a command line Camera capture appliation. NvGstCapture captures video data using a camera and encapsulate encoded Video data in the container file.
For information, consult the README:
The nvgstcapture application supports the ARGUS API using the nvarguscamerasrc plugin.
Usage of legacy nvcamerasrc with the nvgstcapture application is deprecated.