Commit Graph

16215 Commits (d33399e1f46a10490b586196c6d0db0f04be4206)
 

Author SHA1 Message Date
bunnei d33399e1f4
Merge pull request #4729 from ameerj/nvdec-prod
video_core: NVDEC Implementation
4 years ago
bunnei c7f32931ee
Merge pull request #4832 from bunnei/cpu-manager-microprofile-fix
core: cpu_manager: Add missing call to MicroProfileOnThreadExit().
4 years ago
bunnei 1828f82000
Merge pull request #4833 from bunnei/timezonemanager-explicit
hle: services: TimeZoneContentManager: This can be made explicit.
4 years ago
ameerj eb67a45ca8 video_core: NVDEC Implementation
This commit aims to implement the NVDEC (Nvidia Decoder) functionality, with video frame decoding being handled by the FFmpeg library.

The process begins with Ioctl commands being sent to the NVDEC and VIC (Video Image Composer) emulated devices. These allocate the necessary GPU buffers for the frame data, along with providing information on the incoming video data. A Submit command then signals the GPU to process and decode the frame data.

To decode the frame, the respective codec's header must be manually composed from the information provided by NVDEC, then sent with the raw frame data to the ffmpeg library.

Currently, H264 and VP9 are supported, with VP9 having some minor artifacting issues related mainly to the reference frame composition in its uncompressed header.

Async GPU is not properly implemented at the moment.

Co-Authored-By: David <25727384+ogniK5377@users.noreply.github.com>
4 years ago
bunnei 9f08cea2c4
Merge pull request #4834 from lioncash/copy-fn
controller: Pass ControllerParameters by reference in ReconfigureControllers()
4 years ago
Lioncash 6b5f565324 controller: Pass ControllerParameters by reference in ReconfigureControllers()
Prevents unnecessary copies and heap reallocations from occurring.
4 years ago
bunnei 3984bb6def hle: services: TimeZoneContentManager: This can be made explicit. 4 years ago
bunnei 54aabb00b0 core: cpu_manager: Add missing call to MicroProfileOnThreadExit().
- Fixes an occasional crash when trying to launch subsequent games.
4 years ago
Rodrigo Locatti 2f6ba54483
Merge pull request #4827 from lioncash/trunc
controller: Convert led_patterns integer literals to bool literals
4 years ago
Rodrigo Locatti ae3a755d13
Merge pull request #4828 from lioncash/lockguard
general: Use template deduction guides for lock_guard
4 years ago
Lioncash 98f4c5e7b8 general: Use template deduction guides for lock_guard
Same behavior, less code.
4 years ago
Lioncash 061a63547f controller: Convert led_patterns integer literals to bool literals
'bool' isn't always guaranteed to be the same size as an int, so this
can technically cause truncation warnings if we support other platforms.
4 years ago
LC fe53ee26ce
Merge pull request #4826 from Morph1984/resolve-warning
applets/profile_select: Resolve a warning in exec()
4 years ago
Morph 9afbcd9e8a applets/profile_select: Resolve a warning in exec()
Resolves a warning where not all control paths return a value.
4 years ago
bunnei ab052cf684
Merge pull request #4817 from Kewlan/open-single-save-location
main/profile_select: Don't ask for profile when there's only one.
4 years ago
LC 6f6d83befa
Merge pull request #4816 from Morph1984/controller-disconnect-fix
sdl_impl: Fix controller reconnection issues
4 years ago
bunnei 3e46934442
Merge pull request #4706 from ReinUsesLisp/cmake-host-shaders
video_core: Fix instances where msbuild always regenerated host shaders
4 years ago
bunnei e7042163c8
Merge pull request #4792 from bunnei/rtc-fix
service: time: Update current time with changes to RTC setting.
4 years ago
Kewlan 85b5b816cf Don't ask for profile when there's only one. 4 years ago
Lioncash ea20b5c970 core: Fix clang build pt.3
Should finally resolve building with clang.
4 years ago
Morph 2f852f182a sdl_impl: Fix controller reconnection issues
It turns out that after a controller is disconnected, there is a chance that events from the previous controller are sent/processed after it has been disconnected.
This causes the previously disconnected controller to reappear as connected due to GetSDLJoystickBySDLID() emplacing this controller back to the map.

Fix this by only returning an SDLJoystick if and only if it exists in the map.
4 years ago
bunnei 1fc61d09d3
Merge pull request #4811 from lioncash/warn-video
video_core: Conditially activate relevant compiler warnings
4 years ago
Lioncash e408bd3b7c core: Fix clang build pt.2
Resolves the clang build issue in a more unintrusive way.
4 years ago
LC 2e74b79e89
Merge pull request #4814 from yuzu-emu/revert-4796-clang
Revert "core: Fix clang build"
4 years ago
bunnei 3d592972dc
Revert "core: Fix clang build" 4 years ago
Lioncash 678d012c2c video_core: Conditially activate relevant compiler warnings
These compiler flags aren't shared with clang, so specifying these flags
unconditionally can lead to a bit of warning spam.

While we're in the area, we can also enable -Wunused-but-set-parameter
given this is almost always a bug.
4 years ago
Lioncash fdd9154069 kernel: Fix build with recent compiler flag changes
This slipped through the cracks due to another change being merged
before the compiler flag changes.
4 years ago
LC 536c51912d
Merge pull request #4807 from ReinUsesLisp/glasm-robust-ssbo
gl_arb_decompiler: Implement robust buffer operations
4 years ago
LC 88d5140cf2
Merge pull request #4796 from lioncash/clang
core: Fix clang build
4 years ago
bunnei 940c3bf68d
Merge pull request #4390 from ogniK5377/get-applet-inf-stub
nifm: GetAppletInfo stub
4 years ago
LC ea8345cdcd
Merge pull request #4809 from Morph1984/mjolnir-p3
configure_input_player: Fix modifier buttons
4 years ago
bunnei e03dc4d569
Merge pull request #4627 from Morph1984/fix-dinput-controller-disconnect
sdl_impl: Erase the SDLJoystick entry after removing a controller
4 years ago
Morph ff82f3894a configure_input_player: Fix modifier buttons
Fix them for real this time, now they finally work.
4 years ago
ReinUsesLisp f21a189148 gl_arb_decompiler: Implement robust buffer operations
This emulates the behavior we get on GLSL with regular SSBOs with a
pointer + length pair. It aims to be consistent with the crashes we
might get.

Out of bounds stores are ignored. Atomics are ignored and return zero.
Reads return zero.
4 years ago
David Marcec 298b50e220 Added remaining params 4 years ago
David Marcec acd35e1b60 nifm: GetAppletInfo stub
Fixes crash for Catherine Full Body
4 years ago
bunnei 60bd54776a
Merge pull request #4788 from ReinUsesLisp/lockfree-host-thread
kernel: Implement host thread register methods without locking
4 years ago
bunnei e7a26ecec5
Merge pull request #4785 from Morph1984/fs-hades
filesystem: Fix CreateDirectory and DeleteFile
4 years ago
bunnei f1ead11df7
Merge pull request #4204 from ReinUsesLisp/vulkan-1.0
renderer_vulkan: Create and properly use Vulkan 1.0 instances when 1.1 is not available
4 years ago
bunnei 598ef6b0b3
Merge pull request #4802 from lioncash/bcat
core: Add boxcat sources with target_sources
4 years ago
bunnei 54b977acaa
Merge pull request #4783 from bunnei/nvdrv-freespace
hle: service: nvdrv: Implement nvhost_as_gpu::FreeSpace.
4 years ago
Lioncash 0ab7bfdfce core: Add boxcat sources with target_sources
Same behavior, minus a script variable.
4 years ago
bunnei 2190f1a2b7
Merge pull request #4801 from lioncash/missing-bound
mii/manager: Make use of unused lower bound in GetRandomValue()
4 years ago
bunnei 743fe1aea3
Merge pull request #4782 from ReinUsesLisp/remove-dyn-primitive
vk_graphics_pipeline: Manage primitive topology as fixed state
4 years ago
Lioncash be1954e04c core: Fix clang build
Recent changes to the build system that made more warnings be flagged as
errors caused building via clang to break.

Fixes #4795
4 years ago
Lioncash c1577f3448 mii/manager: Make use of unused lower bound in GetRandomValue()
Previously, the lower bound wasn't being used and zero was being used as
the lower bound every time this function was called.

This affects the outcome of some of the randomized entries a little bit,
for example, the lower-bound for beard and mustache flags was supposed
to be 1, not 0.

Aside from these cases, the bug didn't affect anything else.
4 years ago
bunnei 1eb908bc88
Merge pull request #4797 from bunnei/bcat-errors
service: bcat: Check client connection before interacting with socket.
4 years ago
bunnei cb708631b6
Merge pull request #4798 from lioncash/input-copy
udp/client: Take std::function by const reference with TestCommunication()
4 years ago
bunnei 363c644730 service: bcat: Check client connection before interacting with socket.
- Fixes a crash when BCAT service is offline.
4 years ago
Lioncash 30b1e71066 udp/client: Make use of designated initializers in TestCommunication()
Same behavior, but makes the callback list nicer to look at.
4 years ago