I have been scouring google and forum posts, etc. for answers to this, but haven't found anything that quite addresses it.
VLC won't play several different video formats, but plays the sound after displaying the following message:
No suitable decoder module:
VLC does not support the audio or video format "h264". Unfortunately there is no way for you to fix this.
Running VLC from command line with verbosity produces the following clues:
[0x7f3164c05e88] main decoder warning: cannot load module `/usr/lib/vlc/plugins/codec/libavcodec_plugin.so' (/usr/lib/libavcodec.so.54: symbol av_asprintf, version LIBAVUTIL_51 not defined in file libavutil.so.51 with link time reference)
[0x7f3164c05e88] main decoder error: corrupt module: /usr/lib/vlc/plugins/codec/libavcodec_plugin.so
Using "pacman -Qo" shows that these files are owned by ffmpeg. I have tried removing and re-installing ffmpeg, with no change in results.
I can play the video files with totem, so it seems like some kind of glitch with ffmpeg.
Last edited by ruhly (2012-12-28 18:12:33)
When I first installed Arch I had problem with VLC and Clementine becouse I didn't install gstreamer-plugins.Installing it fixed my problem. I could play Kaffeine but not those two.Try to install it if you want.
Last edited by 10PinkPanther (2012-11-26 05:37:23)
Here is what I have installed vis-a-vis gstreamer (pcaman -Qs gstreamer):
GStreamer bindings for clutter
A collection of GStreamer effects
Gstreamer libav Plugin
GStreamer Multimedia Framework Bad Plugins
GStreamer Multimedia Framework Base Plugins
GStreamer Multimedia Framework Base Plugin libraries
GStreamer Multimedia Framework Good Plugins
GStreamer Multimedia Framework
GStreamer Multimedia Framework
GStreamer Multimedia Framework Bad Plugin libraries (gst-plugins-bad)
local/gstreamer0.10-bad-plugins 0.10.23-3 (gstreamer0.10-plugins)
GStreamer Multimedia Framework Bad Plugins (gst-plugins-bad)
GStreamer Multimedia Framework Base plugin libraries
local/gstreamer0.10-base-plugins 0.10.36-1 (gstreamer0.10-plugins)
GStreamer Multimedia Framework Base Plugins (gst-plugins-base)
local/gstreamer0.10-ffmpeg 0.10.13-1 (gstreamer0.10-plugins)
Gstreamer FFMpeg Plugin
GStreamer Multimedia Framework Good plugin libraries
local/gstreamer0.10-good-plugins 0.10.31-1 (gstreamer0.10-plugins)
GStreamer Multimedia Framework Good Plugins (gst-plugins-good)
Python bindings for GStreamer 0.10
GStreamer Multimedia Framework Ugly plugin libraries
local/gstreamer0.10-ugly-plugins 0.10.19-3 (gstreamer0.10-plugins)
GStreamer Multimedia Framework Ugly Plugins (gst-plugins-ugly)
local/totem 3.6.3-1 (gnome-extra)
GNOME3 movie player based on GStreamer
Is anyone else having this problem with VLC 2.0.4, or is it just something I have wrought on myself?
It seems you have all gstreamer plugins like I have.I also have extra-vlc 2.0.4-4 installed from AUR.Maybe it helps.
Did you try to downgrade ffmpeg?
I dont use vlc, but seems like a bug.
Last edited by ganastasiou (2012-11-26 07:40:29)
It does appear to be a bug with ffmpeg-1:1.0-2, specifically with libavcodec.so.54 or libavutil.so.51. mplayer crashes on the same error that VLC produces; both use ffmpeg.
totem doesn't use ffmpeg and is working fine on the same video file.
I haven't got around to downgrading ffmpeg yet, but that is next on the list.
I didn't see any issues on the ffmpeg or vlc bug trackers, so maybe this is just a problem with the x86_64 package?
I am suddenly having this same problem on an x86_64 install of arch. I'm not sure if it broke after an upgrade.
I tried downgrading ffmpeg but that removes libavcodec.so.54 and adds libavcodec.so.53, so then VLC can't find libavcodec.so.54.
After that I tried downgrading vlc but the downgraded version that I tried also wanted libavcodec.so.54
I tried symlinking libavcodec.so.53 to libavcodec.so.54 and the other two missing files to ones that sound similar, which resulted in this
[0x1543108] main libvlc warning: cannot load module `/usr/lib/vlc/plugins/demux/libavformat_plugin.so' (/usr/lib/libavcodec.so.54: version `LIBAVCODEC_54' not found (required by /usr/lib/vlc/plugins/demux/libavformat_plugin.so))
So obviously vlc is not going to fall for that.
By the way, this is the error that I get with up to date packages:
[0x7f0d4cc0d548] main decoder warning: cannot load module `/usr/lib/vlc/plugins/codec/libavcodec_plugin.so' (/usr/lib/libavcodec.so.54: symbol av_asprintf, version LIBAVUTIL_51 not defined in file libavutil.so.51 with link time reference)
[0x7f0d4cc0d548] main decoder error: corrupt module: /usr/lib/vlc/plugins/codec/libavcodec_plugin.so
So, same as OP
Last edited by arthurdent (2012-11-28 19:51:31)
I have also been encountering the same issue. I tried installing the gstreamer plugins, as well as downgrading ffmpeg, and install vlc-git from AUR, all w/o success.
Searching around for the issue, I found a post for another distro that mentioned that ffmpeg needs to be built w/ enabled-shared, so I tried using ffmpeg-shared-git from AUR, but I was receiving a compile error (Sorry, don't have it on-hand) which occurred because the dependency in x264 was not built w/ enabled-shared as well.
I did the following, which made most of my videos work - .wmv sound is mixed w/ static, but as for as I can tell, my AVIs, MKV and MP4s are working well.
Obtain (download/yaourt) x264-git from AUR.
Edit PKBUILD, adding
to the configure line.
Complete install of x264-git
Obain (download/yaourt) ffmpeg-git from AUR.
Edit PKBUILD, adding
to the configure line.
Complete install of ffmpeg-git
Reinstall vlc (not sure if this is necessary but that was what I did)
So this workaround worked for me for most videos. I tried using vlc-git from AUR as well, and the same audio corruption occurs for wmv files.
rsramirez, thank you! Your solution worked for me.
I wonder what we all have in common that is causing this problem that other people are not having.
After trying to rollback vlc, ffmpeg, and x264 packages to previous versions, I gave up after the problem was still occurring on early August versions of the packages.
I followed rsramirez approach in post above.
The only change I did was to use more configure flags to enable additional libraries. I roughly followed the PKGBUILD file from latest standard package.
I did not re-install vlc afterwards, I thought to try it first w/o...
I ran vlc from a terminal window:
vlc -vvv file:///pathtofile/filename.m4v
When I reviewed the console output I saw this:
avcodec decoder debug: ffmpeg codec (H264 - MPEG-4 AVC (part 10)) started
where the error was occurring before.
I also noted that VLC produced this message on start up:
main libvlc warning: cannot load module `/usr/lib/vlc/plugins/codec/libx264_plugin.so' (libx264.so.128: cannot open shared object file: No such file or directory)
Not sure if it should be doing that, but for now, the file I was originally trying to play works.
I'm not sure I would call this solved since it's still not clear why this is happening for some people and not others. Plus, it's not really a long term solution.
Here is how I fixed this without having to constantly recompile ffmpeg-git and x264-git from the aur.
I removed vlc, ffmpeg, and x264, as well as everything that depended on it, and carefully kept track of all of the packages that I wanted to reinstall.
Then I cleared the pacman cache with
# pacman -Sc
and then I forced a sync and reinstalled vlc.
# pacman -Syy vlc
Well, my mileage is varying. Based on arthurdent's last post, and some recent updates to packages involved, I thought I would try to replace ffmpeg-git and x264-git packages with ffmpeg and x264 packages.
It didn't work, I still had the same problem with VLC.
I changed back to the 'git' packages and VLC is working again.
In the meantime, I have discovered that x264-git breaks mythbackend.
Now I am thinking that I should file some form of bug report.
In spite of arthurdent's recent post, I am going to remove the [SOLVED] from this thread.
I will consider this solved when I can install standard packages and have VLC and mythbackend working without problems.
I was able to get mythbackend working again by doing a symbolic link:
cd /usr/lib ln -sf libx264.so libx264.so.128
This also eliminated the libx264.so.128 failure to load message when VLC is started.
Now that I have VLC and mythbackend working, even though I am using the git versions for ffmpeg and libx264 I am going to consider this issue solved.
The standard packages are still not working, but now is not the time to pursue the reasons why; there are other fish frying.