it seems that NVCUVID for Linux has some strange bug. When I try to decode mpeg2 video with cudaDecodeGL sample, it outputs some strange garbage. For instance, the result of decoding plush1_720p_10s.m2v video supplied with CUDA SDK is this: http://barbashov.pro/mpeg2.mp4.
Interesting thing is that I have three test sites for the project:
- Amazon g2.2xlarge instance with GRID K520. mpeg2 and h264 decoding both work flawlessly.
- My own PC with GTX 680. It hadn’t worked there at first, but then I’ve installed CUDA libraries for Windows, compiled samples with Visual Studio and suddenly it worked! And now mpeg2 works in Linux too. So I guess there is some sort of “switch” somewhere in video card firmware, enabling mpeg2 decoding, that can be turned on by Windows NVCUVID dll, but not by Linux libnvcuvid.so. I know it sounds fantastic, but it’s all I have.
- “Production” server. Two GTX 980 Ti, only Linux (Windows can’t be installed), mpeg2 doesn’t work.
All the sites have identical Ubuntu 15.10 with 352.79 NVIDIA driver.
How do I make it work without installing Windows? :) Any suggestions?
IMPORTANT UPDATE. If you experience this behavoir, try to set field ulCreationFlags of structure CUVIDDECODECREATEINFO to cudaVideoCreate_PreferCUVID explicitly, don’t leave it default.