I blundered by upgrading our OpenLP workstation to openSUSE Leap 15.4 (from 15.3) without first verifying that OpenLP had a working update available in 15.4. It did not. I had to download the source for 2.9.5 and run it from a terminal. After numerous complaints about missing python3 packages and installing said packages, OpenLP 2.9.5 will run, though it still complains that python3-pymediainfo is missing. I have verified it is installed. The problem is OpenLP will not play media files. Attempting to do so produces this error:

Traceback (most recent call last):

 File "/home/newcity/Downloads/openlp/openlp/core/lib/mediamanageritem.py", line 544, in on_live_click

   self.go_live()

 File "/home/newcity/Downloads/openlp/openlp/core/lib/mediamanageritem.py", line 565, in go_live

   service_item = self.build_service_item(item, remote=remote)

 File "/home/newcity/Downloads/openlp/openlp/core/lib/mediamanageritem.py", line 663, in build_service_item

   if self.generate_slide_data(service_item, item=item, remote=remote, context=context):

 File "/home/newcity/Downloads/openlp/openlp/plugins/media/lib/mediaitem.py", line 237, in generate_slide_data

   service_item.set_media_length(self.media_controller.media_length(filename))

 File "/home/newcity/Downloads/openlp/openlp/core/ui/media/mediacontroller.py", line 352, in media_length

   if MediaInfo.can_parse():

NameError: name 'MediaInfo' is not defined

Traceback (most recent call last):

 File "/home/newcity/Downloads/openlp/openlp/core/lib/mediamanageritem.py", line 544, in on_live_click

   self.go_live()

 File "/home/newcity/Downloads/openlp/openlp/core/lib/mediamanageritem.py", line 565, in go_live

   service_item = self.build_service_item(item, remote=remote)

 File "/home/newcity/Downloads/openlp/openlp/core/lib/mediamanageritem.py", line 663, in build_service_item

   if self.generate_slide_data(service_item, item=item, remote=remote, context=context):

 File "/home/newcity/Downloads/openlp/openlp/plugins/media/lib/mediaitem.py", line 237, in generate_slide_data

   service_item.set_media_length(self.media_controller.media_length(filename))

 File "/home/newcity/Downloads/openlp/openlp/core/ui/media/mediacontroller.py", line 352, in media_length

   if MediaInfo.can_parse():

NameError: name 'MediaInfo' is not defined

Any ideas how to fix this?

This may be a mis-named package. Check if "python3-mediainfo" is installed, as well as the "mediainfo" package.

On openSUSE the only python package with “mediainfo” in the name is python3-pymedianfo. It and mediainfo are installed. openSUSE's package manager describes python3-pymediainfo as “Python wrapper for the mediainfo library”.

Hrm. What's the version of pymediainfo?

The full openSUSE version number is 5.1.0-bp154.1.24, built in May.

7 days later

I had to get this box back into production so I reinstalled openSUSE Leap 15.3 and OpenLP 2.4.6.

5 months later

Did we ever get a solution for this? I had the same problem with Leap 15.4. I had 2.9.4 working, but foolishly tried to upgrade to 3.01 / 3.02 to no avail and now can't go back.

a month later

I did not. I reverted back to openSUSE Leap 15.3 and will leave it there until I can confirm that it works under 15.4. This is a single-function box so I'm okay with older software—provided it works.