Can't install codecs

(Reported here first: Issue #555: The guide to install codecs is broken - quick-docs - Pagure.io)

Fedora 37 KDE, fully updated.

https://docs.fedoraproject.org/en-US/quick-docs/assembly_installing-plugins-for-playing-movies-and-music:

The first two commands work fine:
$ sudo dnf install gstreamer1-plugins-{bad-,good-,base} gstreamer1-plugin-openh264 gstreamer1-libav --exclude=gstreamer1-plugins-bad-free-devel
$ sudo dnf install lame* --exclude=lame-devel

The third command returns an error:
$ sudo dnf group upgrade --with-optional Multimedia

No match for group package “gstreamer1-libav”
Error:
Problem 1: problem with installed package libswscale-free-5.1.2-6.fc37.x86_64

  • package ffmpeg-libs-5.1.2-3.fc37.x86_64 conflicts with libswscale-free provided by libswscale-free-5.1.2-6.fc37.x86_64
  • package ffmpeg-libs-5.1.2-3.fc37.x86_64 conflicts with libswscale-free provided by libswscale-free-5.1.2-1.fc37.x86_64
  • package ffmpeg-5.1.2-3.fc37.x86_64 requires ffmpeg-libs(x86-64) = 5.1.2-3.fc37, but none of the providers can be installed
  • conflicting requests
  • package ffmpeg-5.1.2-9.fc37.x86_64 requires ffmpeg-libs(x86-64) = 5.1.2-9.fc37, but none of the providers can be installed
  • package ffmpeg-libs-5.1.2-9.fc37.x86_64 conflicts with libswscale-free provided by libswscale-free-5.1.2-6.fc37.x86_64
  • package ffmpeg-libs-5.1.2-9.fc37.x86_64 conflicts with libswscale-free provided by libswscale-free-5.1.2-1.fc37.x86_64

Problem 2: ffmpeg-libs-5.1.2-3.fc37.i686 has inferior architecture

  • conflicting requests
  • problem with installed package libavcodec-free-5.1.2-6.fc37.x86_64
  • package ffmpeg-libs-5.1.2-3.fc37.x86_64 conflicts with libavcodec-free provided by libavcodec-free-5.1.2-6.fc37.x86_64
  • package ffmpeg-libs-5.1.2-3.fc37.x86_64 conflicts with libavcodec-free provided by libavcodec-free-5.1.2-1.fc37.x86_64
  • ffmpeg-libs-5.1.2-9.fc37.i686 has inferior architecture
  • package ffmpeg-libs-5.1.2-9.fc37.x86_64 conflicts with libavcodec-free provided by libavcodec-free-5.1.2-6.fc37.x86_64
  • package ffmpeg-libs-5.1.2-9.fc37.x86_64 conflicts with libavcodec-free provided by libavcodec-free-5.1.2-1.fc37.x86_64
  • problem with installed package firefox-109.0-4.fc37.x86_64
  • package ffmpeg-libs-5.1.2-3.fc37.i686 conflicts with libavcodec-free provided by libavcodec-free-5.1.2-1.fc37.x86_64
  • package ffmpeg-libs-5.1.2-9.fc37.i686 conflicts with libavcodec-free provided by libavcodec-free-5.1.2-1.fc37.x86_64
  • package ffmpeg-libs-5.1.2-3.fc37.i686 conflicts with libavcodec-free provided by libavcodec-free-5.1.2-6.fc37.x86_64
  • package ffmpeg-libs-5.1.2-9.fc37.i686 conflicts with libavcodec-free provided by libavcodec-free-5.1.2-6.fc37.x86_64
    (try to add ‘–allowerasing’ to command line to replace conflicting packages or ‘–skip-broken’ to skip uninstallable packages)

Let’s check your repos and verify the installed package versions:

dnf repolist
sudo dnf distro-sync --refresh
sudo dnf list gstreamer\* lame\* --installed
1 Like

The packages libavcodec-free and libswscale-free are crippled version of ffmpeg-libs and that is why they conclict with each other.

You thus need to remove those packages if you want the full functionality of ffmpeg.

In your transaction you also have the 32 bit version of ffmpeg-libs. That would only be useful in special cases where it is needed by some old third party software. Do you have any 32 bit programs installed on your system?

1 Like

@vgaetera

$ dnf repolist

fedora                                                                    Fedora 37 - x86_64
fedora-cisco-openh264                                                     Fedora 37 openh264 (From Cisco) - x86_64
fedora-modular                                                            Fedora Modular 37 - x86_64
rpmfusion-free                                                            RPM Fusion for Fedora 37 - Free
rpmfusion-free-updates                                                    RPM Fusion for Fedora 37 - Free - Updates
updates                                                                   Fedora 37 - x86_64 - Updates
updates-modular                                                           Fedora Modular 37 - x86_64 - Updates

$ sudo dnf distro-sync --refresh

firefox, firefox-langpacks, virtualbox-guest-additions

$ sudo dnf list gstreamer* lame* --installed

Installed Packages
gstreamer1.x86_64                                                                      1.20.5-1.fc37                                            @updates               
gstreamer1-plugin-libav.x86_64                                                         1.20.5-1.fc37                                            @updates               
gstreamer1-plugin-openh264.x86_64                                                      1.20.3-3.fc37                                            @fedora-cisco-openh264 
gstreamer1-plugins-bad-free.x86_64                                                     1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-bad-free-extras.x86_64                                              1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-bad-free-fluidsynth.x86_64                                          1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-bad-free-wildmidi.x86_64                                            1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-bad-free-zbar.x86_64                                                1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-bad-freeworld.x86_64                                                1:1.20.5-1.fc37                                          @rpmfusion-free-updates
gstreamer1-plugins-base.x86_64                                                         1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-good.x86_64                                                         1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-good-extras.x86_64                                                  1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-good-gtk.x86_64                                                     1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-good-qt.x86_64                                                      1.20.5-1.fc37                                            @updates               
gstreamer1-plugins-ugly.x86_64                                                         1:1.20.5-1.fc37                                          @rpmfusion-free-updates
gstreamer1-plugins-ugly-free.x86_64                                                    1.20.5-1.fc37                                            @updates               
lame.x86_64                                                                            3.100-13.fc37                                            @fedora                
lame-libs.x86_64                                                                       3.100-13.fc37                                            @anaconda 
1 Like

@vekruse

I did use sudo dnf swap ffmpeg-free ffmpeg --best --allowerasing.
Then after that I used sudo dnf group upgrade --with-optional Multimedia and it said (37 packages downgraded):

It downgraded a lot of packages and still returned an error about qt5-qtwebengine.

Transaction Summary
================
Install     4 Packages
Downgrade  37 Packages
Skip        1 Package

Total download size: 150 

I tried sudo dnf update --best --allowerasing but didn’t use it:

Removing dependent packages:
 qt5-qtwebengine-freeworld   x86_64  5.15.10-2.fc37  @rpmfusion-free 131 M

Then I did sudo dnf remove qt5-qtwebengine-freeworld.

Then I did sudo dnf update and it essentially upgraded those 37 downgraded packages!

Now everything seems to be fine but something’s wrong somewhere I suppose.

1 Like

the qtwebengine-freeworld thing is a different issues—when Fedora updates qtwebenine, the RPM Fusion freeworld package needs to be re-built, but it always lags a little and in that interval, users will see it as a “broken dependency” etc. If one waits a few days until the freeworld package hits the repos, it’ll update correctly

Very glad to have found this conversation, I was having the same problem. Did not know how to get passed this, you guys helped me out with your trouble shooting. I use media codecs a lot, so it was important to me. Thanks a bunch, it really got me out of a pinch.

1 Like

Hi @freelibre1 I am facing a dilemma related to this.

I just want to ask, have you done another fresh install since this post?

If yes, do you always run sudo dnf swap ffmpeg-free ffmpeg --allowerasing now every time you do it?

I am curious to know if you just use the exact commands Fedora’s Docs tell you to use nowadays, or if you still run into issues that need to be solved through additional commands.

1 Like

On F37 and F38 that command was correct. Now with F39 the swap is no longer required since both ffmpeg-free from fedora and ffmpeg from rpmfusion happily reside together. They do need to be the same version but otherwise work well together.

The codecs are provided by ffmpeg-libs. You don’t strictly need ffmpeg itself unless you use the commands ffmpeg, ffplay or ffprobe.