INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Immediate crash on video playback  (Read 6786 times)

mattkhan

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4226
Immediate crash on video playback
« on: January 01, 2017, 01:53:54 pm »

I run MC22 on a linux workstation which currently uses some old relatively onboard graphics, old enough that the new opengl theatre view is not supported (and using it causes an immediate crash). I don't use this box for video regularly but was I thought video was still supported even though theatre view isn't. However now, with 22.0.51, any video playback causes an immediate crash just like theatre view. The logs terminate with

Code: [Select]
0023855: 1736595328: Playback: CJRVideoGLRenderer::InitGLContext: Start
0023866: 1736595328: Playback: CJRVideoGLRenderer::InitGLContext: GLX Version: 1.4
0023866: 1736595328: Playback: CJRVideoGLRenderer::InitGLContext: GLX Extensions: GLX_ARB_create_context GLX_ARB_create_context_profile GLX_ARB_fbconfig_float GLX_ARB_framebuffer_sRGB GLX_ARB_get_proc_address GLX_ARB_multisample GLX_EXT_import_context GLX_EXT_visual_info GLX_EXT_visual_rating GLX_EXT_fbconfig_packed_float GLX_EXT_framebuffer_sRGB GLX_EXT_create_context_es2_profile GLX_EXT_create_context_es_profile GLX_MESA_copy_sub_buffer GLX_MESA_multithread_makecurrent GLX_MESA_query_renderer GLX_MESA_swap_control GLX_OML_swap_method GLX_OML_sync_control GLX_SGI_make_current_read GLX_SGI_swap_control GLX_SGI_video_sync GLX_SGIS_multisample GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGIX_visual_select_group GLX_EXT_texture_from_pixmap GLX_INTEL_swap_event GLX_EXT_buffer_age
0023866: 1736595328: Playback: CJRVideoGLRenderer::CreateGLXContext3: Start

am I misremembering the state of video playback on linux or is this a regression? (or a feature if such old cards are simply no longer supported)
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: Immediate crash on video playback
« Reply #1 on: January 03, 2017, 07:00:28 pm »

Not sure.  You could back off to a non-opengl supporting build on that box to see.

If you can show it worked before it should be fixable. Hendrik is on vacation so it may have to wait a while though.
Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10935
Re: Immediate crash on video playback
« Reply #2 on: January 04, 2017, 12:41:15 pm »

Latest theater view builds should not have any higher requirements than video playback any more. Also video playback should not have changed due to that.
Logged
~ nevcairiel
~ Author of LAV Filters

mattkhan

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4226
Re: Immediate crash on video playback
« Reply #3 on: January 04, 2017, 01:15:35 pm »

I rolled back to 22.0.36 which seems like the last build before theatreview was added, same problem so it's not a regression. I think this particular box used to have an nvidia card in it so perhaps I am remembering it working when that card was in there  ?
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: Immediate crash on video playback
« Reply #4 on: January 05, 2017, 02:58:48 pm »

I rolled back to 22.0.36 which seems like the last build before theatreview was added, same problem so it's not a regression. I think this particular box used to have an nvidia card in it so perhaps I am remembering it working when that card was in there  ?
Perhaps check your X server.
If noveau is in there from a previous nvidia install it might be messing things up.
Logged

mattkhan

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4226
Re: Immediate crash on video playback
« Reply #5 on: January 07, 2017, 06:44:20 am »

I removed any extraneous packages and it still crashes immediately.

Why is OpenGL required for video playback btw?
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: Immediate crash on video playback
« Reply #6 on: January 09, 2017, 11:17:16 am »

I removed any extraneous packages and it still crashes immediately.

Why is OpenGL required for video playback btw?
According to Hendrik, it's not required for Video playback.
If you run mediacenter22 from a terminal window do you get any output when it crashes?
Logged

mattkhan

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4226
Re: Immediate crash on video playback
« Reply #7 on: January 09, 2017, 11:44:34 am »

According to Hendrik, it's not required for Video playback.
If you run mediacenter22 from a terminal window do you get any output when it crashes?
it seems I do

Code: [Select]
$ mediacenter22
[xcb] Unknown sequence number while processing queue
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
mediacenter22: ../../src/xcb_io.c:259: poll_for_event: Assertion `!xcb_xlib_threads_sequence_lost' failed.
Aborted
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: Immediate crash on video playback
« Reply #8 on: January 09, 2017, 01:59:24 pm »

it seems I do

Code: [Select]
$ mediacenter22
[xcb] Unknown sequence number while processing queue
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
mediacenter22: ../../src/xcb_io.c:259: poll_for_event: Assertion `!xcb_xlib_threads_sequence_lost' failed.
Aborted
That's cool but weird. I didn't know we were using xcb.
I just checked and we are.
The code seems to be in the OpenGL area.
We are calling XinitThreads however so that part of the message is likely incorrect.

I think we need to call in Hendrik on this one!

Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10935
Re: Immediate crash on video playback
« Reply #9 on: January 10, 2017, 10:48:45 pm »

I'm not aware that we use XCB at all, OpenGL should be some minor X11 calls and otherwise just GLX (which is based on X11).

Does something like glxgears run on that system? Thats generally a good sanity test to see if the drivers are OK.
We do however require some aspect of multi-threading with OpenGL that some old drivers may not like (and glxgears may not test)
Logged
~ nevcairiel
~ Author of LAV Filters

mattkhan

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4226
Re: Immediate crash on video playback
« Reply #10 on: January 12, 2017, 02:44:08 am »

yes it does run glxgears ok

glxinfo says the following, it's the onboard gpu for a core i3 540

Code: [Select]
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Intel Open Source Technology Center (0x8086)
    Device: Mesa DRI Intel(R) Ironlake Desktop  (0x42)
    Version: 13.0.2
    Accelerated: yes
    Video memory: 1536MB
    Unified memory: yes
    Preferred profile: compat (0x2)
    Max core profile version: 0.0
    Max compat profile version: 2.1
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 2.0
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ironlake Desktop
OpenGL version string: 2.1 Mesa 13.0.2
OpenGL shading language version string: 1.20
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: Immediate crash on video playback
« Reply #11 on: January 12, 2017, 01:58:02 pm »

It appears that the OpenGL library links to all of the extra libs we see in the mediacenter22 binary:
Current:
Code: [Select]
linux-vdso.so.1 (0x00007ffc4b27d000)
libcryptlib.so => /usr/lib/jriver/Media Center 22/libcryptlib.so (0x00007f9f0a11d000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f9f09f00000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f9f09cf8000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f9f09af4000)
libboost_regex.so.1.59.0 => /usr/lib/jriver/Media Center 22/libboost_regex.so.1.59.0 (0x00007f9f0980e000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f9f094cb000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f9f092c6000)
libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007f9f0902c000)
libXrandr.so.2 => /usr/lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007f9f08e22000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f9f08b17000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f9f08816000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f9f08600000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f9f08255000)
/lib64/ld-linux-x86-64.so.2 (0x00007f9f0a712000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f9f08033000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f9f07e0a000)
libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007f9f07be0000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f9f079ce000)
libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f9f077cb000)
libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f9f075c5000)
libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f9f073c3000)
libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007f9f071aa000)
libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007f9f06fa5000)
libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007f9f06da2000)
libxcb-present.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007f9f06b9f000)
libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007f9f06998000)
libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007f9f06796000)
libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007f9f06590000)
libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007f9f06383000)
libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f9f06179000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f9f05f75000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f9f05d70000)
And the pre-OpenGL build 22.0.36:
Code: [Select]
linux-gate.so.1 (0xf778f000)
libcryptlib.so => /usr/lib/jriver/Media Center 22/libcryptlib.so (0xf742e000)
libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf73e8000)
librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xf73de000)
libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf73d9000)
libboost_regex.so.1.59.0 => /usr/lib/jriver/Media Center 22/libboost_regex.so.1.59.0 (0xf72ec000)
libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf719a000)
libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xf7194000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf70a1000)
libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf705b000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf703e000)
libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf6e91000)
/lib/ld-linux.so.2 (0xf7792000)
libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf6e6b000)
libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf6e66000)
libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf6e60000)

The difference is the stuff pulled in by libGL.so.1
Code: [Select]

linux-vdso.so.1 (0x00007ffdb7378000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f77d69f4000)
libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007f77d67ca000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f77d65b8000)
libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f77d63b5000)
libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f77d61af000)
libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f77d5fad000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f77d5c6a000)
libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007f77d5a51000)
libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007f77d584c000)
libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007f77d5649000)
libxcb-present.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007f77d5446000)
libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007f77d523f000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f77d501d000)
libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007f77d4e1b000)
libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007f77d4c15000)
libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007f77d4a08000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f77d4707000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f77d44ea000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f77d42e6000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f77d3f3b000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f77d3d37000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f77d3b32000)
/lib64/ld-linux-x86-64.so.2 (0x00007f77d6eb7000)

I'd guess this might be causing issues on non-debian platforms as well as debian platforms with a different libGL.so.1??
Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10935
Re: Immediate crash on video playback
« Reply #12 on: January 12, 2017, 04:24:54 pm »

Video Playback would have pulled those in before already, just in JRPlayer.so and not mediacenter22 directly, so there is no big change, just moved them a bit. We only link to libGL, which is both OpenGL and GLX, and any transitive dependencies it adds are out of our control.

And mattkhan confirmed the issue isn't new in Theater View builds either.
Logged
~ nevcairiel
~ Author of LAV Filters

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: Immediate crash on video playback
« Reply #13 on: January 12, 2017, 05:09:53 pm »

Video Playback would have pulled those in before already, just in JRPlayer.so and not mediacenter22 directly, so there is no big change, just moved them a bit. We only link to libGL, which is both OpenGL and GLX, and any transitive dependencies it adds are out of our control.

And mattkhan confirmed the issue isn't new in Theater View builds either.

OK I see that's the case now.

I don't get the xcb thing though.

[xcb] Unknown sequence number while processing queue
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
mediacenter22: ../../src/xcb_io.c:259: poll_for_event: Assertion `!xcb_xlib_threads_sequence_lost' failed.

XinitThreads is being called on MC's app.

Perhaps test MC20 and/or 21 to see if they both crash the same?
Logged

mattkhan

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4226
Re: Immediate crash on video playback
« Reply #14 on: January 13, 2017, 02:30:37 am »

Any particular builds or just the latest one available?
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: Immediate crash on video playback
« Reply #15 on: January 13, 2017, 01:01:46 pm »

Any particular builds or just the latest one available?
I would say just the latest.
Logged

mattkhan

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4226
Re: Immediate crash on video playback
« Reply #16 on: January 14, 2017, 04:41:35 am »

21 playing an mkv

Code: [Select]
$ sudo dpkg -i MediaCenter-21.0.90-amd64.deb
Selecting previously unselected package mediacenter21.
(Reading database ... 195654 files and directories currently installed.)
Preparing to unpack MediaCenter-21.0.90-amd64.deb ...
Unpacking mediacenter21 (21.0.90) ...
Setting up mediacenter21 (21.0.90) ...
Processing triggers for shared-mime-info (1.7-1) ...
Unknown media type in type 'all/all'
Unknown media type in type 'all/allfiles'
Processing triggers for mime-support (3.60) ...
$ mediacenter21

(mediacenter21:3620): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",

(mediacenter21:3620): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",
[xcb] Unknown sequence number while processing queue
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
mediacenter21: ../../src/xcb_io.c:259: poll_for_event: Assertion `!xcb_xlib_threads_sequence_lost' failed.
Aborted

same file with 20

Code: [Select]
$ sudo dpkg -i MediaCenter-20.0.131-amd64.deb
(Reading database ... 197343 files and directories currently installed.)
Preparing to unpack MediaCenter-20.0.131-amd64.deb ...
Unpacking mediacenter20 (20.0.131) over (20.0.131) ...
Setting up mediacenter20 (20.0.131) ...
Processing triggers for mime-support (3.60) ...
$ mediacenter20
Found 0 devices (devices will be listed below)

Total time: 3 ms
Result: 0

(mediacenter20:6923): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",

(mediacenter20:6923): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",
Total time: 14 ms
Result: 0
[xcb] Unknown sequence number while processing queue
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
mediacenter20: ../../src/xcb_io.c:259: poll_for_event: Assertion `!xcb_xlib_threads_sequence_lost' failed.
Aborted
Logged
Pages: [1]   Go Up