Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash when playing DVD with VLC & vlc-pause-click-plugin #112

Open
1 task done
kinoegit opened this issue Jan 23, 2025 · 4 comments
Open
1 task done

Crash when playing DVD with VLC & vlc-pause-click-plugin #112

kinoegit opened this issue Jan 23, 2025 · 4 comments
Labels
C-bug Category: bug E-OS-linux Environment: OS: linux E-OS-windows Environment: OS: windows E-VLC-B-64 Environment: VLC bitness: 64 bit E-VLC-V-3.0 Environment: VLC version: 3.0 R-upstream-bug Resolution: upstream bug S-in-progress Status: in progress S-reproduced Status: reproduced

Comments

@kinoegit
Copy link

Checklist

Environment

  • OS: Arch Linux/ Kernel v 6.12.10 / Plasma 6.2.5, Wayland/ Intel® Core™ i5-10600 CPU
  • VLC version: 3.0.21
  • VLC bitness: 64 bit
  • Plugin version: 2.2.0
  • Plugin bitness: 64 bit

Describe the bug

VLC crashes when trying to start a DVD with vlc-pause-click-plugin enabled

Steps to reproduce

  • enable vlc-pause-click-plugin exactly as instructed (it works with NON-DVD videos)
  • insert DVD
  • start VLC and start to play (ctrl + d) DVD

Observed behavior

VLC crashes with log as follows:

vlc[60301]: [0000588518b1afc0] main audio output error: too low audio sample frequency (0)
vlc[60301]: [000076f8101aa0d0] main decoder error: failed to create audio output
vlc[60301]: [0000588518b1afc0] vlcpulse audio output error: digital pass-through stream connection failure: not supported
vlc[60301]: [0000588518b1afc0] main audio output error: module not functional
vlc[60301]: [000076f8101aa0d0] main decoder error: failed to create audio output
kmix[2010]: adding 4 mixers
kmix[2010]: mixer "PulseAudio::Playback_Devices:1" "playback devices"
kmix[2010]: PulseAudio adding 1 devices
kmix[2010]: mixer "PulseAudio::Capture_Devices:1" "recording devices"
kmix[2010]: PulseAudio adding 1 devices
kmix[2010]: mixer "PulseAudio::Playback_Streams:1" "playback streams"
kmix[2010]: PulseAudio adding 3 devices
kmix[2010]: mixer "PulseAudio::Capture_Streams:1" "recording streams"
kmix[2010]: PulseAudio adding 0 devices
vlc[60301]: libva error: /usr/lib/dri/i965_drv_video.so init failed
vlc[60301]: [000076f804001f40] glconv_vaapi_x11 gl error: vaInitialize: unknown libva error
vlc[60301]: libva error: /usr/lib/dri/i965_drv_video.so init failed
vlc[60301]: [000076f804001f40] glconv_vaapi_drm gl error: vaInitialize: unknown libva error
vlc[60301]: Xlib:  extension "DRI2" missing on display ":1".
vlc[60301]: libva error: vaGetDriverNames() failed with operation failed
vlc[60301]: [000076f804001f40] glconv_vaapi_drm gl error: vaInitialize: operation failed
vlc[60301]: Failed to open VDPAU backend libvdpau_nvidia.so: could not open shared-object-file: file or directory not found
kernel: vlc[60332]: segfault at 10 ip 000076f8265b3122 sp 000076f8266bf6e0 error 4 in libgl_plugin.so[5122,76f8265b0000+a000] likely on CPU 0 (core 0, socket 0)
kernel: Code: c9 ff 90 a0 00 00 00 4c 8b 43 40 31 f6 bf f2 0c 00 00 48 83 c4 20 41 ff 90 80 00 00 00 41 39 ae 50 01 00 00 7e 42 48 8b 4b 40 <41> 8b 74 ac 10 bf ec 88 00 00 ff 91 a0 01 00 00 49 83 7c 24 50 00
systemd-coredump[60354]: Process 60301 (vlc) of user 1000 terminated abnormally with signal 11/SEGV, processing...
systemd[1]: Started Process Core Dump (PID 60354/UID 0).
systemd[1]: Started Pass systemd-coredump journal entries to relevant user for potential DrKonqi handling.
systemd-coredump[60355]: [🡕] Process 60301 (vlc) of user 1000 dumped core.
                                              
                                              Stack trace of thread 60332:
                                              #0  0x000076f8265b3122 n/a (libgl_plugin.so + 0x5122)
                                              #1  0x000076f8265b63f3 n/a (libgl_plugin.so + 0x83f3)
                                              #2  0x000076f883a6ee44 n/a (libvlccore.so.9 + 0x7de44)
                                              #3  0x000076f883a748d1 n/a (libvlccore.so.9 + 0x838d1)
                                              #4  0x000076f883b9739d n/a (libc.so.6 + 0x9439d)
                                              #5  0x000076f883c1c49c n/a (libc.so.6 + 0x11949c)
                                              
                                              Stack trace of thread 60302:
                                              #0  0x000076f883c0e63d __poll (libc.so.6 + 0x10b63d)
                                              #1  0x000076f88098ca78 n/a (libpulse.so.0 + 0x32a78)
                                              #2  0x000076f880976654 pa_mainloop_poll (libpulse.so.0 + 0x1c654)
                                              #3  0x000076f8809807c5 pa_mainloop_iterate (libpulse.so.0 + 0x267c5)
                                              #4  0x000076f880980891 pa_mainloop_run (libpulse.so.0 + 0x26891)
                                              #5  0x000076f880991bd4 n/a (libpulse.so.0 + 0x37bd4)
                                              #6  0x000076f88093734f n/a (libpulsecommon-17.0.so + 0x5d34f)
                                              #7  0x000076f883b9739d n/a (libc.so.6 + 0x9439d)
                                              #8  0x000076f883c1c49c n/a (libc.so.6 + 0x11949c)
                                              
                                              Stack trace of thread 60308:
                                              #0  0x000076f883b93a19 n/a (libc.so.6 + 0x90a19)
                                              #1  0x000076f883b96479 pthread_cond_wait (libc.so.6 + 0x93479)
                                              #2  0x000076f851b1372e n/a (libgallium-24.3.3-arch1.2.so + 0x51372e)
                                              #3  0x000076f851ade70c n/a (libgallium-24.3.3-arch1.2.so + 0x4de70c)
                                              #4  0x000076f851b1365d n/a (libgallium-24.3.3-arch1.2.so + 0x51365d)
                                              #5  0x000076f883b9739d n/a (libc.so.6 + 0x9439d)
                                              #6  0x000076f883c1c49c n/a (libc.so.6 + 0x11949c)
                                              
                                              Stack trace of thread 60305:
                                              #0  0x000076f883c0ebb0 ppoll (libc.so.6 + 0x10bbb0)
                                              #1  0x000076f880d70327 n/a (libglib-2.0.so.0 + 0xc0327)
                                              #2  0x000076f880d0ca55 g_main_context_iteration (libglib-2.0.so.0 + 0x5ca55)
                                              #3  0x000076f8794fe16f _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5 + 0x2fe16f)
                                              #4  0x000076f8794a6b5c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5 + 0x2a6b5c)
                                              #5  0x000076f8794b305d _ZN16QCoreApplication4execEv (libQt5Core.so.5 + 0x2b305d)
                                              #6  0x000076f87a9e6e45 n/a (libqt_plugin.so + 0x1e6e45)
                                              #7  0x000076f87a89563a n/a (libqt_plugin.so + 0x9563a)
                                              #8  0x000076f883b9739d n/a (libc.so.6 + 0x9439d)
                                              #9  0x000076f883c1c49c n/a (libc.so.6 + 0x11949c)
                                              
                                              Stack trace of thread 60329:
                                              #0  0x000076f83d8180f6 n/a (libavcodec.so.58 + 0xa180f6)
                                              ELF object binary architecture: AMD x86-64

Expected behavior

VLC should play DVD videos with vlc-pause-click-plugin enabled

Additional info

VLC with vlc-pause-click-plugin DISABLED does play the DVD video flawlessly
The same with VLC AppImage version 3.0.21

@kinoegit kinoegit added the C-bug Category: bug label Jan 23, 2025
@nurupo nurupo added S-reproduced Status: reproduced S-in-progress Status: in progress E-OS-linux Environment: OS: linux E-VLC-B-64 Environment: VLC bitness: 64 bit E-VLC-V-3.0 Environment: VLC version: 3.0 labels Jan 24, 2025
@nurupo
Copy link
Owner

nurupo commented Jan 24, 2025

Able to reproduce. While I'm still looking into the cause of the crash, here are some notes meanwhile. Mostly just for myself to keep track of.

Environment:

  • x86_64 Linux, VLC 3.0.21 64-bit
  • Intel i7-2720QM
  • No GPU, iGPU-only
  • A DVD disk with interlaced video on it behind a chapter select menu

Steps to reproduce:

  1. Insert DVD disk
  2. Open VLC
  3. Ctrl+D -> Play
  4. DVD menu appears, listing the chapters on the DVD
  5. Select a chapter to play

Configuration 1

  • VLC has hardware-accelerated decoding disabled
  • The plugin is enabled

Once a chapter is selected in step 5, VLC crashes:

kernel: vlc[2336]: segfault at 10 ip 00007f6b7ef4c1eb sp 00007f6b7f0557a0 error 4 in libgl_plugin.so[7f6b7ef43000+c000]

Configuration 2

  • VLC has hardware-accelerated decoding disabled
  • The plugin is disabled (must restart VLC)

There is no crash, the video plays just fine past the step 5.

Configuration 3

  • VLC has hardware-accelerated decoding set to Automatic
  • The plugin is enabled

There is no crash, the video plays just fine past the step 5 and the plugin functions as intended - I'm able to click to pause.

@nurupo
Copy link
Owner

nurupo commented Jan 24, 2025

Looks like it's not a bug in my plugin but a general bug with interlaced videos in VLC3, as it crashes even on a regular interlaced video file with just the built-in "FPS conversion video filter" enabled, without my plugin used. It also crashes on a dummy video filter plugin that doesn't do anything.

I have filed a bug report with VLC about this: https://code.videolan.org/videolan/vlc/-/issues/28951

Setting Hardware-accelerated decoding to Automatic might fix the crash, as it does for me, though it should already be set to that by default I believe.

Screenshot of where to find the hardware-accelerated decoding setting

@nurupo nurupo added the R-upstream-bug Resolution: upstream bug label Jan 24, 2025
@nurupo
Copy link
Owner

nurupo commented Jan 24, 2025

I might have found a way to work around this bug. Will need to perform further testing on it, to make sure it works on across VLC versions and on Windows.

@nurupo
Copy link
Owner

nurupo commented Jan 26, 2025

The crash is also reproducible on Windows if the Video output is set to "OpenGL video output" or "OpenGL video output for Windows".

@nurupo nurupo added the E-OS-windows Environment: OS: windows label Jan 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: bug E-OS-linux Environment: OS: linux E-OS-windows Environment: OS: windows E-VLC-B-64 Environment: VLC bitness: 64 bit E-VLC-V-3.0 Environment: VLC version: 3.0 R-upstream-bug Resolution: upstream bug S-in-progress Status: in progress S-reproduced Status: reproduced
Projects
None yet
Development

No branches or pull requests

2 participants