Vlc unsupported codec

Hello. I am having trouble with vlc.
when i try open up a file i get the following error.

Codec not supported:

VLC could not decode the format “h264” (H264 - MPEG-4 AVC (part 10))

I have tried a bunch of things. I have sound and it plays but no video. I removed vlc and vlc-codecs. I made sure that the packman repository is being used. i then reinstalled everything and still the same error.

Any help would be great.

Hi,
Have you tried reading this post?

https://forums.opensuse.org/entry.php/160-openSUSE-13-2-Multimedia-Guide

or this?

http://opensuse-guide.org/codecs.php

IMHO, a common mistake is to mix repos that has the same codecs i.e. mixing packman and others like vlc repo is not a good idea.

Hello. Yeah i had read both of thoes. I did have vlc repo added and it wasnt working. Removed it uninstalled vlc and started again and this is the error i get. At the start i didnt even have sound.

Post in Code-Tags:

zypper se -si vlc
zypper lr -d

Well, if you remove a repo, things you might have installed from there will not be switched.
And that’s probably the source of your problem: you still have some libraries from the VLC repo installed that are incompatible to the Packman versions.

Do a “full repository vendor switch update” to Packman as explained here:
https://en.opensuse.org/SDB:Vendor_change_update#Full_repository_Vendor_change

Then it should work (if you have vlc-codecs installed).

zypper se -si vlc

S | Name | Type | Version | Arch | Repository
–±-------------±--------±------------±-------±------------------
i | libvlc5 | package | 2.2.1-286.2 | x86_64 | Packman Repository
i | libvlc5 | package | 2.2.1-286.2 | x86_64 | packman
i | libvlc5 | package | 2.2.1-286.2 | x86_64 | packman-essentials
i | libvlccore8 | package | 2.2.1-286.2 | x86_64 | Packman Repository
i | libvlccore8 | package | 2.2.1-286.2 | x86_64 | packman
i | libvlccore8 | package | 2.2.1-286.2 | x86_64 | packman-essentials
i | vlc | package | 2.2.1-286.2 | x86_64 | Packman Repository
i | vlc | package | 2.2.1-286.2 | x86_6
4 | packman
i | vlc | package | 2.2.1-286.2 | x86_64 | packman-essentials
i | vlc-codecs | package | 2.2.1-286.2 | x86_64 | Packman Repository
i | vlc-codecs | package | 2.2.1-286.2 | x86_64 | packman
i | vlc-codecs | package | 2.2.1-286.2 | x86_64 | packman-essentials
i | vlc-noX | package | 2.2.1-286.2 | x86_64 | Packman Repository
i | vlc-noX | package | 2.2.1-286.2 | x86_64 | packman
i | vlc-noX | package | 2.2.1-286.2 | x86_64 | packman-essentials
i | vlc-noX-lang | package | 2.2.1-286.2 | noarch | Packman Repository
i | vlc-noX-lang | package | 2.2.1-286.2 | noarch | packman
i | vlc-noX-lang | package | 2.2.1-286.2 | noarch | packman-essentials
i | vlc-qt | package | 2.2.1-286.2 | x86_64 | Packman Repository
i | vlc-qt | package | 2.2.1-286.2 | x86_64 | packman
i | vlc-qt | package | 2.2.1-286.2 | x86_64 | packman-essentials

zypper lr -d

| Alias | Name | Enabled | GPG Check | Refresh | Priority | Type | URI | Service

—±--------------------------±-----------------------------------±--------±----------±--------±---------±-------±-------------------------------------------------------------------------±-------
1 | Packman Repository | Packman Repository | Yes | (r ) Yes | Yes | 99 | rpm-md | http://ftp.gwdg.de/pub/linux/packman/suse/openSUSE_13.2/ |
2 | PlexRepo | PlexRepo | No | ---- | No | 99 | NONE | http://plex.r.worldssl.net/PlexMediaServer/fedora-repo/release/x86_64/ |
3 | home:awissu | home:awissu | Yes | (r ) Yes | Yes | 99 | rpm-md | http://download.opensuse.org/repositories/home:/awissu/openSUSE_13.2/ |
4 | libdvdcss | libdvdcss | Yes | (r ) Yes | Yes | 99 | rpm-md | http://opensuse-guide.org/repo/13.2/ |
5 | libdvdcss repository | libdvdcss repository | Yes | (r ) Yes | Yes | 99 | rpm-md | http://opensuse-guide.org/repo/13.2/ |
6 | openSUSE-13.2-0 | openSUSE-13.2-0 | No | ---- | Yes | 99 | yast2 | hd:///?device=/dev/disk/by-id/usb-IS917_innostor_201207222478-0:0-part2 |
7 | packman | packman | Yes | (r ) Yes | Yes | 99 | rpm-md | http://packman.inode.at/suse/openSUSE_13.2/ |
8 | packman-essentials | packman-essentials | Yes | (r ) Yes | Yes | 99 | rpm-md | http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_13.2/Essentials/ |
9 | packman-multimedia | packman-multimedia | Yes | (r ) Yes | Yes | 99 | rpm-md | http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_13.2/Multimedia/ |
10 | repo-debug | openSUSE-13.2-Debug | No | ---- | Yes | 99 | NONE | http://download.opensuse.org/debug/distribution/13.2/repo/oss/ |
11 | repo-debug-update | openSUSE-13.2-Update-Debug | No | ---- | Yes | 99 | NONE | http://download.opensuse.org/debug/update/13.2/ |
12 | repo-debug-update-non-oss | openSUSE-13.2-Update-Debug-Non-Oss | No | ---- | Yes | 99 | NONE | http://download.opensuse.org/debug/update/13.2-non-oss/ |
13 | repo-non-oss | openSUSE-13.2-Non-Oss | Yes | ( p) Yes | Yes | 99 | yast2 | http://download.opensuse.org/distribution/13.2/repo/non-oss/ |
14 | repo-oss | openSUSE-13.2-Oss | Yes | ( p) Yes | Yes | 99 | yast2 | http://download.opensuse.org/distribution/13.2/repo/oss/ |
15 | repo-source | openSUSE-13.2-Source | No | ---- | Yes | 99 | NONE | http://download.opensuse.org/source/distribution/13.2/repo/oss/ |
16 | repo-update | openSUSE-13.2-Update | Yes | (r ) Yes | Yes | 99 | rpm-md | http://download.opensuse.org/update/13.2/ |
17 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Yes | ( p) Yes | Yes | 99 | rpm-md | http://download.opensuse.org/update/13.2-non-oss/

Well, you don’t really need Packman three! times… and the dvdcss repo is doubled too.
I’d suggest to remove repos #5, #7, #8, and #9, but that’s unrelated to your problem.

sudo zypper rr 5 7 8 9

Your vlc packages do look ok, but some underlying library might be incompatible or crippled.
So, as I already wrote, do a full switch to Packman and it should work:

sudo zypper dup --from 1

I followed both of those but still no luck. Still the same error.

Also when running vlc from the terminal i get this.

[00000000024680b8] core libvlc: Running vlc with the default interface. Use ‘cvlc’ to use vlc without interface.
[00007f38f0c0b568] core decoder error: Codec `h264’ (H264 - MPEG-4 AVC (part 10)) is not supported.
[00007f3918c147a8] http access error: error: HTTP/1.1 403 Forbidden
[00007f38f8000f28] http access error: error: HTTP/1.1 403 Forbidden
[00007f3918c147a8] http access error: error: HTTP/1.1 403 Forbidden
[00007f38f8000f28] http access error: error: HTTP/1.1 403 Forbidden
[00007f3918c147a8] access_mms access error: error: HTTP/1.1 400 Invalid Request

I had this bug a few days ago a recent update fixed it.
My 2c, remove all vlc packages just changing repositories keeps old rpm’s you probobly have a package from the oss repo.
yast->software managment search and remove vlc vlc-codec etc
goto yast ->repository management and remove all your current packman repo’s (you only need the main one)
then click add, select community repositories, select packman, then OK
goto yast software management select repository view, select packman repo and click on the blue link that states switch system packages to this repo or better said do a Full Vendor Change
https://en.opensuse.org/SDB:Vendor_change_update#Using_YaST_2
click OK
restart yast->software management search and install vlc and vlc-codec, yast will pull all necessary packages.

And what kind of file are you actually trying to play?
Looks like an online stream that cannot be accessed if you get such errors.

I’m also getting this problem when trying to open a local .avi file:


VLC media player 3.0.0-git Vetinari (revision 3.0.0-git)
[00000000011450b8] core libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[00007fda44c04568] core decoder error: Codec `mp4v' (MPEG-4 Video) is not supported.

my vlc installation is


zypper se -si vlc
Loading repository data...
Reading installed packages...

S | Name              | Type    | Version            | Arch   | Repository        
--+-------------------+---------+--------------------+--------+-------------------
i | libvlc6           | package | 3.0.0+git3202-1.35 | x86_64 | Packman Repository
i | libvlccore9       | package | 3.0.0+git3202-1.35 | x86_64 | Packman Repository
i | vlc-beta          | package | 3.0.0+git3202-1.35 | x86_64 | Packman Repository
i | vlc-beta-codecs   | package | 3.0.0+git3202-1.35 | x86_64 | Packman Repository
i | vlc-beta-noX      | package | 3.0.0+git3202-1.35 | x86_64 | Packman Repository
i | vlc-beta-noX-lang | package | 3.0.0+git3202-1.35 | noarch | Packman Repository
i | vlc-beta-qt       | package | 3.0.0+git3202-1.35 | x86_64 | Packman Repository

(I’ve also tried the non-beta version).

I’ve recently had to abandon my nVidia proprietary drivers for the nouveau drvivers – https://forums.opensuse.org/showthread.php/508907-Proprietary-nVidia-drivers-not-working-after-update – and I’m wondering if the video rendering has been somehow become compromised because of that.

And have you done a full switch to Packman already?
https://en.opensuse.org/SDB:Vendor_change_update#Full_repository_Vendor_change

Please post your repo list too:

zypper lr -d

(I’ve also tried the non-beta version).

You should use the non-beta version.
This is known to be working, a beta could have specific bugs/problems.

I’ve recently had to abandon my nVidia proprietary drivers for the nouveau drvivers – https://forums.opensuse.org/showthread.php/508907-Proprietary-nVidia-drivers-not-working-after-update – and I’m wondering if the video rendering has been somehow become compromised because of that.

Not if you uninstalled them completely.
But if there’s a problem with that, you’d probably get a different error message I suppose.

Yes; pretty much from the get-go. Here you go:


# | Alias                              | Name                        | Enabled | GPG Check | Refresh | Priority | Type   | URI                                                          | Service
--+------------------------------------+-----------------------------+---------+-----------+---------+----------+--------+--------------------------------------------------------------+--------
1 | download.nvidia.com-opensuse       | nVidia Graphics Drivers     | No      | ----      | Yes     |   99     | rpm-md | http://download.nvidia.com/opensuse/13.2/                    |        
2 | download.opensuse.org-13.2-non-oss | Update Repository (Non-Oss) | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/13.2-non-oss/            |        
3 | download.opensuse.org-non-oss      | Main Repository (NON-OSS)   | Yes     | ( p) Yes  | Yes     |   99     | yast2  | http://download.opensuse.org/distribution/13.2/repo/non-oss/ |        
4 | download.opensuse.org-oss          | Main Repository (OSS)       | Yes     | ( p) Yes  | Yes     |   99     | yast2  | http://download.opensuse.org/distribution/13.2/repo/oss/     |        
5 | download.opensuse.org-update       | Main Update Repository      | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/13.2/                    |        
6 | ftp.gwdg.de-suse                   | Packman Repository          | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://ftp.gwdg.de/pub/linux/packman/suse/openSUSE_13.2/     |        
7 | openSUSE-13.2-0                    | openSUSE-13.2-0             | No      | ----      | No      |   99     | yast2  | cd:///?devices=/dev/disk/by-id/ata-PIONEER_BD-RW_BDR-208D    |        
8 | opensuse-guide.org-repo            | libdvdcss repository        | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://opensuse-guide.org/repo/13.2/           

You should use the non-beta version.
This is known to be working, a beta could have specific bugs/problems.

Since the non-beta version isn’t working, this is a bit moot at the moment. I’ve tried both, with equal amounts of success. I’ll happily switch back if there’s something different to try.

So, do it again now:

sudo zypper dup --from 6

And uninstall the package libvdpau-va-gl1 if that’s installed. VLC seems to have problems with it at the moment (at least with the version in 13.2), and if you are using the nvidia driver it’s breaking video playback completely, because it tries to redirect VDPAU (nvidia’s hardware decoding) to VA-API (intel’s equivalent), that’s its purpose.

Since the non-beta version isn’t working, this is a bit moot at the moment.

No it is not moot at all.

We might be trying to fix your problem for hours or days, and it might actually not work at all in the beta version because of a bug or missing feature (e.g. the corresponding codec missing by mistake).
There are reasons why something is called “Beta”…

I didn’t make myself clear. It’s been that way since installation and I also specially did it before replying to the thread in the first place. But, anyway, done again.

I’ve switched back to plain vlc 2.2.1-268.3 (from Packman)

And uninstall the package libvdpau-va-gl1 if that’s installed. VLC seems to have problems with it at the moment (at least with the version in 13.2), and if you are using the nvidia driver it’s breaking video playback completely, because it tries to redirect VDPAU (nvidia’s hardware decoding) to VA-API (intel’s equivalent), that’s its purpose.

I’m not using the nvidia driver. It’s screwing up and so I’m using nouveau, as per my first reply. Removing libvdpau-va-gl1 has made no change.

No it is not moot at all.

We might be trying to fix your problem for hours or days, and it might actually not work at all in the beta version because of a bug or missing feature (e.g. the corresponding codec missing by mistake).
There are reasons why something is called “Beta”…

Without some additional change, just flipping versions back and forth, when I’ve already done so, is just pointless. I’m happy to do so, since you’ve offered a concrete suggestion (removing libvdpau-va-gl1). Like I said, happy to do so if there is something different to try. But not just to jump though hoops I’ve already jumped through several times.

This is almost always a situation of mixing different versions packages from different repos. If you added a beta probably a good idea to remove entirely then re-add all from packman to be certain all the beta files are gone.

Are you certain you run nouveau, and not one of the lesser drivers??

I like Yast because it shows available versions and the one installed in the version tab at bottom right. This lets you see if all parts are the same version from the same repo, or change them if needed

BTW you have trouble with any other player? You know the vlc is not the only media player??? And problems wit others may point to a more generic problem

Well, maybe nouveau is actually your problem?

Uninstall vdpau-video too if you have that, that’s actually the reverse thing. It redirects VA-API to VDPAU and might be useful with the nvidia driver (only).

I have no idea how well (or if at all) VDPAU (or hardware decoding) works there.
Try different video output settings in VLC, in particular “XVideo output” or “X11 video output” (and not VDPAU). And try toggling “Accelerated video output (Overlay)”.

Also, I don’t really think that the nvidia driver “is screwing” up (although I can’t say for sure yet as I am not using it). Most likely you had some installation issue.
But we are discussing this in another thread anyway.

Btw, the package is called libvdpau_va_gl1 (note the underscores). If you called “zypper rm libvdpau-va-gl1” it wouldn’t remove anything and it might still be installed. (I’m just mentioning that to be sure there’s no misunderstanding).

Without some additional change, just flipping versions back and forth, when I’ve already done so, is just pointless.

Yes, it is.
Still, it’s better to stay with the stable version when trying to fix the problem. The beta version might have problems of its own or codecs missing as mentioned.

I had a similar problem. I installed vlc-qt, which doesn’t depend on vlc (?), so I didn’t have vlc-codecs installed. Without vlc-codecs it’s not so surprising that I was having trouble!

vlc-qt does depend on vlc, without vlc you wouldn’t be able to start vlc at all… :wink:

But none of the other packages require vlc-codecs. As vlc is included in the distribution but vlc-codecs not (for legal reasons), this wouldn’t work.
vlc-codecs is marked to “supplement” vlc though (which means it should be treated as recommended if vlc is installed), but unfortunately that information is missing in the Packman repo because they use an old (Debian) version of createrepo I think, that doesn’t support supplements.

Hi, I had the same problem on Leap 42.1. When I started VLC I got the message “H264 - MPEG-4 AVC (part 10)) is not supported”.
Videos could have been played with smplayer or kaffeine, but that’s not the point. I needed VLC, because it is the only player capable to display chapter markers in menu and navigate to a marker.
Therefore I made clean installation of Leap 42.1, then I installed VLC and its codecs from Packman repository. After a system update, VLC was suddenly broken and could not play videos with H264 codec.
Then I made again new installation of Leap 42.1, I installed VLC and codecs from Videolan repository. After a system update, VLC again was broken and could not play video files with H264 codec.
It appears there might be a conflict of codecs with the Dragon player. I have unistalled Dragon and then installed VLC beta (version 3.0.0) and corresponding codecs from Packman repository. Now everything works fine and videos with H264 codecs can be played.