exelix11 / SysDVR

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

[Bug] OSX Crashing on TCP WiFi mod #260

Closed ChagataiDuru closed 3 months ago

ChagataiDuru commented 5 months ago

Describe the bug

image

To Reproduce I don't know my switch on TCP mode the client automatically see when I enter a game after I clicked it crash happens on the screenshot

Expected behavior Should connect and start streaming

Setup information

Additional context I couldn't test USB mod because I have MacBook Pro 2019 Intel when connect type c to type c to switch pc start charging. I have usb hub to when I type a to type c to switch, switch start charging but won't show up on USB list ( I was sure i am on the usb mode in this case)

exelix11 commented 5 months ago

Launch the client from terminal and add --debug log,dynlib to the command line, then paste the output here after the crash happens.

ChagataiDuru commented 5 months ago

Here, it seems client couldn't load runtimes? Is it because some permissions on my side? If it helps I don't think I disabled third party security check on my Mac

[Video stream] Connecting to console (attempt 0/5)...
[Audio stream] Connecting to console (attempt 0/5)...
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libavutil.57.dylib
Candidate library does not exist libavutil.57.dylib
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/liblibavutil.57.dylib
Candidate library does not exist liblibavutil.57.dylib
Attempt to load libavutil.57.dylib without a path...
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libswresample.4.dylib
Candidate library does not exist libswresample.4.dylib
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/liblibswresample.4.dylib
Candidate library does not exist liblibswresample.4.dylib
Attempt to load libswresample.4.dylib without a path...
Trying to load /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libswresample.dylib
Failed to load /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libswresample.dylib
Candidate library does not exist libswresample.dylib
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/liblibswresample.dylib
Candidate library does not exist liblibswresample.dylib
Attempt to load libswresample.dylib without a path...
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libavcodec.59.dylib
Candidate library does not exist libavcodec.59.dylib
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/liblibavcodec.59.dylib
Candidate library does not exist liblibavcodec.59.dylib
Attempt to load libavcodec.59.dylib without a path...
Trying to load /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libavcodec.dylib
Failed to load /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libavcodec.dylib
Candidate library does not exist libavcodec.dylib
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/liblibavcodec.dylib
Candidate library does not exist liblibavcodec.dylib
Attempt to load libavcodec.dylib without a path...
Player connection failed
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libswresample.4.dylib
Candidate library does not exist libswresample.4.dylib
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/liblibswresample.4.dylib
Candidate library does not exist liblibswresample.4.dylib
Attempt to load libswresample.4.dylib without a path...
Trying to load /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libswresample.dylib
Failed to load /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libswresample.dylib
Candidate library does not exist libswresample.dylib
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/liblibswresample.dylib
Candidate library does not exist liblibswresample.dylib
Attempt to load libswresample.dylib without a path...
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libavcodec.59.dylib
Candidate library does not exist libavcodec.59.dylib
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/liblibavcodec.59.dylib
Candidate library does not exist liblibavcodec.59.dylib
Attempt to load libavcodec.59.dylib without a path...
Trying to load /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libavcodec.dylib
Failed to load /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/libavcodec.dylib
Candidate library does not exist libavcodec.dylib
Candidate library does not exist /Users/cagatayduru/Downloads/SysDVR-Client-MacOs-x64/runtimes/osx-x64/native/liblibavcodec.dylib
Candidate library does not exist liblibavcodec.dylib
Attempt to load libavcodec.dylib without a path...
CurrentDomain_UnhandledException: System.ArgumentNullException: Value cannot be null. (Parameter 'handle')
   at System.ArgumentNullException.Throw(String) + 0x29
   at System.Runtime.InteropServices.NativeLibrary.TryGetExport(IntPtr, String, IntPtr&) + 0x3b
   at FFmpeg.AutoGen.FunctionResolver.FindFunctionPointer(IntPtr, String) + 0x19
   at FFmpeg.AutoGen.FunctionResolver.GetFunctionDelegate[T](IntPtr, String, Boolean) + 0x26
   at FFmpeg.AutoGen.DynamicallyLoadedBindings.<>c.<Initialize>b__2_357(AVPacket** pkt) + 0x70
   at SysDVR.Client.Targets.Player.H264StreamTarget.Finalize() + 0x33
   at System.Runtime.__Finalizer.DrainQueue() + 0x2b
   at System.Runtime.__Finalizer.ProcessFinalizers() + 0x3e
Unhandled Exception: System.ArgumentNullException: Value cannot be null. (Parameter 'handle')
   at System.ArgumentNullException.Throw(String) + 0x29
   at System.Runtime.InteropServices.NativeLibrary.TryGetExport(IntPtr, String, IntPtr&) + 0x3b
   at FFmpeg.AutoGen.FunctionResolver.FindFunctionPointer(IntPtr, String) + 0x19
   at FFmpeg.AutoGen.FunctionResolver.GetFunctionDelegate[T](IntPtr, String, Boolean) + 0x26
   at FFmpeg.AutoGen.DynamicallyLoadedBindings.<>c.<Initialize>b__2_357(AVPacket** pkt) + 0x70
   at SysDVR.Client.Targets.Player.H264StreamTarget.Finalize() + 0x33
   at System.Runtime.__Finalizer.DrainQueue() + 0x2b
   at System.Runtime.__Finalizer.ProcessFinalizers() + 0x3e
exelix11 commented 5 months ago

There's no need to disable security checks. I'll look into it and let you know, maybe the ffmpeg libraries are not properly signed.

exelix11 commented 5 months ago

So uh i can't seem to make sense out of this, do you get any dyld errors in the console output ? stuff like dlopen(....) failed because.....

First thing i'd say re-extract from the zip just to be safe. Then if it still doesn't work i'm going to assume it may be related to the signature on the dylib files so try to remove the signature from all the dylib files in runtimes/osx-x64/native by opening a terminal there and running codesign --remove-signature -v *.dylib, then try to launch sysdvr again.

If that did not work try to self-sign them using codesign -s - -v *.dylib, for good measure also sign the SysDVR-Client executable itself in the same way codesign -s - -v SysDVR-Client.

Hopefully at least one of these steps will make it work or at least print some more error information to work with.

ChagataiDuru commented 5 months ago

For your first question no I don't. I was pasted almost all logs you can see again in the following screenshot (This is what's written on it

./SysDVR-Client --debug log,dynlib
SysDVR-Client 6.0 - by exelix
https://github.com/exelix11/SysDVR
Build ID: b923f06

)

Screenshot 2024-01-12 at 01 03 05

So I extracted again than

codesign --remove-signature -v *.dylib
SDL2.dylib: signed  []
SDL2_image.dylib: signed  []
cimgui.dylib: signed  []
libavcodec.dylib: signed  []
libavdevice.dylib: signed  []
libavfilter.dylib: signed  []
libavformat.dylib: signed  []
libavutil.dylib: signed  []
libswresample.dylib: signed  []
libswscale.dylib: signed  []
libusb-1.0.dylib: signed  []

Still same exact errors

Than the second thing:

codesign -s - -v *.dylib
SDL2.dylib: signed Mach-O universal (x86_64 arm64) [SDL2-555549441672e334f0b9338bb50ea181927bb5bc]
SDL2_image.dylib: signed Mach-O universal (x86_64 arm64) [SDL2_image-5555494445fb5a3903753f01ac8a2b75ed31f0da]
cimgui.dylib: signed Mach-O universal (x86_64 arm64) [cimgui-55554944d73918a530cc31d0ab444288aa3916ed]
libavcodec.dylib: signed Mach-O universal (x86_64 arm64) [libavcodec-55554944f9a8c7458a9838ffb58c8a821afdc64e]
libavdevice.dylib: signed Mach-O universal (x86_64 arm64) [libavdevice-555549446c36c34aa10b395ca2fc1f403f494c49]
libavfilter.dylib: signed Mach-O universal (x86_64 arm64) [libavfilter-55554944b138f493fa333cddad53b1e0ae6c02af]
libavformat.dylib: signed Mach-O universal (x86_64 arm64) [libavformat-55554944c6394a0f1ca43d3d9fa54d29f6a5903f]
libavutil.dylib: signed Mach-O universal (x86_64 arm64) [libavutil-55554944569a818b6efd30d59bd71c4e2c375a6d]
libswresample.dylib: signed Mach-O universal (x86_64 arm64) [libswresample-5555494489d0edf8d22d3aca8d02d705aff3b196]
libswscale.dylib: signed Mach-O universal (x86_64 arm64) [libswscale-55554944d45dbad6893735659b6bf0e17d5ae5a5]
libusb-1.0.dylib: signed Mach-O universal (x86_64 arm64) [libusb-1-555549444fd7062ca600319b907e2b9e5ea20c2c]
Also for SysDVR-Client
SysDVR-Client: signed Mach-O thin (x86_64) [SysDVR-Client-5555494418ca884459d236f89572ce3cc980bc35]

And unfortunately exact same error and the screenshot after the self signed all of them

And Also I tried Simple Network Mode and VLC it works (of course with a bad high latency)

And also tried TCP on my windows machine it worked also

exelix11 commented 5 months ago

Unfortunately, I don't think I can help right now as I don't have a Mac to test. Will keep this open in case other Apple users report the same or if someone finds a workaround.

github-actions[bot] commented 4 months ago

This issue is stale because it has been open for 30 days with no activity.

github-actions[bot] commented 3 months ago

This issue was closed because it has been inactive for 14 days since being marked as stale.