mpv-player / mpv

🎥 Command line video player
https://mpv.io
Other
28.02k stars 2.88k forks source link

vo_opengl and vdpau hw decoding crashes on Mesa [was: opengl vo does not work with vdpau hwdec but other vo works] #1580

Closed swamp-fish closed 9 years ago

swamp-fish commented 9 years ago

Kubuntu 14.04, using the latest drivers from oibaf ppa and mpv with vdpau crashes, here is the log(http://filepi.com/i/vStGvmo). Note: mplayer with vdpau enabled works and if i choose mpv in Smplayer options it doesn't crash and CPU usage is much smaller then if i choose xv there.

ghost commented 9 years ago

It's almost certainly a driver issue with the vdpau OpenGL-interop. If the interop is not used, it probably works fine. I don't know what smplayer does (it typically overrides a lot of mpv defaults, so I can't predict what it does).

Can you run the crashing command under gdb and make a backtrace? Some instructions are at the end of http://mpv.io/bug-reports/ .

PS: don't use such a shitty filehoster, especially not for relatively small text files, for which you could use something pastebin-like.

swamp-fish commented 9 years ago

Here is backtrace output http://pastebin.com/YUnKQm6S Its not just Smplayer, pure mplayer also worked http://pastebin.com/MMG6yy3c

ghost commented 9 years ago

Thanks for the backtrace. The crash seems to be somewhere in the vdpau driver. Because everything is compiled without debug infos, I can't tell more from that backtrace.

Its not just Smplayer, pure mplayer also worked

mpv should also work with --vo=vdpau --hwdec=vdpau.

It's just the opengl interop which is (likely) broken. (mplayer doesn't use it btw.)

swamp-fish commented 9 years ago

You're right it works with those options. I am going to write to mesa about it. Out of curiosity, what does this interop do and why is it better than just vdpau option?

ghost commented 9 years ago

Out of curiosity, what does this interop do and why is it better than just vdpau option?

The interop allows mpv to display the hardware-decoded image with OpenGL. It's not better or worse than just vo_vdpau, but it does allow using certain vo_opengl features like scaling. It also means that we can do every kind of hardware decoding we support with the same VO, which is useful to make hardware decoding work out of the box. (It's probably slightly slower than vo_vdpau, though.)

ghost commented 9 years ago

I am going to write to mesa about it.

Oh, and thanks for doing this. Can you link the mesa bug report here when you're done?

swamp-fish commented 9 years ago

I was about to report a bug and saw an update, updated and it appears everything works again, they fixed it already. Sorry for disturbance.

Moiman commented 9 years ago

Here is upstream bug report. https://bugs.freedesktop.org/show_bug.cgi?id=86837 and its fixed in mesa git http://cgit.freedesktop.org/mesa/mesa/commit/?id=c39dbfdd0f764b1aaa7319b4694e7335692993dd

ghost commented 9 years ago

Closing since fixed in Mesa a while ago.