exelix11 / SysDVR

Stream switch games to your PC via USB or network
GNU General Public License v2.0
1.51k stars 90 forks source link

Update FFmpeg.AutoGen from 5.1.1 to 6.0.0 #224

Closed Fijxu closed 1 year ago

Fijxu commented 1 year ago

Updating to the latest version (6.0.0 at the date of this commit) solves the issue System.DllNotFoundException: Unable to load DLL 'avcodec.59 under ': The specified module could not be found and #208 (Thanks to the GitHub bot for closing a actual issue that needs to be open...) on Linux operating systems. Unfortunately i can't test it because i don't own a Nintendo Switch.

Output:

Basic usage:
...
Press enter to continue.

Initializing video player with h264 codec.
ERROR: SysDVR usb device not found.
Make sure that SysDVR is running in usb mode on your console and that you installed the correct driver.
SysDVR protocol may change with updates, SysDVR on your console must be the same version as the client !

As i said before i don't have a switch so that's why it throws that ERROR msg

exelix11 commented 1 year ago

I know about this however the last time I checked libavcodec60 was not available on all distros (or maybe macos ?) making it harder to install it.

Idk how the situation has changed will have to do some googling to make sure this change won't actually make it harder to install on common distros.

In the meantime I'm working on a flatpak package which should solve Linux issues once and for all.

Also this PR will break the windows build as the CI script still downloads the old version.

Fijxu commented 1 year ago

I know about this however the last time I checked libavcodec60 was not available on all distros (or maybe macos ?) making it harder to install it.

I will test some distros later, i use Arch Linux so i am always up to date so it could be different for Ubuntu users or Debian users (since their packages are more outdated). Fedora should work good since they have up to date packages

In the meantime I'm working on a flatpak package which should solve Linux issues once and for all.

I agree, that should solve all libs problems on Linux; And flatpak is just getting better and better

Also this PR will break the windows build as the CI script still downloads the old version.

I never messed up with GitHub CIs, in what line it downloads the old version? (Not to modify it, just to see how it works)

exelix11 commented 1 year ago

It's in the release client script which is invoked by github actions https://github.com/exelix11/SysDVR/blob/master/ReleaseClient.bat

exelix11 commented 1 year ago

I did some tests, it seems common distros such as ubuntu and fedora still don't ship latest ffmepg so for the time being i'd rather stick to 59, will consider updating it in the future.

Hopefully flatpak will solve this mess, assuming i get USB to work reliably.