jaimun last edited by
Hi, when updating my graphic card drivers Nvidia opened a webpage with some interesting information:
At the bottom it talks about the NVDEC - Hardware-Accelerated Video Decoding.
I am using HAP for my videos now, but this seems to do native video decoding on the GPU, on "MPEG-2, VC-1, H.264 (AVCHD), H.265 (HEVC), VP8, VP9"
Any testing? Should it be faster or more efficient than HAP?
Should it work in Isadora with a common H.264, for instance?
Some research seems to point towards support by native OS frameworks. Since Isadora uses DirectShow on Windows, and AV foundation on Mac, it is likely that many of these codecs are GPU accelerated.
However, these are high computation codecs, where their development has been focused on video streaming (high compression ratios). Frames are not independent, they require data from other frames to allow for decompression. This causes difficulties for interactive playback. At the same time decompressing (even on the gpu) will be computation heavy (using a not insignificant percentage of your GPU).
Hap on the other hand, creates large files in comparison, so requires good data transmission (SSD are best.. not going to work for web streaming).
Each frame is independent, so there is no relation to other frames (much better for interactive playback).
Uses a very fast and light compression that is optimized for the GPU (requires very little of your GPUs power)
If you are playing back long HQ movies, that will play forward beginning to end at 1X playback speed, you may be better off using H.264 or a like, but for other use cases I suspect HAP will still outperform.
I would however be interested in seeing test data if available.
quick test (win 10 i7 gtx870, Isadora 2.6.1)
2x 1080p HAP
- 10% cpu usage
- 15% gpu usage
2X 1080p WMV [vc-1]
- 50% cpu usage
- 20% gpu usage (spikes up to 50%)
It seems that at least for DirectShows playback of wmv VC-1 files that some additional work is off loaded to the GPU, but probably only a portion of the work after the CPU handles the cross frame decompression.
And it is still more GPU usage than HAP, and much more CPU.
My personal tests in the past have shown that I max out cpu before I max out data transfer, and its MUCH more flexible in Isadora to have the CPU free for other uses, so I only use Hap for my projects now.