Compiling nvdec

Stirling Westrup swestrup at gmail.com
Tue Jan 2 20:00:58 UTC 2018


On Fri, Nov 24, 2017 at 3:12 PM, Nicolas Dufresne <nicolas at ndufresne.ca> wrote:
> Le vendredi 24 novembre 2017 à 04:48 -0700, Digits a écrit :
>> libgstgl-1.0.so.0 couldn't be found even though it was where expected
>> -
>> ldconfig fixed that.  Now the plugin complains of an undefined
>> symbol:
>>
>> (gst-inspect-1.0:29078): GStreamer-WARNING **: Failed to load plugin
>> '/usr/local/lib/gstreamer-1.0/libgstnvdec.so':
>> /usr/local/lib/gstreamer-1.0/libgstnvdec.so: undefined symbol:
>> cuCtxDestroy_v2
>> Could not load plugin file: Opening module failed:
>> /usr/local/lib/gstreamer-1.0/libgstnvdec.so: undefined symbol:
>> cuCtxDestroy_v2
>
> Maybe you have an older version of the SDK ?

Actually, its probably a header issue. The CUVID SDK is a REALLY badly
put together bundle of crap. Seriously, its the worst piece of
published interface
I've ever seen from a major company.

Anyway, depending on what headers you use, and which flags you compile with,
cuCtxDestroy_v2 may, or may not, be invoked when you call cuCtxDestroy().

You'll find that the cuda.h files, and the driver api files actually
*disagree* on how to
handle cases of deprecated interfaces like this, and if you're using
the headers for
one of these, but linking with the other, you'll get errors just like this.

The 3 months I spent writing our own version of nvdec for our company,
because we
couldn't wait for the gstreamer release of same, were some of the most
miserable in
my career.


More information about the gstreamer-devel mailing list