djpohly / dwl

dwm for Wayland - ARCHIVE: development has moved to Codeberg
https://codeberg.org/dwl/dwl
Other
1.93k stars 282 forks source link

vlc not stable on dwl? looking for help for troubleshooting. #380

Closed guyuming76 closed 1 year ago

guyuming76 commented 1 year ago

It's first time i use video player on Linux(I am trying vlc), although video playing in firefox always works well on on DWL.

With some .mp4 files from my mobile phone, vlc works well on DWM, and weston, but not so stable on DWL, the message follows is from DWL:

gym@gymDeskGentoo /vmdisk/sharedfolder/nova5pro $ vlc VID_20180825_174100.mp4 
VLC media player 3.0.18 Vetinari (revision 3.0.13-8-g41878ff4f2)
[000056228c603d40] main interface error: no suitable interface module
[000056228c543630] main libvlc error: interface "globalhotkeys,none" initialization failed
[000056228c543630] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[000056228c603d40] qt interface error: Unable to load extensions module
[h264 @ 0x7fbd4ccefcc0] get_buffer() failed
[h264 @ 0x7fbd4ccefcc0] thread_get_buffer() failed
[h264 @ 0x7fbd4ccefcc0] decode_slice_header error
[h264 @ 0x7fbd4ccefcc0] no frame!
[h264 @ 0x7fbd4cc51e20] get_buffer() failed
[h264 @ 0x7fbd4cc51e20] thread_get_buffer() failed
[h264 @ 0x7fbd4cc51e20] decode_slice_header error
[h264 @ 0x7fbd4cc51e20] no frame!
gym@gymDeskGentoo /vmdisk/sharedfolder/nova5pro $ vlc  VID_20180927_195855.mp4 
VLC media player 3.0.18 Vetinari (revision 3.0.13-8-g41878ff4f2)
[000055bbf81e0d40] main interface error: no suitable interface module
[000055bbf8120630] main libvlc error: interface "globalhotkeys,none" initialization failed
[000055bbf8120630] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[000055bbf81e0d40] qt interface error: Unable to load extensions module
Segmentation fault (core dumped)
gym@gymDeskGentoo /vmdisk/sharedfolder/nova5pro $ 

on weston and DWM, i can see similar error message from vlc, but i can see video plays well.

anyone else experiencing the same issue? Any guide on how to troubleshoot this issue?

i am with wlroots 0.16.1 and DWL 0.4

i don't know where is the core dump file,

with find / -cmin -2|grep coredump i can find something like: /var/lib/systemd/coredump/core.vlc.1001.668a1cef6b1c43deb63aa51e07191114.277651.1675080221000000.zst

but gdb cannot open this file.

UPDATE: i say its unstable for me, but it did work when i try a .mp4 file for the first time. i cannot rule out the possibility that my system was "hacked", but i just need help on finding out what's wrong.

sevz17 commented 1 year ago

What are the USE flags of vlc?

guyuming76 commented 1 year ago

media-video/vlc-3.0.18::gentoo was built with the following: USE="X a52 alsa dbus dts dvbpsi dvd encode ffmpeg flac gcrypt gui jpeg libnotify libsamplerate mad mp3 mpeg ncurses ogg png pulseaudio ssl svg truetype udev wayland x264 xml -aom -archive -aribsub -bidi -bluray -cddb -chromaprint -chromecast -dav1d -dc1394 -debug (-directx) -faad -fdk -fluidsynth -fontconfig -gme -gnome-keyring -gstreamer -ieee1394 -jack -kate -libass -libcaca -libtar -libtiger -linsys -lirc -live -lua -macosx-notifications -matroska -modplug -mtp -musepack -nfs -omxil -optimisememory -opus -projectm -rdp -run-as-root -samba -sdl-image -sftp -shout -sid -skins -soxr -speex -srt -taglib -test -theora -tremor -twolame -upnp -v4l -vaapi -vdpau -vnc -vpx -x265 -zeroconf -zvbi" ABI_X86="(64)" CPU_FLAGS_X86="mmx sse" LUA_SINGLE_TARGET="lua5-1" FEATURES="preserve-libs sfperms usersync distlocks qa-unresolved-soname-deps ipc-sandbox unknown-features-warn strict network-sandbox config-protect-if-modified sandbox pid-sandbox userfetch protect-owned usersandbox binpkg-docompress binpkg-dostrip xattr buildpkg-live unmerge-orphans parallel-fetch multilib-strict nostrip userpriv merge-sync unmerge-logs news binpkg-logs ebuild-locks fixlafiles assume-digests" LDFLAGS="-Wl,-O1 -Wl,--as-needed -L/usr/lib64/sidplay/builders/"

guyuming76 commented 1 year ago

i just tried on another computer, with wlroots 0.15.1, and similar issue:

video plays well in vlc on DWM, but on DWL, only the left half of video screen is shown.

Playing video not supported yet? or any other video player i can try?

fauxmight commented 1 year ago

@guyuming76 I use mpv without any issues.

guyuming76 commented 1 year ago

@fauxmight

thanks! i just emerged and tried mpv for the specific mp4 file, it works.

i will try more.

pm4rcin commented 1 year ago

Looks like it's expected. Mandatory Arch Wiki page https://wiki.archlinux.org/title/VLC_media_player#Wayland_support You can close issue @guyuming76 as it's not dwl's fault.

guyuming76 commented 1 year ago

anyway, i tried vlc again to get the callstack from coredump:

i need to decompress the .zst file first:

sudo zstd -d /var/lib/systemd/coredump/core.vlc.1001.f0d3477da4104ccc997a7b02f3f96b32.67638.1676337343000000.
zst

and then open it with gdb:

gdb /usr/bin/vlc  /var/lib/systemd/coredump/core.vlc.1001.f0d3477da4104ccc997a7b02f3f96b32.67638.1676337343000000

...

Core was generated by `vlc VID_20180318_190025.mp4'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  ___pthread_mutex_lock (mutex=0xe8) at pthread_mutex_lock.c:80
80   unsigned int type = PTHREAD_MUTEX_TYPE_ELISION (mutex);
[Current thread is 1 (Thread 0x7fcbdc2b46c0 (LWP 67679))]
(gdb) bt
#0  ___pthread_mutex_lock (mutex=0xe8) at pthread_mutex_lock.c:80
#1  0x00007fcc3352234e in wl_proxy_create_wrapper (proxy=0x7fcc142a3e50) at ../wayland-1.21.0/src/wayland-client.c:2406
#2  0x00007fcc1c0dc7ca in dri2_wl_create_window_surface () at /usr/lib64/libEGL_mesa.so.0
#3  0x00007fcc1c0c3758 in _eglCreateWindowSurfaceCommon () at /usr/lib64/libEGL_mesa.so.0
#4  0x00007fcbfc0d66b7 in Open () at /usr/lib64/vlc/plugins/video_output/libegl_wl_plugin.so
#5  0x00007fcc35020319 in module_load () at /usr/lib64/libvlccore.so.9
#6  0x00007fcc35020727 in vlc_module_load () at /usr/lib64/libvlccore.so.9
#7  0x00007fcc35069b97 in vlc_gl_Create () at /usr/lib64/libvlccore.so.9
#8  0x00007fcbfc0e360c in Open () at /usr/lib64/vlc/plugins/video_output/libgl_plugin.so
#9  0x00007fcc35020319 in module_load () at /usr/lib64/libvlccore.so.9
#10 0x00007fcc35020727 in vlc_module_load () at /usr/lib64/libvlccore.so.9
#11 0x00007fcc3505c2d4 in DisplayNew () at /usr/lib64/libvlccore.so.9
#12 0x00007fcc3505d4e3 in vout_NewDisplay () at /usr/lib64/libvlccore.so.9
#13 0x00007fcc3506b009 in vout_OpenWrapper () at /usr/lib64/libvlccore.so.9
#14 0x00007fcc35060794 in ThreadStart () at /usr/lib64/libvlccore.so.9
#15 0x00007fcc3506223d in Thread () at /usr/lib64/libvlccore.so.9
#16 0x00007fcc3516660c in start_thread (arg=<optimized out>) at pthread_create.c:442
#17 0x00007fcc351e950c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81