Seungha Yang
791f1da7b8
nvcodec: nvsldec: Refactor graphics api resource handling
...
* Move GL context object to GstNVDecoder object, and remove
duplicated handling of each codec decoder element
* Don't create GL context too early. We can create it only if
we need to negotiate with downstream gl element.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2089 >
2021-03-29 15:10:54 +00:00
Seungha Yang
977c3276d4
nvcodec: Fix various typo
...
Not sure where the DECOCER came from
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1803 >
2020-11-12 13:10:13 +00:00
Seungha Yang
71564f471d
nvcodec: nvdecoder: Move to refcount based GstNvDecoderFrame
...
This refcount based way would be helpful for sharing nvdec frame among
multiple codec pictures and later zero-copy use case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1738 >
2020-11-10 14:39:40 +00:00
Seungha Yang
2a04fe5403
nvcodec: nvdecoder: Get rid of G_GNUC_INTERNAL
...
default is visibility=hidden. Don't need to use G_GNUC_INTERNAL
for new code therefore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1738 >
2020-11-10 14:39:40 +00:00
Seungha Yang
8f96361c81
nvcodec: nvsldec: Add support for CUDA memory
...
Add CUDA memory support. Note that zero copying is not supported yet
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1720 >
2020-10-27 18:31:42 +00:00
Seungha Yang
1e544f741a
nvcodec: Move common methods to nvdecoder
...
... and remove all #ifdef from nvh264sldec implementation.
New helper methods will take care of OpenGL specific ones.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1357 >
2020-06-24 16:25:58 +00:00
Seungha Yang
9c21923f04
nvcodec: Add H264 stateless codec implementation
...
Introduce GstH264Decoder based Nvidia H.264 decoder element.
Similar the element factory name of to v4l2 stateless codec,
this element can be configured with factory name "gstnvh264sldec".
Note that "sl" in the name stands for "stateless"
For now, existing nvh264dec covers more profile and formats
(e.g., interlaced stream) than this implementation.
However, this implementation allows us to control lower level
parameters such as decoded picture buffer management and therefore
we can get a chance to improve performance in terms of latency.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1198 >
2020-04-24 09:23:10 +00:00