Accelerated GStreamer User Guide - Nvidia

1y ago
3 Views
1 Downloads
594.35 KB
68 Pages
Last View : 14d ago
Last Download : 3m ago
Upload by : Axel Lin
Transcription

ACCELERATED GSTREAMERUSER GUIDEDA 07303-4.0 March 18, 2019Release 32.1

DOCUMENT CHANGE HISTORYDA 07303-4.0VersionDateAuthorsDescription of Changev1.001 May 2015NVIDIAInitial release.v1.130 Jun 2015mzensiusAdded rotation and scaling commands, othernew content.v1.203 Nov 2015emilyhChanges for 23.1v1.319 Nov 2015mzensiusAdded note for display export.v1.417 Dec 2015hlangUpdated gst-nvivafilter sample pipelines.Updated steps to build gstreamer manually.v1.508 Jan 2016kstoneAdded nvvidconv interpolation method.v1.529 Jan 2016hlangAdditional syntax changes for 23.2 releasev2.011 May 2016mzensiusMinor change to nvgstcapture options.v3.011 Aug 2016mzensiusVersioned for 24.2 release. GStreamer-0.10content removed. Also Adds Video Croppingexample, interpolation methods for videoscaling, EGLStream producer example, and anEGL Image transform example.v3.106 Oct 2016mzensiusMinor updates to video encoder features.v3.1.121 Nov 2016mzensiusChanged title of document.V3.212 Jan 2017mzensiusAdds H.264/H.265 encoder documentation.Also corrects the GStreamer-1.0 installationprocedure.3.203 Mar 2017hlangUpdate date/moniker for L4T 27.1 release. Noother updates.3.313 Jul 2017mzensiusMinor edit to command syntax, and update ofdate/moniker for L4T 28.1 release.3.401 Dec 2017mzensiusIncludes support for NVIDIA Jetson TX1,previously documented elsewhere. Alsoincludes Overlay Sink information, andformatting enhancements.3.523 Feb 2018kstoneAdded support for the nvarguscamerasrcplugin. Corrected erroneous path. Reformattedcommands for line breaks.3.528 Feb 2018hlangUpdate the GStreamer installation and setuptable to add nvcompositor.Accelerated GStreamer User GuideDA 07303-4.0 ii

3.620 April 2018kstoneAdded prerequisites for Video Composition.3.723 July 2018jsachsAdd steps to be performed when testingWayland based GST plugin, playing video, orrunning Wayland based apps on Waylanddisplay server.3.829 August 2018jsachsUpdates for L4T release 31 & GStreamerversion 1.14.3.92 November 2018JsachsUpdates for L4T release 31.1. Jetson TX1 andTX2 not supported.4.018 March 2019jsachsUpdates for L4T release 32.1. Jetson TX2 andJetson Nano supported.Accelerated GStreamer User GuideDA 07303-4.0 iii

TABLE OF CONTENTSAccelerated GStreamer User Guide .1GStreamer-1.0 Installation and Setup. 1Decode Examples . 4Audio Decode Examples Using gst-launch-1.0. 4Video Decode Examples Using gst-launch-1.0. 5Video Decode Using gst-omx . 5Video Decode Using gst-v4l2 . 7Image Decode Examples Using gst-launch-1.0 . 8Encode Examples. 8Audio Encode Examples Using gst-launch-1.0 . 8Video Encode Examples Using gst-launch-1.0 . 9Video Encode Using gst-omx . 9Video Encode Using gst-v4l2 . 10Image Encode Examples Using gst-launch-1.0 . 12Supported H.264/H.265/VP8/VP9 Encoder Features with GStreamer-1.0 . 12Features Supported Using gst-omx . 12Features Supported Using gst-v4l2 . 17Camera Capture with GStreamer-1.0 . 23Video Playback with GStreamer-1.0. 24Video Format Conversion with GStreamer-1.0. 27raw-yuv Input Formats . 27raw-yuv Output Formats . 28NVIDIA Input and Output Formats . 28Video Scaling with GStreamer-1.0 . 29raw-yuv Input Formats . 29raw-yuv Output Formats . 30NVIDIA Input and Output Formats . 30Video Cropping with GStreamer-1.0 . 32Video Transcode with GStreamer-1.0 . 32CUDA Video Post-Processing with GStreamer-1.0 . 37gst-videocuda . 37gst-nvivafilter . 38Video Rotation with GStreamer-1.0 . 39Video Composition with GStreamer-1.0 . 41Interpolation Methods for Video Scaling . 42EGLStream Producer Example. 43EGL Image Transform Example. 43Accelerated GStreamer User GuideDA 07303-4.0 iv

GStreamer Build Instructions . 45Nvgstcapture-1.0 Reference . 48Command Line Switches . 48CSI Camera Supported Resolutions . 51CSI Camera Runtime Commands . 51USB Camera Runtime Commands . 52Notes . 53nvgstplayer-1.0 Reference . 55nvgstplayer Command Line Switches. 55nvgstplayer Runtime Commands . 57Video Encoder Features . 59Supported Cameras . 61CSI Cameras . 61USB 2.0 Cameras . 61Industrial Camera Details . 61Accelerated GStreamer User GuideDA 07303-4.0 v

ACCELERATED GSTREAMER USER GUIDEThis document is a user guide for the GStreamer version 1.0 based accelerated solutionincluded in NVIDIA Tegra Linux Driver Package (L4T) for NVIDIA Jetson AGXXavier devices.NoteReferences to GStreamer version 1.0 apply to GStreamer version1.14.GSTREAMER-1.0 INSTALLATION AND SETUPThis section describes how to install and configure GStreamer.To install GStreamer-1.0 Install GStreamer-1.0 on the platform with the following commands:sudo add-apt-repository universesudo add-apt-repository multiversesudo apt-get updatesudo apt-get install gstreamer1.0-tools gstreamer1.0-alsa \gstreamer1.0-plugins-base gstreamer1.0-plugins-good \gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly \gstreamer1.0-libavsudo apt-get install libgstreamer1.0-dev \libgstreamer-plugins-base1.0-dev \libgstreamer-plugins-good1.0-dev \libgstreamer-plugins-bad1.0-devAccelerated GStreamer User GuideDA 07303-4.0 1

Accelerated GStreamer User GuideTo check the GStreamer-1.0 version Check the GStreamer-1.0 version with the following command:gst-inspect-1.0 --versionGStreamer-1.0 Plugin ReferenceNoteThe gst-omx plugin is deprecated in Linux for Tegra (L4T) Release 32.1.Use the gst-v4l2 plugin instead.GStreamer version 1.0 includes the following gst-omx video decoders:Video DecoderDescriptionomxh265decOpenMAX IL H.265 Video decoderomxh264decOpenMAX IL H.264 Video decoderomxmpeg4videodecOpenMAX IL MPEG4 Video decoderomxmpeg2videodecOpenMAX IL MPEG2 Video decoderomxvp8decOpenMAX IL VP8 Video decoderomxvp9decOpenMAX IL VP9 video decoderGStreamer version 1.0 includes the following gst-v4l2 video decoders:Video EncodersDescriptionV4L2 H.265 Video decoderV4L2 H.264 Video decodernvv4l2decoderV4L2 VP8 video decoderV4L2 VP9 video decoderV4L2 MPEG4 video decoderV4L2 MPEG2 video decoderGStreamer version 1.0 includes the following gst-omx video encoders:Video EncodersDescriptionomxh264encOpenMAX IL H.264/AVC video encoderomxh265encOpenMAX IL H.265/AVC video encoderomxvp8encOpenMAX IL VP8 video encoder (supported with NVIDIA Jetson TX2/TX2i and NVIDIA Jetson Nano ; not supportedwith NVIDIA Jetson AGX Xavier )omxvp9encOpenMAX IL VP9 video encoder (supported with Jetson TX2and Jetson AGX Xavier; not supported with Jetson Nano)GStreamer version 1.0 includes the following gst-v4l2 video encoders:Accelerated GStreamer User GuideDA 07303-4.0 2

Accelerated GStreamer User GuideVideo EncodersDescriptionnvv4l2h264encV4l2 H.264 video encodernvv4l2h265encV4l2 H.265 video encodernvv4l2vp8encV4l2 VP8 video encoder (supported with Jetson TX2/TX2i andJetson Nano; not supported with Jetson AGX Xavier)nvv4l2vp9encV4l2 VP9 video encoder (supported with Jetson AGX Xavier andJetson; not supported with Jetson Nano)GStreamer version 1.0 includes the following gst-omx video sink:Video SinknvoverlaysinkDescriptionOpenMAX IL videosink elementGStreamer version 1.0 includes the following EGL image video sink:Video SinkDescriptionnveglglessinkEGL/GLES videosink element, both the X11 andWayland backendsnv3dsinkEGL/GLES videosink elementGStreamer version 1.0 includes the following DRM video sink:Video SinknvdrmvideosinkNoteDescriptionDRM videosink elementThe nvoverlaysink plugin is deprecated in L4T Release 32.1.Use nvdrmvideosink and nv3dsink instead for render pipelineswith gst-v4l2 decoder.GStreamer version 1.0 includes the following proprietary NVIDIA plugins:NVIDIA Proprietary PluginDescriptionnvarguscamerasrcCamera plugin for ARGUS APInvvidconvVideo format conversion & scalingnvcompositorVideo compositornveglstreamsrcActs as GStreamer Source Component, acceptsEGLStream from EGLStream producernvvideosinkVideo Sink Component. Accepts YUV-I420 format andproduces EGLStream (RGBA)nvegltransformVideo transform element for NVMM to EGLimage(supported with nveglglessink only)GStreamer version 1.0 includes the following libjpeg based JPEG image videoencode/decode plugins:Accelerated GStreamer User GuideDA 07303-4.0 3

Accelerated GStreamer User GuideJPEGDescriptionnvjpegencJPEG encoder elementnvjpegdecJPEG decoder elementNoteExecute this command on the target before starting the videodecode pipeline using gst-launch or nvgstplayer.export DISPLAY :0Start the X server with xinit &, if it is not already running.DECODE EXAMPLESThe examples in this section show how you can perform audio and video decode withGStreamer.NoteGStreamer version 0.10 support is deprecated in Linux for Tegra(L4T) Release 24.2. Use of GStreamer version 1.0 is recommendedfor development.Audio Decode Examples Using gst-launch-1.0The following examples show how you can perform audio decode using GStreamer-1.0.AAC Decode (OSS Software Decode)gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux name demux demux.audio 0 ! \queue ! avdec aac ! audioconvert ! alsasink -eAMR-WB Decode (OSS Software Decode)gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux name demux demux.audio 0 ! queue ! avdec amrwb ! \audioconvert ! alsasink -eAMR-NB Decode (OSS Software Decode)gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux name demux demux.audio 0 ! queue ! avdec amrnb ! \audioconvert ! alsasink -eAccelerated GStreamer User GuideDA 07303-4.0 4

Accelerated GStreamer User GuideMP3 Decode (OSS Software Decode)gst-launch-1.0 filesrc location filename.mp3 ! mpegaudioparse ! \avdec mp3 ! audioconvert ! alsasink -eNoteTo route audio over HDMI, set the alsasink property device asfollows:hw:Tegra,3Video Decode Examples Using gst-launch-1.0The following examples show how you can perform video decode on GStreamer-1.0.Video Decode Using gst-omxThe following examples show how you can perform video decode using the gst-omxplugin on GStreamer-1.0.H.264 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux name demux demux.video 0 ! queue ! h264parse ! omxh264dec ! \nveglglessink -eH.265 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux name demux demux.video 0 ! queue ! h265parse ! omxh265dec ! \nvoverlaysink -e10-bit H.265 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename 10bit.mkv ! \matroskademux ! h265parse ! omxh265dec ! nvvidconv ! \'video/x-raw(memory:NVMM), format (string)NV12' ! \nvoverlaysink -e12-bit H.265 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename 12bit.mkv ! \matroskademux ! h265parse ! omxh265dec ! nvvidconv ! \'video/x-raw(memory:NVMM), format (string)NV12' ! \nvoverlaysink -eAccelerated GStreamer User GuideDA 07303-4.0 5

Accelerated GStreamer User GuideNoteFor decode use cases with low memory allocation requirements (e.g. onJetson Nano), use the enable-low-outbuffer property of the gstomx decoder plugin.For an example, see the pipeline below.gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux ! h265parse ! omxh265dec enable-low-outbuffer 1 ! \'video/x- raw(memory:NVMM), format (string)NV12' ! fakesink sync 1 -eNoteTo enable max perf mode, use the disable-dvfs property of the gstomx decoder plugin. Expect increased power consumption in max perfmode.For an example, see the pipeline below.gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux ! h265parse ! omxh265dec disable-dvfs 1 ! \'video/x-raw(memory:NVMM), format (string)NV12' ! fakesink sync 1 -eVP8 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux name demux demux.video 0 ! queue ! omxvp8dec ! \nvoverlaysink -eNoteIf the primary display is NOT used to render video, use the displayid property of nvoverlaysink.For example, refer to the pipeline below.gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux name demux demux.video 0 ! queue ! omxvp8dec ! \nvoverlaysink display-id 1 -eVP9 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename.mp4 ! \matroskademux name demux demux.video 0 ! queue ! omxvp9dec ! \nvoverlaysink display-id 1 -eAccelerated GStreamer User GuideDA 07303-4.0 6

Accelerated GStreamer User GuideMPEG-4 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename.mp4 ! \qtdemux name demux demux.video 0 ! queue ! mpeg4videoparse ! \omxmpeg4videodec ! nveglglessink -eMPEG-2 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename.ts ! \tsdemux name demux demux.video 0 ! queue ! mpegvideoparse ! \omxmpeg2videodec ! nveglglessink -eVideo Decode Using gst-v4l2The following examples show how you can perform video decode using gst-v4l2 pluginon GStreamer-1.0.H.264 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename h264.mp4 ! \qtdemux ! queue ! h264parse ! nvv4l2decoder ! nv3dsink -eNoteTo enable max perf mode, use the enable-max-performance propertyof the gst-v4l2 decoder plugin. Expect increased power consumption inmax perf mode.For an example, see the pipeline below.gst-launch-1.0 filesrc location filename h264.mp4 ! \qtdemux ! queue ! h264parse ! nvv4l2decoder \enable-max-performance 1 ! nv3dsink -eH.265 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename h265.mp4 ! \qtdemux ! queue ! h265parse ! nvv4l2decoder ! nv3dsink -e10-bit H.265 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename 10bit.mkv ! \matroskademux ! queue ! h265parse ! nvv4l2decoder ! nvvidconv ! \'video/x-raw(memory:NVMM), format (string)NV12' ! nv3dsink -eAccelerated GStreamer User GuideDA 07303-4.0 7

Accelerated GStreamer User Guide12-bit H.265 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename 12bit.mkv ! \matroskademux ! queue ! h265parse ! nvv4l2decoder ! nvvidconv ! \'video/x-raw(memory:NVMM), format (string)NV12' ! nv3dsink -eVP9 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename vp9.mkv ! \matroskademux ! queue ! nvv4l2decoder ! nv3dsink -eVP8 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename vp8.mkv ! \matroskademux ! queue ! nvv4l2decoder ! nv3dsink -eMPEG-4 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename mpeg4.mp4 ! \qtdemux ! queue ! mpeg4videoparse ! nvv4l2decoder ! nv3dsink -eMPEG-2 Decode (NVIDIA Accelerated Decode)gst-launch-1.0 filesrc location filename mpeg2.ts ! \tsdemux ! queue ! mpegvideoparse ! nvv4l2decoder ! nv3dsink -eImage Decode Examples Using gst-launch-1.0The following examples show how you can perform JPEG decode on GStreamer-1.0.gst-launch-1.0 filesrc location filename.jpg ! nvjpegdec ! \imagefreeze ! xvimagesink -eENCODE EXAMPLESThe examples in this section show how you can perform audio and video encode withGStreamer.Audio Encode Examples Using gst-launch-1.0The following examples show how you can perform audio encode on GStreamer-1.0.Accelerated GStreamer User GuideDA 07303-4.0 8

Accelerated GStreamer User GuideAAC Encode (OSS Software Encode)gst-launch-1.0 audiotestsrc ! \'audio/x-raw, format (string)S16LE,layout (string)interleaved, rate (int)44100, channels (int)2' ! \voaacenc ! qtmux ! filesink location test.mp4 -eAMR-WB Encode (OSS Software Encode)gst-launch-1.0 audiotestsrc ! \'audio/x-raw, format (string)S16LE, layout (string)interleaved, \rate (int)16000, channels (int)1' ! voamrwbenc ! qtmux ! \filesink location test.mp4 -eVideo Encode Examples Using gst-launch-1.0The following examples show how you can perform video encode with GStreamer-1.0.Video Encode Using gst-omxThe following examples show how you can perform video encode using the gst-omxplugin with GStreamer-1.0.H.264 Encode (NVIDIA Accelerated Encode)gst-launch-1.0 videotestsrc ! \'video/x-raw, format (string)I420, width (int)640, \height (int)480' ! omxh264enc ! \'video/x-h264, stream-format (string)byte-stream' ! h264parse ! \qtmux ! filesink location test.mp4 -eH.265 Encode (NVIDIA Accelerated Encode)gst-launch-1.0 videotestsrc ! \'video/x-raw, format (string)I420, width (int)640, \height (int)480' ! omxh265enc ! filesink location test.h265 -e10-bit H.265 Encode (NVIDIA Accelerated Encode)gst-launch-1.0 nvarguscamerasrc ! \'video/x-raw(memory:NVMM), width (int)1920, height (int)1080, \format (string)NV12, framerate (fraction)30/1' ! \nvvidconv ! 'video/x-raw(memory:NVMM), format (string)I420 10LE' !omxh265enc ! matroskamux ! filesink location test 10bit.mkv -eAccelerated GStreamer User GuideDA 07303-4.0 9

Accelerated GStreamer User GuideVP8 Encode (NVIDIA Accelerated, Supported with Jetson TX2/TX2i andJetson Nano)gst-launch-1.0 videotestsrc ! \'video/x-raw, format (string)I420, width (int)640, \height (int)480' ! omxvp8enc ! matroskamux ! \filesink location test.mkv -eVP9 Encode (NVIDIA Accelerated, Supported with Jetson TX2 and JetsonAGX Xavier)gst-launch-1.0 videotestsrc ! \'video/x-raw, format (string)I420, width (int)640, \height (int)480' ! omxvp9enc ! matroskamux ! \filesink location test.mkv -eMPEG-4 Encode (OSS Software Encode)gst-launch-1.0 videotestsrc ! \'video/x-raw, format (string)I420, width (int)640, \height (int)480' ! avenc mpeg4 ! qtmux ! \filesink location test.mp4 -eH.263 Encode (OSS Software Encode)gst-launch-1.0 videotestsrc ! \'video/x-raw, format (string)I420, width (int)704, \height (int)576' ! avenc h263 ! qtmux ! filesink location test.mp4 -eVideo Encode Using gst-v4l2The following examples show how you can perform video encode using gst-v4l2 pluginwith GStreamer-1.0.H.264 Encode (NVIDIA Accelerated Encode)gst-launch-1.0 nvarguscamerasrc ! \'video/x-raw(memory:NVMM), width (int)1920, height (int)1080, \format (string)NV12, framerate (fraction)30/1' ! nvv4l2h264enc ! \bitrate-8000000 ! h264parse ! qtmux ! filesink \location filename h264.mp4 -eNoteTo enable max perf mode, use the maxperf-enable property of thegst-v4l2 encoder plugin. Expect increased power consumption inmax perf mode.Accelerated GStreamer User GuideDA 07303-4.0 10

Accelerated GStreamer User GuideFor an example, see the pipeline below.gst-launch-1.0 nvarguscamerasrc ! \'video/x-raw(memory:NVMM), width (int)1920, height (int)1080, \format (string)NV12, framerate (fraction)30/1' ! nvv4l2h264enc \maxperf-enable 1 bitrate 8000000 ! h264parse ! qtmux ! filesink \location filename h264.mp4 -eH.265 Encode (NVIDIA Accelerated Encode)gst-launch-1.0 nvarguscamerasrc ! \'video/x-raw(memory:NVMM), width (int)1920, height (int)1080, \format (string)NV12, framerate (fraction)30/1' ! nvv4l2h265enc \bitrate 8000000 ! h265parse ! qtmux ! filesink \location filename h265.mp4 -eVP9 Encode (NVIDIA Accelerated Encode)gst-launch-1.0 nvarguscamerasrc ! \'video/x-raw(memory:NVMM), width (int)1920, height (int)1080, \format (string)NV12, framerate (fraction)30/1' ! nvv4l2vp9enc \bitrate 8000000 ! matroskamux ! filesink \location filename vp9.mkv -eVP9 Encode with IVF Headers (NVIDIA Accelerated Encode)gst-launch-1.0 nvarguscamerasrc ! \'video/x-raw(memory:NVMM), width (int)1920, height (int)1080, \format (string)NV12, framerate (fraction)30/1' ! nvv4l2vp9enc \enable-headers 1 bitrate 8000000 ! filesink \location filename vp9.vp9 -eVP8 Encode (NVIDIA Accelerated Encode)gst-launch-1.0 nvarguscamerasrc ! \'video/x-raw(memory:NVMM), width (int)1920, height (int)1080, \format (string)NV12, framerate (fraction)30/1' ! nvv4l2vp8enc \bitrate 8000000 ! matroskamux ! filesink \location filename vp8.mkv -eAccelerated GStreamer User GuideDA 07303-4.0 11

Accelerated GStreamer User GuideVP8 Encode with IVF Headers (NVIDIA Accelerated Encode)gst-launch-1.0 nvarguscamerasrc ! \'video/x-raw(memory:NVMM), width (int)1920, height (int)1080, \format (string)NV12, framerate (fraction)30/1' ! nvv4l2vp8enc \enable-headers 1 bitrate 8000000 ! filesink \location filename vp8.vp8 -eImage Encode Examples Using gst-launch-1.0The following examples show how you can perform JPEG encode on GStreamer-1.0 .Image Encodegst-launch-1.0 videotestsrc num-buffers 1 ! \'video/x-raw, width (int)640, height (int)480, \format (string)I420' ! nvjpegenc ! filesink location test.jpg -eSupported H.264/H.265/VP8/VP9 Encoder Features withGStreamer-1.0This section describes example gst-launch-1.0 usage for features supported by theNVIDIA accelerated H.264/H.265/VP8/VP9 encoders.Features Supported Using gst-omxThis section describes example gst-launch-1.0 usage for features supported by theNVIDIA accelerated H.264/H.265/VP8/VP9 gst-omx encoders.NoteDisplay detailed information on omxh264enc or omxh265enc encoderproperties with the gst-inspect-1.0 [omxh264enc omxh265enc omxvp8enc omxvp9enc] command.Set I-Frame Intervalgst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! omxh264enc iframeinterval 100 ! qtmux ! \filesink location test.mp4 -eSet Temporal-Tradeoff (Rate at Which the Encoder Should Drop Frames)gst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \Accelerated GStreamer User GuideDA 07303-4.0 12

Accelerated GStreamer User Guideformat (string)I420' ! omxh264enc temporal-tradeoff 1 ! qtmux ! \filesink location test.mp4 -eConfiguring temporal tradeoff causes the encoder to intentionally, periodically, dropinput frames. The following modes are supported:ModeDescription0Disable1Drop 1 in 5 frames2Drop 1 in 3 frames3Drop 1 in 2 frames4Drop 2 in 3 framesSet Rate Control Modegst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! omxh264enc control-rate 1 ! qtmux ! \filesink location test.mp4 -eThe following modes are supported:ModeDescription0Disable1Variable bit rate2Constant bit rate3Variable bit rate with frame skip. The encoder skipsframes as necessary to meet the target bit rate.4Constant bit rate with frame skipSet Peak Bitrategst-launch-1.0 videotestsrc num-buffers 200 is-live true ! \'video/x-raw,width 1280,height 720,format I420' ! \omxh264enc bitrate 6000000 peak-bitrate 6500000 ! qtmux ! \filesink location test.mp4 -eIt takes effect only in variable bit rate(control-rate 1) mode. By default, the value isconfigured as (1.2*bitrate).Accelerated GStreamer User GuideDA 07303-4.0 13

Accelerated GStreamer User GuideSet Quantization Range for I, P and B FrameThe format for the range is the following:" I range : P range : B range "Where I range , P range and B range are each expressed as hyphenatedvalues, as shown in the following example:gst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! \omxh264enc qp-range "10,30:10,35:10,35" ! qtmux ! \filesink location test.mp4 -eThe range of B frames does not take effect if the number of B frames is 0.Set Hardware Preset Levelgst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! omxh264enc preset-level 0 ! qtmux ! \filesink location test.mp4 -eThe following modes are etOnly Integer Pixel (integer-pel) block motion isestimated. For I/P macroblock mode decision, onlyIntra 16 x 16 cost is compared with Inter modes costs.Supports Intra 16 x 16 and Intra 4 x 4 modes.2MediumPresetSupports up to Half Pixel (half-pel) block motionestimation. For an I/P macroblock mode decision, onlyIntra 16 x 16 cost is compared with Inter modes costs.Supports Intra 16 x 16 and Intra 4 x 4 modes.3SlowPresetSupports up to Quarter Pixel (Qpel) block motionestimation. For an I/P macroblock mode decision, Intra4 x 4 as well as Intra 16 x 16 cost is compared withInter modes costs. Supports Intra 16 x 16 and Intra 4 x4 modes.Accelerated GStreamer User GuideDA 07303-4.0 14

Accelerated GStreamer User GuideSet Profilegst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! omxh264enc profile 8 ! qtmux ! \filesink location test.mp4 -eFrom omxh264enc, the following profiles are supported:ProfileDescription1Baseline profile2Main profile8High profileSet Levelgst-launch-1.0 videotestsrc num-buffers 200 is-live true ! \'video/x-raw, format (string)I420, width (int)256, height (int)256, \framerate (fraction)30/1' ! omxh264enc bitrate 40000 !\'video/x-h264, level (string)2.2' ! qtmux ! \filesink location test.mp4 -eFrom omxh264enc, the following levels are supported: 1, 1b, 1.2, 1.3, 2, 2.1,2.2, 3, 3.1, 3.2, 4, 4.1, 4.2, 5, 5.1, and 5.2.From omxh265enc, the following levels are supported: main1, main2, main2.1,main3, main3.1, main4, main4.1, main5, high1, high2, high2.1,high3, high3.1, high4, high4.1, and high5.Set Number of B Frames Between Two Reference Framesgst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! omxh264enc num-B-Frames 2 ! qtmux ! \filesink location test.mp4 -eNoteB-frame-encoding is not supported with omxh265enc.Insert SPS and PPS at IDRgst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! omxh264enc insert-sps-pps 1 ! qtmux ! \filesink location test.mp4 -eAccelerated GStreamer User GuideDA 07303-4.0 15

Accelerated GStreamer User GuideIf enabled, a sequence parameter set (SPS) and a picture parameter set (PPS) are insertedbefore each IDR frame in the H.264/H.265 stream.Enable Two-Pass CBRgst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! omxh264enc EnableTwopassCBR 1control-rate 2 ! qtmux ! filesink location test.mp4 -eTwo-pass CBR must be enabled along with constant bit rate (control-rate 2).Set Virtual Buffer Sizegst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! omxh264enc vbv-size 10 ! qtmux ! \filesink location test.mp4 -eIf the buffer size of decoder or network bandwidth is limited, configuring virtual buffersize can cause video stream generation to correspond to the limitations according to thefollowing formula:virtual buffer size vbv-size * (bitrate/fps)Enable Stringent Bitrategst-launch-1.0 nvarguscamerasrc num-buffers 200 ! \'video/x-raw(memory:NVMM),width 1920,height 1080,format (string)NV12' ! \omxh264enc control-rate 2 vbv-size 1 EnableTwopassCBR true \EnableStringentBitrate true ! qtmux ! filesink location test.mp4 -eStringent Bitrate must be enabled along with constant bit rate (control-rate 2), two-passCBR being enabled, and virtual buffer size being set.Slice-Header-Spacing with Spacing in Terms of MBgst-launch-1.0 videotestsrc num-buffers 200 ! \'video/x-raw, width (int)1280, height (int)720, \format (string)I420' ! \omxh264enc slice-header-spacing 200 bit-packetization 0 ! \qtmux ! filesink location test.mp4 -eAccelerated GStreamer User GuideDA 07303-4.0 16

Accelerated GStreamer User GuideThe parameter bit-packetization 0 configures the network abstraction layer(NAL) packet as macroblock (MB)-based, and slice-header-spacing 200configures each NAL packet as 200 MB at maximum

Accelerated GStreamer User Guide . Accelerated GStreamer User Guide DA_07303-4.0 5 . MP3 Decode (OSS Software Decode) gst-launch-1. filesrc location filename.mp3 ! mpegaudioparse ! \ avdec_mp3 ! audioconvert ! alsasink -e Note To route audio over HDMI, set the alsasink property device as follows: hw:Tegra,3

Related Documents:

NVIDIA virtual GPU products deliver a GPU Experience to every Virtual Desktop. Server. Hypervisor. Apps and VMs. NVIDIA Graphics Drivers. NVIDIA Virtual GPU. NVIDIA Tesla GPU. NVIDIA virtualization software. CPU Only VDI. With NVIDIA Virtu

Veriton P330 F2 product summary Designed for users demanding an excellent combination of performance and expandability, the Veriton P330 F3 is a best-of-class choice for both computing and rendering capabilities Intel Xeon E5 processors 8 DIMMs DDR3 ECC memory NVIDIA Quadro400 NVIDIA Quadro600 NVIDIA Quadro2000 NVIDIA Quadro4000 NVIDIA QuardroK5000

NVIDIA PhysX technology—allows advanced physics effects to be simulated and rendered on the GPU. NVIDIA 3D Vision Ready— GeForce GPU support for NVIDIA 3D Vision, bringing a fully immersive stereoscopic 3D experience to the PC. NVIDIA 3D Vision Surround Ready—scale games across 3 panels by leveraging

all 250 W or the rack is power constrained, the board power can be set to a lower level. nvidia-smi nvidia-smi is an in-band monitoring tool provided with the NVIDIA driver and can be used to set the maximum power consumption with driver running in persistence mode. An example command to enable Max-Q is shown (power limit 180 W): nvidia-smi -pm 1

Gigabyte GA-8N-SLI-Quad Royal NVIDIA nForce4 SLI Intel Ed. F5 Gigabyte GA-K8N Pro-SLI NVIDIA nForce4 SLI F4 Gigabyte GA-K8N-SLI NVIDIA nForce4 SLI F9 - 31 - BIOS Gigabyte GA-K8N51GMF NVIDIA nForce 410/GeForce 6100 F7 Gigabyte GA-K8N51PVM9-RH NVIDIA nForce 430/GeForce 6150 F1

NVIDIA CAPTURE SDK : INTERFACES NVFBC: NVIDIA Frame Buffer Capture NVIFR: NVIDIA In-band Frame Render L i n u x W i n d o w s-ToHWEnc interfaces internally invoke NVENC API (part of NVIDIA Video Codec SDK) NVIFR - NVIFR Directx NVIFRToSys NVIFRToHWEnc NVIFR - OpenGL NVFB

NVIDIA Jetson AGX Orin Series Technical Brief v1.1 TB_10749-001_v1.1 4 Table 1: Jetson AGX Orin Series Technical Specifications Jetson AGX Orin 32GB Jetson AGX Orin 64GB AI Performance 200 TOPS (INT8) 275 TOPS (INT8) GPU NVIDIA Ampere architecture with 1792 NVIDIA CUDA cores and 56 Tensor Cores NVIDIA Ampere architecture

successfully in captivity, yet animal nutrition is a new and relatively unexplored field. Part of the problem is a lack of facilities in zoological institutions and a lack of expertise. There is, thus, a strong need to develop nutritional studies and departments in zoological institutions. Research on nutrition is carried out both as a problem-solving exercise (in relation to ill-health or .