As title, cuvidCreateDecoder failed with CUDA_ERROR_INVALID_VALUE with 4k (3840X2160) video using GT 630. It runs normally with 1080p video. In fact, I’ve tried videos with some resolutions. I found that the resolution below 1080p runs normally, otherwise, it failed with CUDA_ERROR_INVALID_VALUE. I also tried GT 730 and it runs normally with all resolutions. So, I think the decoder of GT 630 might not support resolutions higher than 1080p.
Are there any documents or specifications that I can refer to? Or, how do I know further information about the error CUDA_ERROR_INVALID_VALUE?
Sorry, I updated the Nv decode SDK and found that cuvidGetDecoderCaps can query the ability of decode. I get max decoding width/height of GT 630 is 2032/2032. However, it still failed with CUDA_ERROR_INVALID_VALUE when the resolution of source video is higher than 1080p (e.g. 1920X1440, 1920X1200).
OS: Windows 10
Codec: h264
Driver version: 23.21.13.9135
Another question. Can I use Nv Codec SDK on OS X? I’d like to make a h264 decoder application on OS X. If not, do you know any low-level decode library on OS X?
It appears you have a Fermi GPU.
As you correctly found out, cuvidGetDecoderCaps() API can be used to query the decoder capabilities.
I want to point out to the snippet in cuviddec.h from 9.0 SDK
unsigned int nMaxWidth; /**< OUT: Max supported coded width in pixels */
unsigned int nMaxHeight; /**< OUT: Max supported coded height in pixels */
unsigned int nMaxMBCount; /**< OUT: Max supported macroblock count
CodedWidth*CodedHeight/256 must be <= nMaxMBCount */
Along with width and height, macroblock count also should be within the limit.
Can you check that is causing problem for you?