Commit Graph

19582 Commits (554c46d18600ca8cd7fbd85e4e05a108760ca400)
 

Author SHA1 Message Date
lat9nq 92bc51b66a cmake: Add VDPAU and NVDEC support to FFmpeg
Adds {h264_,vp9_}{nvdec,vdpau} hwaccels.
4 years ago
ameerj 537c6ac8fe vk_blit_screen: Fix non-accelerated texture size calculation
Addresses the potential OOB access in UnswizzleTexture.
4 years ago
Fernando S 521e6ac174
Merge pull request #6863 from spholz/fix-lan-play
Fix LAN Play
4 years ago
BreadFish64 14e93f133a kernel: Optimize GetHostThreadID 4 years ago
Sönke Holz 356dbf4d1d network_interface: correct formatting 4 years ago
spholz dc47b5a5bf network_interface: fix mingw-w64 build 4 years ago
Sönke Holz 70419f7a17 network: retrieve subnet mask and gateway info 4 years ago
Merry af6290ed12 dynarmic: Update and enable DYNARMIC_IGNORE_ASSERTS 4 years ago
Merry 1770503185 xbyak: Update include path 4 years ago
bunnei 87d63b858a
Merge pull request #6861 from yzct12345/const-mempy-is-all-the-speed
decoders: Optimize memcpy for the other functions
4 years ago
bunnei bdd617da03
Merge pull request #6868 from yzct12345/safe-threads-no-deadlocks
threadsafe_queue: Fix deadlock
4 years ago
bunnei aef0ca6f0d core: hle: kernel: Disable dispatch count tracking on single core.
- This would have limited value, and would be a mess to handle properly.
4 years ago
yzct12345 0ba521e634
threadsafe_queue: Fix deadlock
This fixes a lost wakeup in SPSCQueue. If the reader is in just the right position, the writer's notification will be lost and this will be a problem if the writer then does something to wait on the reader.

This was discovered to affect my upcoming stacktrace PR. I don't think any performance decrease will be noticeable because an uncontended mutex is smart enough to skip the syscall. This PR might also resolve some rare deadlocks but I don't know of any examples.
4 years ago
yzct12345 81ed54d13e
logging: Display backtrace on crash
This implements backtraces so we don't have to tell users how to use gdb anymore.

This prints a backtrace after abort or segfault is detected. It also fixes the log getting cut off with the last line containing only a bracket. This change lets us know what caused a crash not just what happened the few seconds before it.

I only know how to add support for Linux with GCC. Also this doesn't work outside of C/C++ such as in dynarmic or certain parts of graphics drivers. The good thing is that it'll try and just crash again but the stack frames are still there so the core dump will work just like before.
4 years ago
yzct12345 001675dced
logging: Simplify and make thread-safe
This simplifies the logging system.

This also fixes some lost messages on startup.

The simplification is simple. I removed unused functions and moved most things in the .h to the .cpp. I replaced the unnecessary linked list with its contents laid out as three member variables. Anything that went through the linked list now directly accesses the backends. Generic functions are replaced with those for each specific use case and there aren't many. This change increases coupling but we gain back more KISS and encapsulation.

With those changes it was easy to make it thread-safe. I just removed the mutex and turned a boolean atomic. I was planning to use this thread-safety in my next PR about stacktraces. It was actually async-signal-safety at first but I ended up using a different approach. Anyway getting rid of the linked list is important for that because have the list of backends constantly changing complicates things.
4 years ago
Sönke Holz 068c66672d configuration: fix mingw-w64 build 4 years ago
spholz deb65a5717 network: don't use reinterpret_cast in GetAvailableNetworkInterfaces 4 years ago
Sönke Holz e660334a21 network: fix mingw-w64 build
The header "combaseapi.h" of mingw-w64 defines "interface" as "struct".
4 years ago
Sönke Holz b18e1d031f network: don't use assert to check if no network interfaces are returned 4 years ago
bunnei 71d8d84b59
Merge pull request #6862 from german77/badsdl
input_common: Disable sdl raw input mode
4 years ago
Sönke Holz 0476751ee2 configuration: move network_interface include to source file 4 years ago
Sönke Holz a0c4c1a23a network: use Common::BitCast instead of std::bit_cast 4 years ago
Sönke Holz 8513e59431 network: narrow down scope of "result" in win32 code for
GetAvailableNetworkInterfaces
4 years ago
Sönke Holz 04ec426201 configuration: use tr instead of QStringLiteral for "None" item in
network interface combobox
4 years ago
Sönke Holz 771de32af1 network: use explicit bool conversions in GetAvailableNetworkInterfaces 4 years ago
Sönke Holz 765e97c347 network: initialize ip_addr in GetHostIPv4Address() 4 years ago
Sönke Holz acca8aca8c nifm: use operator*() instead of .value() to get value of std::optional 4 years ago
Sönke Holz 970d81abfc nifm: treat a missing host IP address as a non-critical error 4 years ago
spholz 78a8249593
Merge branch 'yuzu-emu:master' into fix-lan-play 4 years ago
Sönke Holz 21743daf38 network: correct formatting in network.cpp and network_interface.cpp 4 years ago
spholz 1e98e73828 configuration: add option to select network interface
This commit renames the "Services" tab to "Network" and adds a combobox that allows the user to select the network interface that yuzu should use. This new setting is now used to get the local IP address in Network::GetHostIPv4Address. This prevents yuzu from selecting the wrong network interface and thus using the wrong IP address. The return type of Network::GetHostIPv4Adress has also been changed.
4 years ago
bunnei 0509fe3377
Merge pull request #6838 from ameerj/sws-align
vic: Specify sws_scale height stride.
4 years ago
german77 2a2f0bfe9e input_common: Disable sdl raw input mode 4 years ago
ameerj 356e10898f codec: Replace deprecated av_init_packet usage 4 years ago
ameerj 0be4e402e2 cmake: Always find LIBVA, update windows FFmpeg version
Allows the use of VAAPI gpu decoders on system installed ffmpeg as well.
4 years ago
ameerj 659039ca6d nvdec: Implement GPU accelerated decoding for all platforms
Supplements the VAAPI intel gpu decoder by implementing the D3D11VA decoder for Windows, and CUVID/VDPAU for Nvidia and AMD on drivers linux respectively.
4 years ago
yzct12345 430255caf8
decoders: Templates allow memcpy optimizations 4 years ago
Mai M 043904bae1
Merge pull request #6855 from german77/sdl16
externals: Update sdl2 to 2.0.16
4 years ago
Mai M 756d76d971
Merge pull request #6860 from lat9nq/ranged-settings-2
settings: Fix MSVC issues
4 years ago
lat9nq 5be2d6fd28 settings: Fix MSVC issues
According to https://stackoverflow.com/questions/469508, we run into a
MSVC bug (since VS 2005) when using diamond inheritance for
RangedSetting.

This explicitly implements those functions in RangedSetting. GetValue is
implemented as just calling the inherited version. The explicit
converson operator is reimplemented. I opted for this over ignoring the
warning with a pragma since this specifies the inherited behavior, and I
have now less faith in MSVC to pick the right one.

In addition, we mark destructors as virtual to silence what I believe is
a fair MSVC compilation error.
4 years ago
bunnei e6b80c2cf8
Merge pull request #6776 from lat9nq/ranged-settings
settings: Implement settings ranges
4 years ago
german77 fe2e710003 externals: Update sdl2 to 2.0.16 4 years ago
Fernando S 6a082df427
Merge pull request #6820 from yzct12345/split-cache
texture_cache: Split out template definitions
4 years ago
Ameer J 9fbe188c01
Merge pull request #6837 from german77/no-pause-screenshot
main: Avoid stopping emulation when taking a screenshot
4 years ago
ameerj a779cede7c vic: Specify sws_scale height stride.
Silences a sws_scale runtime warning about unaligned strides.
4 years ago
bunnei 7df790f1ae
Merge pull request #6823 from yzct12345/memory-cleanup
memory: Clean up code
4 years ago
bunnei 3e3bd425c1
Merge pull request #6839 from ameerj/frame-cap-positon
configure_general: Swap positions of speed limit and frame limit options
4 years ago
Mai M 2da91ec75b
Merge pull request #6844 from ameerj/vp9-empty-frame
vp9: Ensure the first frame is complete
4 years ago
bunnei b9eee1c539
Merge pull request #6843 from FernandoS27/lives-in-a-pineapple-under-the-sea-2
yuzu-cmd/CMakeLists: Correct attribution for this function.
4 years ago
Fernando Sahmkow 23ca1eb82e yuzu-cmd/CMakeLists: Correct attribution for this function. 4 years ago