gstreamer/subprojects/gst-plugins-bad/sys/nvcodec
Seungha Yang e5132a8508 cudaupload,cudadownload: Add support for dGPU NVMM
Implement NVMM <-> CUDA, GL, SYSTEM memory conversion. Jetson is
not supported yet. Note that NVMM <-> GL interop on Jetson platform
is supported by GstGL

Some example pipelines are:
- Convert NVMM to GstGL memory
  nvv4l2decoder ! "video/x-raw(memory:NVMM)" ! cudadownload ! "video/x-raw(memory:GLMemory)" ! glimagesink

- Upload system memory to NVMM and encode
  video/x-raw,format=NV12 ! cudaupload ! "video/x-raw(memory:NVMM)" ! nvv4l2h264enc

- Convert NVMM to GstCUDA memory and encode
  nvvideoconvert ! "video/x-raw(memory:NVMM)" ! cudaupload ! "video/x-raw(memory:CUDAMemory)" ! nvh264enc

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1865>
2022-03-07 19:05:29 +00:00
..
stub Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
cuda-converter.c nvcodec: Refactor GstCudaMemory abstraction 2022-03-06 15:39:04 +00:00
cuda-converter.h nvcodec: Refactor GstCudaMemory abstraction 2022-03-06 15:39:04 +00:00
cuviddec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstcudabasefilter.c nvcodec: Refactor GstCudaMemory abstraction 2022-03-06 15:39:04 +00:00
gstcudabasefilter.h nvcodec: Refactor basetransform subclasses 2022-03-06 15:39:04 +00:00
gstcudabasetransform.c nvcodec: Refactor basetransform subclasses 2022-03-06 15:39:04 +00:00
gstcudabasetransform.h nvcodec: Refactor basetransform subclasses 2022-03-06 15:39:04 +00:00
gstcudabufferpool.c nvcodec: Refactor GstCudaMemory abstraction 2022-03-06 15:39:04 +00:00
gstcudabufferpool.h cudabufferpool: Move GstCudaContext object to public member 2022-03-06 15:39:04 +00:00
gstcudacontext.c cudacontext: Require explicit gpu id instead of auto (-1) 2022-03-06 15:39:04 +00:00
gstcudacontext.h cudacontext: Require explicit gpu id instead of auto (-1) 2022-03-06 15:39:04 +00:00
gstcudaconvert.c nvcodec: Refactor basetransform subclasses 2022-03-06 15:39:04 +00:00
gstcudaconvert.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstcudafilter.c Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstcudafilter.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstcudaformat.h cudaupload,cudadownload: Add support for dGPU NVMM 2022-03-07 19:05:29 +00:00
gstcudaloader.c nvcodec: Indent update 2022-03-06 15:39:04 +00:00
gstcudaloader.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstcudamemory.c nvcodec: Refactor GstCudaMemory abstraction 2022-03-06 15:39:04 +00:00
gstcudamemory.h nvcodec: Refactor GstCudaMemory abstraction 2022-03-06 15:39:04 +00:00
gstcudamemorycopy.c cudaupload,cudadownload: Add support for dGPU NVMM 2022-03-07 19:05:29 +00:00
gstcudamemorycopy.h nvcodec: Refactor cudaupload/download and add support for GL memory 2022-03-06 15:39:04 +00:00
gstcudanvmm.c cudaupload,cudadownload: Add support for dGPU NVMM 2022-03-07 19:05:29 +00:00
gstcudanvmm.h cudaupload,cudadownload: Add support for dGPU NVMM 2022-03-07 19:05:29 +00:00
gstcudanvrtc.c Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstcudanvrtc.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstcudascale.c nvcodec: Indent update 2022-03-06 15:39:04 +00:00
gstcudascale.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstcudautils.c nvcodec: Add missing null check in context sharing code 2022-03-06 15:39:04 +00:00
gstcudautils.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstcuvidloader.c nvcodec: Indent update 2022-03-06 15:39:04 +00:00
gstcuvidloader.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvbaseenc.c nvcodec: Refactor GstCudaMemory abstraction 2022-03-06 15:39:04 +00:00
gstnvbaseenc.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvdec.c nvcodec: Refactor GstCudaMemory abstraction 2022-03-06 15:39:04 +00:00
gstnvdec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvdecoder.c nvcodec: Refactor GstCudaMemory abstraction 2022-03-06 15:39:04 +00:00
gstnvdecoder.h nvdecoder: Fix for HEVC 4:4:4 format decoding 2022-02-07 18:27:48 +00:00
gstnvenc.c nvh264enc: add constrained-baseline to the caps profiles 2021-10-21 09:06:08 +00:00
gstnvenc.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvh264dec.c nvdecoder: Fix for HEVC 4:4:4 format decoding 2022-02-07 18:27:48 +00:00
gstnvh264dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvh264enc.c nvh264enc: add constrained-baseline to the caps profiles 2021-10-21 09:06:08 +00:00
gstnvh264enc.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvh265dec.c nvh265sldec: Fix for decoding 12bits stream 2022-02-07 18:27:48 +00:00
gstnvh265dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvh265enc.c Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvh265enc.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvrtcloader.c nvcodec: Indent update 2022-03-06 15:39:04 +00:00
gstnvrtcloader.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvvp8dec.c nvdecoder: Fix for HEVC 4:4:4 format decoding 2022-02-07 18:27:48 +00:00
gstnvvp8dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstnvvp9dec.c nvdecoder: Fix for HEVC 4:4:4 format decoding 2022-02-07 18:27:48 +00:00
gstnvvp9dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
meson.build cudaupload,cudadownload: Add support for dGPU NVMM 2022-03-07 19:05:29 +00:00
nvcuvid.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
nvEncodeAPI.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
plugin.c cudaupload,cudadownload: Add support for dGPU NVMM 2022-03-07 19:05:29 +00:00