[RESOLVED] HEVC/H.265 10/12-bit Support

Support forum for DGDecNV
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

Don't the earlier gens support at least partial HW acceleration?
User avatar
MeteorRain
Posts: 130
Joined: Fri Jul 25, 2014 4:04 pm
Location: New Jersey

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by MeteorRain »

6th gen is the "earlier gen" to support partial hevc-10 decoding. 7th gen, the kaby lake, is the first gen to support full hw decoding on that.
DAE avatar
aceado
Posts: 25
Joined: Mon Oct 05, 2015 8:54 am

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by aceado »

don't forget for nvidia there is a total of 5 cards which does 10bit decoding.
which is: gtx 750 se, gtx 950, gtx 960 and now there's gtx 1070, gtx 1080 which is also able to support 12bit decoding :o

all details was found from https://en.wikipedia.org/wiki/Nvidia_Pu ... _SIP_block
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

Thanks for the information, aceado. Just to be clear for our readers, however, the issue we are concerned about is 10-bit support in CUVID.
DAE avatar
aceado
Posts: 25
Joined: Mon Oct 05, 2015 8:54 am

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by aceado »

couldn't you also use dvxa2 for the decoding if there isn't an option for cuvid ?
isn't the purevideo the same thing as cuvid ? (meaning what its able to decode as such)
i might be wrong but i'm guessing that means we need to wait for nvidia to add support for it in cuvid?
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

aceado wrote:couldn't you also use dvxa2 for the decoding if there isn't an option for cuvid ?
Sure, if I want to completely redesign my application. Also, I would lose low-level control over lots of things, like HW deinterlacing. My understanding is that moving to the DirectShow world would pretty much make robust frame accuracy impossible. By all means, however, correct me if I am wrong in my understanding of these matters.
isn't the purevideo the same thing as cuvid ? (meaning what its able to decode as such)
PureVideo is a marketing concept, not a technical one.
i might be wrong but i'm guessing that means we need to wait for nvidia to add support for it in cuvid?
That is precisely my point. We have to wait. nVidia told me they will do it, it's just a matter of when.
User avatar
MeteorRain
Posts: 130
Joined: Fri Jul 25, 2014 4:04 pm
Location: New Jersey

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by MeteorRain »

admin wrote:a matter of when.
Sounds unpromising :scratch:
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

Don't be a nattering nabob of negativism! You don't want to end up like the Washington Post.
DAE avatar
aceado
Posts: 25
Joined: Mon Oct 05, 2015 8:54 am

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by aceado »

one slightly of the topic question which i hope you don't mind
do you need to wait for nvidia to add support to use cuvid on newer cards when they come out i.e 1080/1070 or would they just work without any issues made just a newer build for is needed ?
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

So far we've never had to wait and the driver version that supports the new card supports the existing CUVID.
DAE avatar
aceado
Posts: 25
Joined: Mon Oct 05, 2015 8:54 am

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by aceado »

thank you answering my question :D
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

You are welcome. ;)
DAE avatar
aceado
Posts: 25
Joined: Mon Oct 05, 2015 8:54 am

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by aceado »

back again once more with another question you said unless the drivers support cuvid any new card that comes out it should work. after thinking back to the issue i notice years ago.... i came across this in the changelog which is the reason i had to wait back then (late 2012) for the support to be added since i had a kepler card

Build 2042
----------
* Added support for GTX680 (Kepler). This required moving to CUDA 4.2,
so some notebook/OEM drivers may be impacted.

so i started to look up the cuda version thingy and surely the cure toolkit 8.0 is needed to support the 1000 series cards ?

https://developer.nvidia.com/cuda-toolkit

p.s. i could be wrong on understanding how all this works :?
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

CUDA and CUVID are not the same thing. I use CUDA for fast color space conversion for display in DGIndexNV. I use CUVID for decoding in both DGIndexNV and DGDecodeNV.

Yes, I may need to update my CUDA toolkit to support 1000 series. Unfortunately, nVidia has a habit of removing support for old cards when releasing new toolkits, so it creates a dilemma for me because I am a strong believer in backward support, and nobody likes to maintain multiple versions. One option is to replace the CUDA conversion with some optimized CPU code, thereby eliminating the dependence on CUDA. We would take a hit on frame rate for display in DGIndexNV, which is not so important in any case, but we would continue to support older cards.
DAE avatar
aceado
Posts: 25
Joined: Mon Oct 05, 2015 8:54 am

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by aceado »

i can confirm that the 1000 series does work fine but i'm unsure as to how the cuda side of it might effect or would it just be ok ? (any suggestions for testing would be nice)
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

Specifically, which card do you have?

It's good to hear that it works without a CUDA toolset upgrade. That is likely because I use only a very simple kernel for the color space conversion.
DAE avatar
aceado
Posts: 25
Joined: Mon Oct 05, 2015 8:54 am

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by aceado »

it is a 1070 8-)
if there's any testing you want me to do just ask :geek: :mrgreen:
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

Lucky you! Just keep an eye out and report if you run into any issues. Thank you and congratulations for the first report on the 1000-series.

:bravo:
User avatar
MeteorRain
Posts: 130
Joined: Fri Jul 25, 2014 4:04 pm
Location: New Jersey

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by MeteorRain »

So quiet in this thread. :scratch:
DAE avatar
jpsdr
Posts: 214
Joined: Tue Sep 21, 2010 4:16 am

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by jpsdr »

Well... I think while the new 4k BR standard can't be ripped, there will not be a big use of the H265 part feature. I don't say there is no use or no one use it, just that my guess is that, for now, the number of peoples using the H265 part are probably very low.
As it's just a guess, maybe i'm wrong... ;)
User avatar
MeteorRain
Posts: 130
Joined: Fri Jul 25, 2014 4:04 pm
Location: New Jersey

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by MeteorRain »

jpsdr wrote:Well... I think while the new 4k BR standard can't be ripped, there will not be a big use of the H265 part feature. I don't say there is no use or no one use it, just that my guess is that, for now, the number of peoples using the H265 part are probably very low.
As it's just a guess, maybe i'm wrong... ;)
Some files that I currently have:

Code: Select all

General
ID                                       : 12294 (0x3006)
Complete name                            :
Format                                   : MPEG-TS
File size                                : 5.42 GiB
Duration                                 : 24mn 12s
Overall bit rate mode                    : Variable
Overall bit rate                         : 32.1 Mbps

Video
ID                                       : 4109 (0x100D)
Menu ID                                  : 33364 (0x8254)
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L5.1@Main
Codec ID                                 : 36
Duration                                 : 24mn 12s
Width                                    : 3 840 pixels
Height                                   : 2 160 pixels
Display aspect ratio                     : 16:9
Frame rate                               : 59.940 fps
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 10 bits
Color range                              : Limited
Color primaries                          : BT.2020
Transfer characteristics                 : BT.2020
Matrix coefficients                      : BT.2020 non-constant

Audio
ID                                       : 4173 (0x104D)
Menu ID                                  : 33364 (0x8254)
Format                                   : AAC
Format/Info                              : Advanced Audio Codec
Format version                           : Version 2
Format profile                           : LC
Muxing mode                              : ADTS
Codec ID                                 : 15
Duration                                 : 24mn 12s
Bit rate mode                            : Variable
Channel(s)                               : 6 channels
Channel positions                        : Front: L C R, Side: L R, LFE
Sampling rate                            : 48.0 KHz
Compression mode                         : Lossy
Delay relative to video                  : -373ms
Well, the annoying thing is that decoding of those videos takes so much time that having hardware acceleration is so important when doing re-encoding.

Hope they can do (or have done) something :scratch:
User avatar
MeteorRain
Posts: 130
Joined: Fri Jul 25, 2014 4:04 pm
Location: New Jersey

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by MeteorRain »

@admin

Looking around and find this: https://devtalk.nvidia.com/default/topi ... vid-when-/
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

Thank you for that. I was aware of that thread but hadn't seen the last post. OK, it seems we may be able to support 10->8 decoding. I will experiment with it. Meanwhile, we still wait for proper 10-bit output support in CUVID.

If we have to move to CUDA toolset 7.5 we are going to lose some older cards. :cry:
User avatar
MeteorRain
Posts: 130
Joined: Fri Jul 25, 2014 4:04 pm
Location: New Jersey

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by MeteorRain »

admin wrote:Thank you for that. I was aware of that thread but hadn't seen the last post. OK, it seems we may be able to support 10->8 decoding. I will experiment with it. Meanwhile, we still wait for proper 10-bit output support in CUVID.

If we have to move to CUDA toolset 7.5 we are going to lose some older cards. :cry:
10->8 decoding should be sufficient for now as long as it just works™.

Now sure about 7.5. I guess you can always try compiling against old toolset with the patch to find the earliest working version.

(And yes, you may have to decide whether or not to abandon these old cards. :scratch:
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: (Shameless feature request) HEVC/H.265 10-bit Support

Post by admin »

A quick test shows that it works with CUDA toolset 6.5 (the version I currently use). I am happily decoding a 10-bit HEVC MKV file in DGIndex. Sweet.

I have to code it up properly and include it in both DGIndexNV and DGDecodeNV. Then I will make a slipstream.

Thanks again, MeteorRain, for bringing this to my attention.
:bravo:
Post Reply