VLC freezes on 13.1

Hello,

I was trying to make VLC play videos but it doesn’t want to co-operate.

Few details:

openSuse 13.1
kernel 3.11.10-132.g35980e6-desktop
KDE
vlc-gnome-2.2.0-264.2.x86_64
vlc-codecs-2.2.0-264.2.x86_64
vlc-qt-2.2.0-264.2.x86_64
libvlccore8-2.2.0-264.2.x86_64
libvlccore7-2.1.5-14.1.x86_64
libvlc5-2.2.0-264.2.x86_64
libvlc6-3.0.0+git2520-1.11.x86_64
vlc-noX-2.2.0-264.2.x86_64
vlc-noX-lang-2.2.0-264.2.noarch
vlc-2.2.0-264.2.x86_64
libvlccore9-3.0.0+git2520-1.11.x86_64

I’m using vlc 2.2.0-264 from Packman repo, I was also trying 2.2.0-146 from VLC repo but didn’t helped. I was using 2.1.5 and it was using fine, I decided to do update and give it chance but it failed. Coming back to 2.1.5 is not possible due to lack of codecs (vlc-codec is 2.2.0).

I’ve also installed packages caf4926 advices :

libxine2-codecs ffmpeg lame gstreamer-0_10-plugins-good gstreamer-0_10-plugins-bad gstreamer-0_10-plugins-ugly gstreamer-0_10-plugins-bad-orig-addon gstreamer-0_10-plugins-good-extra gstreamer-0_10-plugins-ugly-orig-addon gstreamer-0_10-plugins-ffmpeg libdvdcss2 flash-player dvdauthor07 gstreamer-plugins-base gstreamer-plugins-bad gstreamer-plugins-bad-orig-addon gstreamer-plugins-good gstreamer-plugins-ugly gstreamer-plugins-ugly-orig-addon gstreamer-plugins-good-extra gstreamer-0_10-plugins-fluendo_mpegdemux gstreamer-0_10-plugins-fluendo_mpegmux k3b-codecs gecko-mediaplayer vlc smplayer h264enc x264 gstreamer-plugins-libav vlc-codecs

Problem is I don’t know what cause the problem. VLC doesn’t give any feedback in terminal. In 80% cases it freezes and even killing makes process to become zombie (that causes a lot of other strange behaviours like not being able to do sleep, restart is very long, optirun/primus are not starting applications (and doesn’t give any feedback in terminal - like they were waiting), vdpauinfo is freezing too (only output is display: :0 screen: 0 and it hang here).

The only error I recall that showed up for some time was:

/usr/lib64/vlc/plugins/vdpau/libvdpau_avcodec_plugin.so

And without vlc-codecs (with 2.1.5) I got:

No suitable decoder module:
 VLC does not support the audio or video format "mp4v". Unfortunately there is no way for you to fix this.
 No suitable decoder module:
 VLC does not support the audio or video format "mpga". Unfortunately there is no way for you to fix this.

Any advice where to look up for answer?

What GPU and what drivers for it are you using? Have you tried changing VLC’s Video Output driver from Automatic to X11 or SDL for example.

Also is there a specific reason you’re running a non-standard kernel? The default updated one is 3.11.10-25-default/desktop etc.

I’m using NVIDIA Bumblebee. I’m tried this kernel due to few reasons like getting smaller CPU temp (I thought it might be drivers problem). I tried 3.11.10-25-default but it didn’t help. But switching VLC’s Video Output driver to X11 and SDL helped (Still I was unable to open *.mkv). Open GL (GLX) for example didn’t work. How can I resolve this issue to make all of them work or at least to feel that VLC can handle it or its own? Is such behavior normal?

Thanks Miuku for your fast reply - At least I know that there is something wrong with drivers/libs.

If you have vlc-codecs installed and try to play the .mkv from terminal with; vlc -v filename.mkv, what does it output?

Have you tried mplayer / smplayer? Do they play the .mkv files?

If you have vlc-codecs installed and try to play the .mkv from terminal with; vlc -v filename.mkv, what does it output?


[00007fb1d8c01838] mkv demux error: Dummy element too large or misplaced at 3309314339... skipping to next upper element
[00007fb1d8c01838] mkv demux error: This element is outside its known parent... upping level
[00007fb1d8c01838] mkv demux error: Dummy element too large or misplaced at 3309317499... skipping to next upper element
[00007fb1d8c01838] mkv demux error: This element is outside its known parent... upping level

Have you tried mplayer / smplayer? Do they play the .mkv files?

Yeah SMPlayer is handling all of them and there was no time I could recall that SMPlayer had any problem with something.

Still, is it normal that VLC is not working on Automatic selection or not working with others like vdpau?

Playing with the Kernel and using bumblebee may not be the best idea. The NVIDIA-bumblebee package is made for the default installed kernel version. It may not work with some other kernel version unless you recompile it. So check to see exactly which driver you are using it may be one of the old default drivers. You should be able to try the older kernel buy selecting advanced at the boot screen.

gogalthorp - as I posted above:

I tried 3.11.10-25-default but it didn’t help

I haven’t ever had problem with VLC. I installed openSuse on 2 other laptops and they are working fine on last VLC version. I just don’t get it and no idea what to do :frowning:

No, it is not. It doesn’t care at all about the kernel version, it just downloads the nvidia .run installer and compiles the kernel module.
And it sets up DKMS, so that the kernel module is recompiled automatically whenever you boot a new kernel.

So it should actually work with any kernel version, provided it is supported by the nvidia driver.

This rather looks to me like VLC cannot handle that particular mkv file.

Still, is it normal that VLC is not working on Automatic selection or not working with others like vdpau?

With Bumblebee systems, the desktop and vlc run on the intel chip.
The intel driver does not support vdpau at all.

Regarding the OpenGL output not working:
Did you ever install the standard nvidia driver, either the openSUSE rpms or using the .run installer from nvidia’s homepage?
This would break intel’s OpenGL support.

To verify your OpenGL support, please install Mesa-demo-x and post the output of:

glxinfo|grep render

And maybe post /var/log//Xorg.0.log.

I think on intel systems, VLC should use VA-API by default. So maybe something is wrong with your libva installation. But I suppose a broken intel driver could cause problems there as well.

But mkv videos are not supported by either VDPAU or VA-API anyway.
As you mentioned you tried VLC from the videolan repo, I would strongly suggest to do a “full repository vendor change update” to Packman. Maybe you have some library from the videolan repo installed which causes problems. This repo is incompatible with Packman.

MPlayer is statically linked against ffmpeg and most other multimedia libs, so it doesn’t use the system’s ones.

As far as I recall - I didn’t install Nvidia official drivers, I’ve used nvidia-bumblebee:

rpm -qa | grep nvidia
nvidia-bumblebee-346.47-1.1.x86_64
nvidia-bumblebee-32bit-346.47-1.1.x86_64

glxinfo|grep render

glxinfo|grep render
direct rendering: Yes
OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile 
    GL_NV_conditional_render, GL_NV_depth_clamp, GL_NV_packed_depth_stencil, 
    GL_NV_conditional_render, GL_NV_depth_clamp, GL_NV_light_max_exponent, 

And maybe post /var/log//Xorg.0.log.

http://pastebin.com/M1KRVBwm (It was too long to put it in CODE)

I also did vendor change to Packman:

zypper dup --from packman

But the only 6 packages changed vendor and if I’m not sure all of them is not connected to this case (they switched from KDE → Packman):

obs://build.opensuse.org/KDE -> http://packman.links2linux.de

Thanks, I’m waiting for your feedback.

as a very long time user of the nvidia.run’s
the openGL mesa can and COULD be broken by the .run( this is a very long standing issue)
the .run REPLACES the mesa .so and REPLACES the GL.h ( an a few others )

so if you build software using the nvidia opengl
software using the mesa rpms might not work

and visa versa
if the mesa openGL headers are used the programs built with the nvidia version might not work

it is normally a VERY good idea to REINSTALL all of the mesa you have installed AFTER installing the .run nvidia driver

and MAKE sure that everything is using the mesa rpm’s

there might be exceptions for the nvidia cuda sdk

How to check/force “everything” to use mesa?

I’m 99 sure that I didn’t used Nvidia’s .run file but … I will re-install Mesa, np on that.
You might be right as on those 2 laptops I don’t have discrete card so I didn’t install any Nvidia drivers.

Looks ok.

But the only 6 packages changed vendor and if I’m not sure all of them is not connected to this case (they switched from KDE → Packman):

Probably amarok and phonon-backend-vlc e.g., which are available from Packman as well.
But yeah, those are definitely not related to your VLC problems.

Can you please post which libvdpau and libva packages you have installed?

rpm -qa | egrep -i "vdpau|libva"

If you have vdpau-video installed you should probably remove it. This is a VDPAU plugin for libva and is only really a good idea when using the nvidia driver, and might cause crashes/freezes on intel.

Regarding the mkv video, this might be a bug/limitation of VLC or the libmatroska included in 13.1, no idea.

rpm -qa | egrep -i “vdpau|libva”

libva-drm1-32bit-1.2.1-2.2.1.x86_64
libva-drm1-1.2.1-2.2.1.x86_64
libvdpau1-0.6-3.1.3.x86_64
libva-glx1-1.2.1-2.2.1.x86_64
libvdpau1-32bit-0.6-3.1.3.x86_64
libva-egl1-1.2.1-2.2.1.x86_64
vdpau-video-0.7.4-2.1.x86_64
libva1-32bit-1.2.1-2.2.1.x86_64
libva-x11-1-1.2.1-2.2.1.x86_64
libva-x11-1-32bit-1.2.1-2.2.1.x86_64
libva1-1.2.1-2.2.1.x86_64

I’ve installed vdpau-video after this problem appeared but sure, I will remove it.

As mentioned already, this might well be the culprit. So try to uninstall it.

PS: and check whether you have vaapi-intel-driver installed, install it if not. If you have it installed, you could also try to uninstall it, maybe it’s not working correctly on your system for some reason…

Ok,

So, I:

  • Reinstalled all Mesa packages
  • Removed vdpau-video
  • Changed VLC’s Video Output driver to Automatic

And it still doesn’t work - should I give on that?

No idea then, sorry.
It works fine (with output set to auto) on all of my systems. But all of my systems are running 13.2, and none of them are using Bumblebee/Optimus.

Maybe try to run it on the nvidia card via “optirun vlc”.
Or try to install/uninstall vaapi-intel-driver as suggested.

I understand. I have never had problem with vlc in the past.

I tried reinstall vaapi-intel-driver but it doesn’t help.

I’ve tried “optirun vlc”, but I got:

Segmentation fault

I’ve tried to run

nvidia-settings

But I got:

ERROR: libnvidia-gtk3.so.346.47: cannot open shared object file: No such file or directory
       libnvidia-gtk3.so: cannot open shared object file: No such file or directory
       libnvidia-gtk2.so.346.47: cannot open shared object file: No such file or directory
       libnvidia-gtk2.so: cannot open shared object file: No such file or directory


ERROR: A problem occured when loading the GUI library. Please check your installation and library path. You may need to specify this library when calling nvidia-settings. Please run `nvidia-settings --help` for usage
       information.

I’ve tried

primusrun vdpauinfo
and
vdpauinfo

But In both cases for first run I’ve got 1 line of response (instead of many like I saw on the web) and problem is freezed, but ctrl + c kills it. When I run it second time, no output, only freezing and ctrl + c / kill as root etc don’t help with it.

I guess it’s kind of problem with Nvidia (maybe co-operation) with Intel.

I might be blind but primusrun/optirun seems to work slower, but I might be only my call on this case.

Last time I’ve typed

optirun/primusrun firefox

I got many lines (sort of errors/warnings) - this time as I wanted to paste it here - I only got first line (same during the first run):

(process:20299): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed

In both cases (now and previous tryout) - firefox started

Ok guys, I guess nobody can help me with this issue. Thanks for your effort. If you have more ideas, let me know. I will try them out as I have nothing to lose.

did you set packman as the system repository?
I’ve had a similar issue with mplayer playing some files while xine/vlc didn’t want to play them, the fix turned out to be a simple click.
see
https://en.opensuse.org/SDB:Vendor_change_update#Full_repository_Vendor_change
https://en.opensuse.org/images/thumb/e/e3/Yast-vendor-repo.png/600px-Yast-vendor-repo.png

Hi, as I said I’ve already tried it

zypper dup --from packman

But I didn’t help at all. I tried also your way and it did changed few packages vendors but still nothing. Do you think it might be bumblebee or sth that is connected to video packages? TBH I don’t recall any strange changes and I remember optirun/primus was working rather good.

I think it probably is bumblebee, open vlc preferences and disable hardware acceleration
According to this https://wiki.videolan.org/VLC_GPU_Decoding/#X11_.28GNU.2FLinux.2C_FreeBSD.2C_etc..29
there are 2 hardware acceleration modes for vlc intel’s VA-API and nvidia’s VDPAU and with bumblebee both might be active? I’m thinking this happens when intel’s build-in gpu starts nvidia external card vlc gets confused and freezes I have no experience with bumblebee.
does mplayer work?
you can try and install mplayer (smplayer) from packman

zypper in smplayer 

it will pull mplayer too