1

'm using NVENC example provided with NVENC SDK. I'm manually filling YUV arrays (m_pYUV) that is passed to NVENC API. If the height is UP to 1080 everything works and I get valid video. But if I define height greater than 1080 it seems that compression still success but the video is not valid.

Why it doesn't work if the height is greater than 1080?

theateist
  • 13,879
  • 17
  • 69
  • 109
  • What does "not valid" mean? Does the NVENC API refuse to encode? Or does it encode a stream that can't be played back? A video height of 1080 is pretty common for HD video (1920x1080), so this sounds like it might be the limit of the API. However, I'm able to find literature that claims the NVENC API can encode up to 4096x4096. So I'm not sure what to think. – Multimedia Mike Jun 25 '14 at 15:10

1 Answers1

0

I was just reading the NVENC reference manual. This is my first exposure to the API, but I went in search of functions which could query the capabilities of the underlying hardware facilities.

To that end, I found NvEncGetEncodeCaps(). This takes a pointer to a NV_ENC_CAPS_PARAM structure. You can use this to query for individual capability parameters. The parameters that would be interesting to study in this case might be NV_ENC_CAPS_WIDTH_MAX and NV_ENC_CAPS_HEIGHT_MAX.

Multimedia Mike
  • 12,660
  • 5
  • 46
  • 62
  • @Mike, I'm aware of `NvEncGetEncodeCaps()`. I saw that it supports up to 4096x4096. I thought maybe someone encountered with similar problem:( – theateist Jun 25 '14 at 19:08