CUDA on Tumbleweed and HEVC/H.265 decoding

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

CUDA on Tumbleweed and HEVC/H.265 decoding

Bjoern Voigt
Is there a way to install Nvidia CUDA on Tumbleweed?

(The official download site https://developer.nvidia.com/cuda-downloads
lists only openSUSE 13.2, SLES 11 SP4 and 2. On
https://software.opensuse.org/package/cuda-8.0 there are unofficial
packages from the Bumblebeed project. I have a Nvidia Geforce GTX 750,
which supports H.264, but not H.265 over VDPAU.)

I tried the openSUSE 13.2 packages. They install, but it seems, that
they do not work.

$ mpv --hwdec=cuda  hevc-testvideo.ts
 (+) Video --vid=1 (hevc 1920x1080 50.000fps)
 (+) Audio --aid=1 --alang=deu (aac_latm 6ch 48000Hz)
     Audio --aid=2 --alang=fra (aac_latm 2ch 48000Hz)
     Subs  --sid=1 --slang=deu,deu,fra (dvb_teletext)
[ffmpeg/video] hevc_cuvid: ctx->cvdl->cuvidCreateDecoder(&cudec,
&cuinfo) failed -> CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected
Could not open codec.
[ffmpeg/video] hevc: Could not find ref with POC 21386
AO: [pulse] 48000Hz 5.1 6ch float
VO: [opengl] 1920x1080 yuv420p
AV: 00:00:02 / 01:17:57 (0%) A-V:  0.000

Greetings,
Björn
--
To unsubscribe, e-mail: [hidden email]
To contact the owner, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: CUDA on Tumbleweed and HEVC/H.265 decoding

Jan Engelhardt-4

On Thursday 2017-09-14 17:20, Bjoern Voigt wrote:

>Is there a way to install Nvidia CUDA on Tumbleweed?
>
>I tried the openSUSE 13.2 packages. They install, but it seems, that
>they do not work.
>
>$ mpv --hwdec=cuda  hevc-testvideo.ts
> (+) Video --vid=1 (hevc 1920x1080 50.000fps)
> (+) Audio --aid=1 --alang=deu (aac_latm 6ch 48000Hz)
>     Audio --aid=2 --alang=fra (aac_latm 2ch 48000Hz)
>     Subs  --sid=1 --slang=deu,deu,fra (dvb_teletext)
>[ffmpeg/video] hevc_cuvid: ctx->cvdl->cuvidCreateDecoder(&cudec,
>&cuinfo) failed -> CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected
>Could not open codec.

/dev/nvidia* writable by the user? Are you even able to run the cuda system
monitor program (nvidia-smi)?
--
To unsubscribe, e-mail: [hidden email]
To contact the owner, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: CUDA on Tumbleweed and HEVC/H.265 decoding

Bjoern Voigt
Jan Engelhardt wrote:

> On Thursday 2017-09-14 17:20, Bjoern Voigt wrote:
>
>> Is there a way to install Nvidia CUDA on Tumbleweed?
>>
>> I tried the openSUSE 13.2 packages. They install, but it seems, that
>> they do not work.
>>
>> $ mpv --hwdec=cuda  hevc-testvideo.ts
>> (+) Video --vid=1 (hevc 1920x1080 50.000fps)
>> (+) Audio --aid=1 --alang=deu (aac_latm 6ch 48000Hz)
>>     Audio --aid=2 --alang=fra (aac_latm 2ch 48000Hz)
>>     Subs  --sid=1 --slang=deu,deu,fra (dvb_teletext)
>> [ffmpeg/video] hevc_cuvid: ctx->cvdl->cuvidCreateDecoder(&cudec,
>> &cuinfo) failed -> CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected
>> Could not open codec.
> /dev/nvidia* writable by the user? Are you even able to run the cuda system
> monitor program (nvidia-smi)?
Yes, these device files are writable:

myuser@mybox:~> test -w /dev/nvidia0 && test -w /dev/nvidiactl && test
-w /dev/nvidia-modeset && test -w /dev/nvidia-uvm && echo "$(echo
/dev/nvidia*) are writable"
/dev/nvidia0 /dev/nvidiactl /dev/nvidia-modeset /dev/nvidia-uvm are writable

nvidia-smi runs too:

myuser@mybox:~> nvidia-smi
Thu Sep 14 19:21:07 2017      
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 384.69                 Driver Version: 384.69                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util Compute M.  |
|===============================+======================+======================|
|   0  GeForce GTX 750     Off  | 00000000:01:00.0  On |                  N/A |
| 33%   38C    P8     1W /  38W |    271MiB /  2000MiB |       4%     Default |
+-------------------------------+----------------------+----------------------+
                                                                             

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0      4038    G   /usr/bin/X                                     146MiB |
|    0      4768    G   kwin_x11                                         1MiB |
|    0      4782    G   /usr/bin/krunner                                 6MiB |
|    0      4785    G   /usr/bin/plasmashell                            55MiB |
|    0      4889    G   /usr/bin/kalarm                                  1MiB |
|    0      4957    G   /usr/bin/korgac                                  1MiB |
|    0      4978    G   /usr/bin/akonadi_archivemail_agent               1MiB |
|    0      4987    G   /usr/bin/akonadi_davgroupware_resource           1MiB |
|    0      4989    G   /usr/bin/akonadi_davgroupware_resource           1MiB |
|    0      4992    G   /usr/bin/akonadi_davgroupware_resource           1MiB |
|    0      4993    G   /usr/bin/akonadi_davgroupware_resource           1MiB |
|    0      5011    G   /usr/bin/akonadi_imap_resource                   1MiB |
|    0      5045    G   /usr/bin/akonadi_mailfilter_agent                1MiB |
|    0      5056    G   /usr/bin/akonadi_newmailnotifier_agent           1MiB |
|    0      5092    G   /usr/bin/akonadi_sendlater_agent                 1MiB |
|    0      5299    G   /usr/bin/kgpg                                    1MiB |
|    0      5655    G   ...el-token=3E47AEA02A9FD842FEE7B1FF24E543E2    18MiB |
|    0     22352    G   /op                                             14MiB |
+-----------------------------------------------------------------------------+

Greetings,
Björn

--
To unsubscribe, e-mail: [hidden email]
To contact the owner, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: CUDA on Tumbleweed and HEVC/H.265 decoding

Martin Herkt
In reply to this post by Bjoern Voigt
On 2017 M09 14, Thu 17:20:22 CEST Bjoern Voigt wrote:

> Is there a way to install Nvidia CUDA on Tumbleweed?
>
> (The official download site https://developer.nvidia.com/cuda-downloads
> lists only openSUSE 13.2, SLES 11 SP4 and 2. On
> https://software.opensuse.org/package/cuda-8.0 there are unofficial
> packages from the Bumblebeed project. I have a Nvidia Geforce GTX 750,
> which supports H.264, but not H.265 over VDPAU.)
>
> I tried the openSUSE 13.2 packages. They install, but it seems, that
> they do not work.
>
> $ mpv --hwdec=cuda  hevc-testvideo.ts
>  (+) Video --vid=1 (hevc 1920x1080 50.000fps)
>  (+) Audio --aid=1 --alang=deu (aac_latm 6ch 48000Hz)
>      Audio --aid=2 --alang=fra (aac_latm 2ch 48000Hz)
>      Subs  --sid=1 --slang=deu,deu,fra (dvb_teletext)
> [ffmpeg/video] hevc_cuvid: ctx->cvdl->cuvidCreateDecoder(&cudec,
> &cuinfo) failed -> CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected
> Could not open codec.
> [ffmpeg/video] hevc: Could not find ref with POC 21386
> AO: [pulse] 48000Hz 5.1 6ch float
> VO: [opengl] 1920x1080 yuv420p
> AV: 00:00:02 / 01:17:57 (0%) A-V:  0.000
>
> Greetings,
> Björn
Sounds like a permission issue. Make sure the nvidia-uvm module is loaded and
your user is a member of the video group. Note: the GTX 750 will not support
HEVC via CUDA either. GTX 750 SE (which is a newer model) does.
It won’t work if vdpauinfo doesn’t show at least the HEVC_MAIN capability.
CUDA only adds is 10-bit support.

You don’t need to install the CUDA SDK to use the CUVID functionality that is
needed for hardware decoding.

Also, CUDA has known bugs. 10-bit decoding is broken in various ways (don’t
expect Rec. 2020/HDR to work) and even 8-bit will not always decode correctly.
Expect frame corruption, flickering, random lines of garbage at the bottom of
the screen, and juddery playback because CUDA messes with the timestamps.
Blame NVIDIA.

signature.asc (235 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: CUDA on Tumbleweed and HEVC/H.265 decoding

Bjoern Voigt
Martin Herkt wrote:

> Sounds like a permission issue. Make sure the nvidia-uvm module is loaded and
> your user is a member of the video group. Note: the GTX 750 will not support
> HEVC via CUDA either. GTX 750 SE (which is a newer model) does.
> It won’t work if vdpauinfo doesn’t show at least the HEVC_MAIN capability.
> CUDA only adds is 10-bit support.
>
> You don’t need to install the CUDA SDK to use the CUVID functionality that is
> needed for hardware decoding.
>
> Also, CUDA has known bugs. 10-bit decoding is broken in various ways (don’t
> expect Rec. 2020/HDR to work) and even 8-bit will not always decode correctly.
> Expect frame corruption, flickering, random lines of garbage at the bottom of
> the screen, and juddery playback because CUDA messes with the timestamps.
> Blame NVIDIA.
Thanks.

I found out, that "mpv" with --hwdec=cuda works perfectly with H.264
videos on my graphics cards. The answer from svencdack shows additional
details:
https://devtalk.nvidia.com/default/topic/971350/cuda-hw-acceleration-works-for-x264-but-x265-hevc-gives-me-quot-no-cuda-capable-device-is-detected-quot-/

Unfortunately there is a regression in Nvidia driver. Currently I use
384.69 from nvidia-tumbleweed repository.

With some older Nvidia driver versions, I had VDPAU as "Current Video
Playback Profile" for the MythTV frontend. This worked perfectly for
H.264 videos and OK for H.265 (CPU usage was relatively high and
sometimes I had audio/videos dropouts). With my GTX 750 H.265 decoding
was done with CPU and additional filtering and video playback was done
with the VDPAU driver. Now with Nvidia 384.69 the display is completely
black for H.265 videos. It still works with H.264 videos. As a result I
can not use the VDPAU profile anymore, because I use H.264 for
downloaded videos and H.265 for live and recorded DVB-T2 HD videos in
Germany together on the same PC. I am not sure, where I should report
this problem.

Greetings,
Björn
--
To unsubscribe, e-mail: [hidden email]
To contact the owner, e-mail: [hidden email]