View previous topic :: View next topic |
Author |
Message |
ExecutorElassus Veteran


Joined: 11 Mar 2004 Posts: 1471 Location: Berlin, Germany
|
Posted: Fri Sep 29, 2023 10:21 am Post subject: flowblade from git not finding mlt [SOLVED] |
|
|
so, because flatpak doesn't work with apulse, and flowblade is pulseaudio-only, I've installed flowblade directly from git. This is causing difficulty starting the app, because it can't find mlt, on which it depends:
Code: | $ apulse ./flowblade
FLOWBLADE MOVIE EDITOR 2.11-dev
-------------------------------
Launch script dir: /home/elassus/carrier6/flowblade/flowblade/flowblade-trunk
Running from filesystem...
MLT not found, exiting...
ERROR: No module named 'mlt7'
|
but media-libs/mlt-7.18.0 is installed, and the relevant python libraries are there:
Code: |
/usr/lib/python3.12/site-packages/_mlt7.so
/usr/lib/python3.12/site-packages/mlt7.py
|
So how do I get flowblade to find the mlt modules?
Cheers,
EE
Last edited by ExecutorElassus on Sat Sep 30, 2023 4:44 pm; edited 1 time in total |
|
Back to top |
|
 |
grknight Retired Dev

Joined: 20 Feb 2015 Posts: 2028
|
Posted: Fri Sep 29, 2023 12:32 pm Post subject: |
|
|
ExecutorElassus wrote: |
Code: | $ apulse ./flowblade |
but media-libs/mlt-7.18.0 is installed, and the relevant python libraries are there:
Code: |
/usr/lib/python3.12/site-packages/_mlt7.so
/usr/lib/python3.12/site-packages/mlt7.py
|
|
What does python3 --version report? Your media-libs/mlt is only shown for python 3.12. I'm betting the python3 references another version.
If this is true, change the header of the flowblade script file to python3.12 instead of python3. |
|
Back to top |
|
 |
ExecutorElassus Veteran


Joined: 11 Mar 2004 Posts: 1471 Location: Berlin, Germany
|
Posted: Fri Sep 29, 2023 1:38 pm Post subject: |
|
|
'python3 --version' returns "Python 3.11.5", so your suspicion was correct.
I changed the top line of both setup.py and flowblade to '#!/usr/bin/python3.12'. Now, I get the following error:
Code: | $ apulse ./flowblade
FLOWBLADE MOVIE EDITOR 2.11-dev
-------------------------------
Launch script dir: /home/elassus/carrier6/flowblade/flowblade/flowblade-trunk
Running from filesystem...
MLT found, version: 7.18.0
Failed to import module app.py to launch Flowblade!
ERROR: No module named 'gi'
Installation was assumed to be at: /home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade
|
So, progress, I guess? How do I fix that error?
(sigh, I hate python).
Cheers,
EE |
|
Back to top |
|
 |
Hu Administrator

Joined: 06 Mar 2007 Posts: 23128
|
Posted: Fri Sep 29, 2023 2:48 pm Post subject: |
|
|
Python packages are installed to per-versioned directories. That error says you do not have the Python package gi installed for Python 3.12. You may not have it installed at all, or you may have it installed only for versions of Python other than 3.12. Either way, the solution is to install dev-python/pygobject with at least PYTHON_TARGETS=python3_12 (and optionally other targets, at your discretion). |
|
Back to top |
|
 |
ExecutorElassus Veteran


Joined: 11 Mar 2004 Posts: 1471 Location: Berlin, Germany
|
Posted: Fri Sep 29, 2023 2:57 pm Post subject: |
|
|
pygobject is installed, but my package.use was set only to install PYTHON_TARGETS=python3_10 python3_11, and PYTHON_SINGLE_TARGET=python3_10.
So once this 'emerge -uD world' is done, I guess I have to update that (replacing python3_10 with python3_11, and replacing python3_11 with python3_12), and then remerging world to update python support.
Or is there a faster/cleaner way to do that?
Cheers,
EE |
|
Back to top |
|
 |
Hu Administrator

Joined: 06 Mar 2007 Posts: 23128
|
Posted: Fri Sep 29, 2023 3:15 pm Post subject: |
|
|
That is correct. You only need to add 3.12 for pygobject + anything it depends on. You can keep 3.10 or not, as you like. You can rebuild non-relevant packages with python 3.12 now or not, also as you like. |
|
Back to top |
|
 |
ExecutorElassus Veteran


Joined: 11 Mar 2004 Posts: 1471 Location: Berlin, Germany
|
Posted: Fri Sep 29, 2023 6:17 pm Post subject: |
|
|
OK, now I have the same problem with "PIL". I really wish there were a way to find out what python package provides a given module, because a lot of them have very minimal, generic names that you can't really search for. Is it dev-python/pillow?
UPDATE: It was pillow. I got past not finding all the needed python modules, but now startup fails with this error:
Code: | MLT transition frei0r.alphaout not found.
Gamma dropped for Lift Gain Gamma
default profile from prefs not found
Adding full track compositors
Traceback (most recent call last):
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/app.py", line 306, in on_activate
editorstate.project = projectdata.get_default_project()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/projectdata.py", line 610, in get_default_project
project = Project(profile)
^^^^^^^^^^^^^^^^
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/projectdata.py", line 106, in __init__
self.add_unnamed_sequence()
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/projectdata.py", line 277, in add_unnamed_sequence
self.add_named_sequence(name)
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/projectdata.py", line 281, in add_named_sequence
seq.create_default_tracks()
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/sequence.py", line 211, in create_default_tracks
self.add_full_track_compositors()
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/sequence.py", line 715, in add_full_track_compositors
compositor = self.create_compositor("##blend")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/sequence.py", line 619, in create_compositor
compositor.create_mlt_objects(self.profile)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'create_mlt_objects'
GPU test results {'VAAPI H.264 / .mp4': 0}
|
So, now some other python error, but apparently all the dependencies are there? Any idea what this is?
Cheers,
EE |
|
Back to top |
|
 |
Hu Administrator

Joined: 06 Mar 2007 Posts: 23128
|
Posted: Fri Sep 29, 2023 7:51 pm Post subject: |
|
|
That looks to me like a package bug. It tried to create some object, assumed the creation would never fail, then tried to use that object. When the object creation failed, that triggered an exception on use. The package should have detected the failure and given you a clear message, like "Failed to create compositor object: check <relevant conditions>". Without looking at the failed function, I cannot comment on what it needs or what is wrong. |
|
Back to top |
|
 |
ExecutorElassus Veteran


Joined: 11 Mar 2004 Posts: 1471 Location: Berlin, Germany
|
Posted: Fri Sep 29, 2023 8:03 pm Post subject: |
|
|
welp, time to post the issue to the github! |
|
Back to top |
|
 |
ExecutorElassus Veteran


Joined: 11 Mar 2004 Posts: 1471 Location: Berlin, Germany
|
Posted: Sat Sep 30, 2023 11:53 am Post subject: |
|
|
Also, the dependencies for flowblade are listed here. I just emerged frei0r-plugins, which didn't help, but is there anything else you see on that list that might create the problem I'm having?
Would the failed function be found in sequence.py? At that line number, I have this code:
Code: | # ------------------------------------------------------ compositors
def create_compositor(self, compositor_type):
compositor = mlttransitions.create_compositor(compositor_type)
compositor.create_mlt_objects(self.profile)
return compositor
|
Maybe there's some dependency I'm missing? As you can see from the console output, it's not finding a bunch of MLT transitions; maybe that's the issue? How would I fix that?
UPDATE: I added support for frei0r and opencv to mlt, and that got past the error I was getting. Now I get a whole new error! Progress! Here's how it looks now:
Code: | MLT service ladspa.1201 not found.
Loading transitions...
RGB Adjustment dropped for Color Adjustment
Hue dropped for Color Adjustment
Gamma dropped for Lift Gain Gamma
Adding full track compositors
restacking compositors!
Adding full track compositors DONE
G'MIC found
Player initialized with profile: HD 1080p 30 fps
Creating midbar data for 2.10...
GPU test results {'VAAPI H.264 / .mp4': 0}
Create SDL1 consumer...
Fatal Python error: Segmentation fault
Current thread 0x00007f07c24a2740 (most recent call first):
File "/usr/lib/python3.12/site-packages/mlt7.py", line 1088 in connect
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/mltplayer.py", line 169 in connect_and_start
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/app.py", line 549 in launch_player
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/app.py", line 342 in on_activate
File "/usr/lib/python3.12/site-packages/gi/overrides/Gio.py", line 42 in run
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/Flowblade/app.py", line 201 in main
File "/home/elassus/carrier6/flowblade/flowblade/flowblade-trunk/flowblade", line 93 in <module>
Extension modules: _mlt7, gi._gi, cairo._cairo, gi._gi_cairo, numpy.core._multiarray_umath, numpy.core._multiarray_tests, numpy.linalg._umath_linalg, numpy.fft._pocketfft_internal, numpy.random._common, numpy.random.bit_generator, numpy.random._bounded_integers, numpy.random._mt19937, numpy.random.mtrand, numpy.random._philox, numpy.random._pcg64, numpy.random._sfc64, numpy.random._generator, PIL._imaging, _dbus_bindings, _dbus_glib_bindings, PIL._imagingft (total: 21)
Segmentation fault
|
I'm guessing it's something to do with the "create SDL1 consumer," since "sdl_image" is given as one of the dependencies on Arch. I'll see if I can figure that out and report back.
UPDATE2: that didn't fix it
Cheers,
EE |
|
Back to top |
|
 |
ExecutorElassus Veteran


Joined: 11 Mar 2004 Posts: 1471 Location: Berlin, Germany
|
Posted: Sat Sep 30, 2023 2:09 pm Post subject: |
|
|
According to this issue report, there are problems with gentoo's MLT and SDL1 support, with people having similar issues with flowblade crashing right at this point in the startup.
So now I'm going to go search to see if there's some workaround (that issue posted an ebuild, but the portage tree also has libsdl as a compatibility layer for SDL1 apps).
It's really frustrating that so many linux developers are defaulting to just releasing flatpak apps, since Linux was supposed to be about NOT releasing monolithic, all-in-one app packages.
UPDATE: I found a workaround by copying the ebuild to my /usr/local overlay, adding an -r1 to the end, and editing it to build against SDL1 instead of SDL2. Now it starts, huzzah! I'll mark this as [SOLVED], but now I have the issue that flowblade is … not the most intuitive software to use. Simple stuff like adding a text overlay seems really difficult to do. Oh well, time to learn things!
Cheers,
EE |
|
Back to top |
|
 |
ExecutorElassus Veteran


Joined: 11 Mar 2004 Posts: 1471 Location: Berlin, Germany
|
Posted: Thu Nov 02, 2023 7:06 pm Post subject: |
|
|
UPDATE: mlt has now come out with version 7.20, and now flowblade segfaults right after initializing mlt.
Can anybody help me pin down what the issue is?
UPDATE: nevermind, it turns out that the problem is with mlt-7.20, which just added some new function that doesn't work with flowblade. Guess I'll wait for updates from upstream.
Cheers,
EE |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|