MP4 Players not working, VLC plays audio but doesn't show video and MPV crashes.

Gonna Preface this by saying I’ve been using Linux for a few months but I’m still a noob so detailed answers would be appreciated :o

So I installed Tumbleweed yesterday and everything has gone fine so far except for one thing. My MP4 Players are not working, VLC plays audio but doesn’t show video and MPV just crashes when I attempt to play a video. I’m on the latest kernel and I’ve got the latest Nvidia drivers (460.84)

I installed SMPlayer to confirm it wasn’t just those two mp4 players and I received this log upon it crashing:

/usr/bin/mpv --no-config --no-quiet --terminal --no-msg-color --input-ipc-server=/tmp/smplayer-mpv-1d61 --msg-level=ffmpeg/demuxer=error --no-fs --hwdec=no --sub-auto=fuzzy --no-input-default-bindings --input-vo-keyboard=no --no-input-cursor --cursor-autohide=no --no-keepaspect --wid=81788947 --monitorpixelaspect=1 --osd-level=1 --osd-scale=1 --osd-bar-align-y=0.6 --sub-ass --embeddedfonts --sub-ass-line-spacing=0 --sub-scale=1 --sub-font=Arial --sub-color=#ffffffff --sub-shadow-color=#ff000000 --sub-border-color=#ff000000 --sub-border-size=0.75 --sub-shadow-offset=2.5 --sub-font-size=50 --sub-bold=no --sub-italic=no --sub-margin-y=8 --sub-margin-x=20 --sub-codepage=ISO-8859-1 --sub-pos=100 --volume=55 --cache=auto --screenshot-template=cap_%F_%p_%02n --screenshot-format=jpg --screenshot-directory=/home/admin/Pictures/smplayer_screenshots --audio-pitch-correction=yes --volume-max=110 --term-playing-msg=MPV_VERSION=${=mpv-version:}
INFO_VIDEO_WIDTH=${=width}
INFO_VIDEO_HEIGHT=${=height}
INFO_VIDEO_ASPECT=${=video-params/aspect}
INFO_VIDEO_FPS=${=container-fps:${=fps}}
INFO_VIDEO_FORMAT=${=video-format}
INFO_VIDEO_CODEC=${=video-codec}
INFO_AUDIO_FORMAT=${=audio-codec-name}
INFO_AUDIO_CODEC=${=audio-codec}
INFO_AUDIO_RATE=${=audio-params/samplerate}
INFO_AUDIO_NCH=${=audio-params/channel-count}
INFO_LENGTH=${=duration:${=length}}
INFO_DEMUXER=${=current-demuxer:${=demuxer}}
INFO_SEEKABLE=${=seekable}
INFO_TITLES=${=disc-titles}
INFO_CHAPTERS=${=chapters}
INFO_TRACKS_COUNT=${=track-list/count}
METADATA_TITLE=${metadata/by-key/title:}
METADATA_ARTIST=${metadata/by-key/artist:}
METADATA_ALBUM=${metadata/by-key/album:}
METADATA_GENRE=${metadata/by-key/genre:}
METADATA_DATE=${metadata/by-key/date:}
METADATA_TRACK=${metadata/by-key/track:}
METADATA_COPYRIGHT=${metadata/by-key/copyright:}
INFO_MEDIA_TITLE=${=media-title:}
INFO_STREAM_PATH=${stream-path}
–audio-client-name=SMPlayer --term-status-msg=STATUS: ${=time-pos} / ${=duration:${=length:0}} P: ${=pause} B: ${=paused-for-cache} I: ${=core-idle} VB: ${=video-bitrate:0} AB: ${=audio-bitrate:0} /run/media/admin/USB1/1.mp4

(+) Video --vid=1 () (h264 1280x720 30.307fps)
(+) Audio --aid=1 --alang=eng (
) (aac 2ch 48000Hz)
Failed to initialize a decoder for codec ‘h264’.
Video: no video

Exiting… (Errors when loading file)

Can anyone help me? Is this an error with the GPU?

Welcome to the openSUSE Forums!
Apparently you have no h264 codec installed. Did you add the Packman repo and switched packages to it? Ask here if you don’t know how to do that.
Please show the result of:

zypper lr -d

Did you add the Packman repo and switched packages to it? Ask here if you don’t know how to do that.
Not sure how to do that.

**Here’s the result of Zypper lr -d:
**

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

–±--------------------±----------------------------±--------±----------±--------±---------±-------±---------------------------------------------------------------------------------------------±-------
1 | NVIDIA | NVIDIA | Yes | (r ) Yes | Yes | 99 | rpm-md | https://download.nvidia.com/opensuse/tumbleweed |
2 | brave-browser | brave-browser | Yes | (r ) Yes | No | 99 | rpm-md | https://brave-browser-rpm-release.s3.brave.com/x86_64/ |
3 | openSUSE-20210712-0 | openSUSE-20210712-0 | No | ---- | ---- | 99 | rpm-md | hd:/?device=/dev/disk/by-id/usb-Kingston_DataTraveler_2.0_408D5C1EF726C1B19977923A-0:0-part2 |
4 | packman | packman | Yes | ( p) Yes | Yes | 99 | NONE | http://packman.inode.at/suse/openSUSE_Tumbleweed/ |
5 | repo-debug | openSUSE-Tumbleweed-Debug | No | ---- | ---- | 99 | NONE | http://download.opensuse.org/debug/tumbleweed/repo/oss/ |
6 | repo-non-oss | openSUSE-Tumbleweed-Non-Oss | Yes | (r ) Yes | Yes | 99 | rpm-md | http://download.opensuse.org/tumbleweed/repo/non-oss/ |
7 | repo-oss | openSUSE-Tumbleweed-Oss | Yes | (r ) Yes | Yes | 99 | rpm-md | http://download.opensuse.org/tumbleweed/repo/oss/ |
8 | repo-source | openSUSE-Tumbleweed-Source | No | ---- | ---- | 99 | NONE | http://download.opensuse.org/source/tumbleweed/repo/oss/ |
9 | repo-update | openSUSE-Tumbleweed-Update | Yes | (r ) Yes | Yes | 99 | rpm-md | http://download.opensuse.org/update/tumbleweed/ |

You have packman installed and enabled as repo #4. Maybe you didn’t switch packages to that repo. To do so open a terminal and issue:

sudo zypper dup --from packman --allow-vendor-change

Additional details here and here.
BTW, when pasting output from a terminal command, ensure to enclose it between CODE tags (use the # button in the second row above the editing area) including the command and the trailing prompt, so that we are sure to see everything your system showed.

I tried that command but I ended up with:

[FONT=monospace]admin@mark-pc:~> sudo zypper dup --from packman --allow-vendor-change 
Retrieving repository 'packman' metadata .........................[error] 
Repository 'packman' is invalid.
[packman|http://packman.inode.at/suse/openSUSE_Tumbleweed/] Valid metadata not found at specified URL
History:
 - |] Error trying to read from 'http://packman.inode.at/suse/openSUSE_Tumbleweed/'
 - Permission to access 'http://packman.inode.at/suse/openSUSE_Tumbleweed/content' denied.

Please check if the URIs defined for this repository are pointing to a valid repository. 
Warning: Skipping repository 'packman' because of the above error. 
Some of the repositories have not been refreshed because of an error.
Loading repository data... 
Reading installed packages... 
Computing distribution upgrade... 
Nothing to do. 
admin@mark-pc:~>  


[/FONT]

OK, apparently there is a problem with the inode.at mirror, so let’s change it.
Remove the current packman repo:

sudo zypper removerepo packman

Then add a different mirror:

sudo zypper ar -cfp 90 https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Tumbleweed/ packman

and finally retry switching packages to it
:

[FONT=monospace]sudo zypper dup --from packman --allow-vendor-change[/FONT]

Check out this link: https://opensuse-guide.org/codecs.php

It’s a pretty good one to use to make sure you have covered all the bases covered within it.

I tried removing it and then adding the link you gave me however it didn’t work so I tried the original link and it worked! Thank you very much!

Nice to see that your problem is solved. Apparently there are (transient?) problems on those Packman repos, I had to try 3 times before the link the SDB Wiki (and myself) suggested worked…