openshot-qt icon indicating copy to clipboard operation
openshot-qt copied to clipboard

Opening preferences causes unhandled exception

Open juuso123 opened this issue 4 years ago • 10 comments

Describe the bug Opening preferences causes unhandled exception

Steps to reproduce the behavior:

  1. Go to 'Edit-Preferences'

Expected behavior Preferneces window should open.

Ubuntu 21.04 with Intel and nvidia graphics, using Nvidia 4.60 drivers with prime on-demand.

System Details

  • OpenShot Version: 2.6.0-dev
  • libopenshot Version: 0.2.6-dev
  • Platform: Linux-5.11.0-31-generic-x86_64-with-glibc2.33
  • Processor: x86_64
  • Machine: x86_64
  • Python version: 3.9.5
  • Qt5 version: 5.15.2
  • PyQt5 version: 5.15.4
  • Qt Detected Languages: ['en-US']
  • LANG Environment Variable: en_US.UTF-8
  • LOCALE Environment Variable:
  • Daily Build: Verified issue still exists in daily build: http://github.com/OpenShot/openshot-qt/releases/download/OpenShot-v2.6.0-dev-daily-8112-fc05893b-5ec3bc21-x86_64.AppImage

Log Files

Exception / Stacktrace

/lib/x86_64-linux-gnu/libva.so.2 vaGetImage                               0x5c  [0x7f8c6c1a333c]
/lib/x86_64-linux-gnu/libavutil.so.56                                          0x36b0d  [0x7f8c706a2b0d]
/lib/x86_64-linux-gnu/libavutil.so.56                                          0x3707f  [0x7f8c706a307f]
/lib/x86_64-linux-gnu/libavutil.so.56 av_hwframe_transfer_data                 0xe3  [0x7f8c70697a43]
/lib/x86_64-linux-gnu/libavutil.so.56 av_hwframe_transfer_data                 0x166  [0x7f8c70697ac6]
/lib/x86_64-linux-gnu/libopenshot.so.20 openshot::FFmpegReader::GetAVFrame()     0x535  [0x7f8c604af7b5]
/lib/x86_64-linux-gnu/libopenshot.so.20 openshot::FFmpegReader::ReadStream(long) 0xb27  [0x7f8c604bd447]
/lib/x86_64-linux-gnu/libopenshot.so.20 openshot::FFmpegReader::GetFrame(long)   0x772  [0x7f8c604bdf12]
/usr/lib/python3/dist-packages/_openshot.cpython-39-x86_64-linux-gnu.so                                          0x1017b3  [0x7f8c606937b3]
/usr/bin/python3                                                         [0x543548]
/usr/bin/python3               PyObject_Call                            0xb1  [0x5407b1]
/usr/bin/python3               _PyEval_EvalFrameDefault                 0x65ac  [0x51c3bc]
/usr/bin/python3                                                         [0x514a75]
/usr/bin/python3               _PyFunction_Vectorcall                   0x342  [0x52d302]
/usr/bin/python3               _PyEval_EvalFrameDefault                 0x733  [0x516543]
/usr/bin/python3                                                         [0x515377]
/usr/bin/python3               _PyFunction_Vectorcall                   0x342  [0x52d302]
/usr/bin/python3                                                         [0x54015f]
/usr/bin/python3        ...

juuso123 avatar Aug 26 '21 07:08 juuso123

That's very interesting. Did you install through apt, or are you using the AppImage?

Whichever you're using, does the other have the same issue?

JacksonRG avatar Aug 26 '21 19:08 JacksonRG

I installed using apt and haven't tried AppImage yet.

juuso123 avatar Aug 28 '21 11:08 juuso123

you might also try apt install python3-openshot as that may contain a dependency you need

JacksonRG avatar Aug 31 '21 18:08 JacksonRG

I'm having a very similar problem here. I'm using 5.15.XX . I'm using the AMDGPU driver with up-to-date firmware. My GPU is an HD7770 GHz edition.

The problem is that the preferences dialog never opens. I manually edited the config file to turn on verbose debugging.

I'm using the latest nightly build of openshot in the form of the appimage. I have also tried the latest release appimage without success. I have tried with and without installing python3-openshot.

I then removed the config file and opening preferences works. Although there are some keybinding differences, I'd guess it's that my system can't access, for whatever reason, my GPU. I can't imagine why. My GPU was detected before I upgraded my SW and apt should pull in any SW I needed for a functioning OpenCL system.

works-openshot-settings.txt does-not-work-openshot-settings.txt

Full log: openshot-errs.txt

Traceback (most recent call last):
  File "/tmp/.mount_kXA9vV/usr/bin/windows/main_window.py", line 850, in actionPreferences_trigger
    win = Preferences()
  File "/tmp/.mount_kXA9vV/usr/bin/windows/preferences.py", line 98, in __init__
    self.Populate()
  File "/tmp/.mount_kXA9vV/usr/bin/windows/preferences.py", line 322, in Populate
    if (not self.testHardwareDecode(value_list, v, 0)
  File "/tmp/.mount_kXA9vV/usr/bin/windows/preferences.py", line 582, in testHardwareDecode
    item for item in all_decoders
StopIteration

I'd try using kernel 5.18, but there's something wrong with the AMDGPU driver. If Radeon SI plays well with openshot, just say so and I'll try it. From what I understand, AMDGPU is the driver we're supposed to be moving to.

I'll test compiling openshot soon and see if it fails without the appimage.

ballsystemlord avatar Aug 19 '22 02:08 ballsystemlord

I found that clinfo was not listing any devices. I needed to install libclc-amdgcn and mesa-opencl-icd. I installed both. I tested with the appimage I downloaded yesterday from the daily build. My GPU is still not detected by openshot (after deleting my .openshot_qt dir). Also, the previous config still fails on the same line as before.

AMD GPU support being lost IS A REGRESSION compared to previous versions of openshot-qt. Maybe it was deemed unstable or something. But then the config options enabling it should be ignored, not cause openshot-qt to hang.

My opencl info in case you're curious: clinfo.txt

ballsystemlord avatar Aug 19 '22 18:08 ballsystemlord

Oh boy! I did not notice that this bug was almost 1 year old, do you want me to keep updating this by testing the source code, or do you not much care about this @JacksonRG ?

ballsystemlord avatar Aug 19 '22 18:08 ballsystemlord

At the time, I wasn't able to reproduce this issue, and the original user went quiet. I'm happy to help though.

What do you mean when you say upgraded your SW?

Also, I've seen this issue with an entirely different GPU. But only when running from source, so I haven't managed to track it down. (Couldn't prove it wasn't just a build issue).

JacksonRG avatar Aug 19 '22 21:08 JacksonRG

What do you mean when you say upgraded your SW?

I was running 2 releases behind on my Devuan (Debian) Linux system. I ran dist-upgrade and upgraded to the latest release of Devuan (Debian) Linux. The only real difference between the 2 that I'm aware of is that Devuan doesn't use systemd for the init SW (It uses openrc), whereas Debian does.

Also, I've seen this issue with an entirely different GPU. But only when running from source, so I haven't managed to track it down. (Couldn't prove it wasn't just a build issue).

If there's anything I can do to help you track it down I can probably do it as I'm familiar with python and love C (Although I'm no master of algorithms yet.) Theoretically, I might be able to set you up with remote X access, although I'll have to read up on that both to learn how to go about it (esp the security side), and how to ensure that all programs run off of my GPU. No promises on when I can do it though, my life is a bit hectic.

ballsystemlord avatar Aug 19 '22 22:08 ballsystemlord

BTW: If you intend me to act based on that trello link you'll need to tell me what to do.

ballsystemlord avatar Aug 19 '22 22:08 ballsystemlord

This has been fixed in v2.6.1-Daily and beyond.

Colorjet3 avatar Feb 01 '23 03:02 Colorjet3