Commit Graph
66 Commits
Author SHA1 Message Date
3c37d66c28 Address PR feedback
Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>
2021-02-13 13:07:56 -05:00
ameerjandameerj 09722cb4a7 streamline cdma_pusher/command_classes 2021-02-13 13:07:56 -05:00
ameerjandameerj 77564f987c streamline cdma_pusher/command_classes 2021-02-13 13:07:53 -05:00
ameerjandameerj ac265a72ce nvdec cleanup 2021-02-13 13:07:31 -05:00
ameerj 979b602738 Limit queue size to 10 frames
Workaround for ZLA, which seems to decode and queue twice as many frames as it displays.
2020-11-26 14:04:06 -05:00
ameerjandLC c9e3abe206 Address PR feedback
remove some redundant moves, make deleter match naming guidelines.

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>
2020-11-26 00:18:26 -05:00
ameerj eab041866b Queue decoded frames, cleanup decoders 2020-11-25 17:10:44 -05:00
ameerj d52ee6d0a7 cleanup unneeded comments and newlines 2020-11-25 14:46:08 -05:00
ameerjandRodrigo Locatti e87670ee48 Refactor MaxwellToSpirvComparison. Use Common::BitCast
Co-Authored-By: Rodrigo Locatti <reinuseslisp@airmail.cc>
2020-11-25 00:33:20 -05:00
ameerj 1dbf71ceb3 Address PR feedback from Rein 2020-11-24 22:46:45 -05:00
ameerj 9014861858 vulkan_renderer: Alpha Test Culling Implementation
Used by various textures in many titles, e.g.  SSBU menu.
2020-11-24 22:46:45 -05:00
ameerj 3620206136 async_shaders: Increase Async worker thread count for 8+ thread cpus
Adds 1 async worker thread for every 2 available threads above 8
2020-10-29 14:16:45 -04:00
ameerjandDavid 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>
2020-10-26 23:07:36 -04:00
ameerj fde8102a41 Remove unneeded newlines, optional Registry in shader params
Addressing feedback from Rodrigo
2020-08-16 16:33:21 -04:00
ameerj 1b829fbd7a move thread 1/4 count computation into allocate workers method 2020-08-16 12:02:22 -04:00
ameerj 31a76410e8 Address feedback, add shader compile notifier, update setting text 2020-08-16 12:02:22 -04:00
ameerj c02464f64e Vk Async Worker directly emplace in cache 2020-08-16 12:02:22 -04:00
ameerj 4539073ce1 Address feedback. Bruteforce delete duplicates 2020-08-16 12:02:22 -04:00
ameerj 6ac97405df Vk Async pipeline compilation 2020-08-16 12:02:22 -04:00
ameerj d6672501ac Remove UI changes
This PR is now only the Analog devices handling the range value defaulting at 100%
2020-08-10 12:46:14 -04:00
ameerj 9c6ae697f5 Add range slider functionality for gc adapter 2020-08-10 12:46:14 -04:00
Ameer 8928aa3008 undo unnecessary newlines, slider range 50-150 2020-08-10 12:46:14 -04:00
Ameer 504095cea9 Address c++20 warning, fix inaccurate range text display when slide == 0 2020-08-10 12:46:14 -04:00
Ameer ed51c2abda Add range slider for analog sticks 2020-08-10 12:46:14 -04:00
ameerj 68d6d3e173 Fix axis thresholding while polling
axes were very sensitive when mapping controls.
2020-07-19 11:49:26 -04:00
ameerj 1e7bed0a45 std::size_t where appropriate, make error message more clear if can't read 2020-07-17 12:10:32 -04:00
Ameer 94f5f29573 Refactor adapter code 2020-07-16 13:00:04 -04:00
Ameer 93fe982a0c Rebase to master 2020-07-14 13:04:02 -04:00
Ameer ab65de2f96 Fix crash if gc configured but adapter not connected 2020-07-14 11:23:10 -04:00
AmeerandJan Beich b284c43385 input_common: drop unused libusb.h include
Remnant of an early implementation.
2020-07-14 01:50:34 +00:00
Ameer 042c6602a0 Break out of scan loop if can't find adapter on first run 2020-07-10 11:07:43 -04:00
Ameer 4489ea6f53 Rebase to master, fix merge conflicts 2020-07-08 21:15:49 -04:00
Ameer 3c7a115afe Address comments for better clarity/signed dev count 2020-07-08 14:18:54 -04:00
Ameer ec13746e4d Add more libusb error checks 2020-07-08 13:19:33 -04:00
Ameer b57475887b Address PR feedback, fix axis button thresholding 2020-07-07 12:20:59 -04:00
Ameer e3253b5f18 Brace the code! Fix compile error due to class member construction order 2020-07-06 23:01:57 -04:00
Ameer 86abff48e1 Recalibrate reconnected controllers 2020-07-06 22:09:07 -04:00
Ameer 7ad423923d Save origin state of GC controller analog features, compare against origin for input detection 2020-07-06 21:58:31 -04:00
Ameer 40cf9288e9 change shortcut context for other hotkeys with file open dialog 2020-07-06 19:45:57 -04:00
Ameer b700d657d7 Revert inadvertent dynarmic update 2020-07-06 18:57:02 -04:00
Ameer fa4d6df4c5 Fix ss crash on game menu, fix ss on windowed mode 2020-07-06 17:30:28 -04:00
Ameer f829932ed1 Fix merge conflicts? 2020-07-04 00:59:40 -04:00
Ameer d00972fce1 Fix for always firing triggers on some controllers, trigger threshold more universal 2020-07-04 00:40:48 -04:00
Ameer e69d715e3d Address lioncash feedback: Log formatting, extern const PadButtonArray, little touch ups 2020-07-03 11:52:07 -04:00
Ameer 6e1639c7b0 Fix unnecessary diffs 2020-07-02 16:51:16 -04:00
Ameer 6b7c8e469b Add LR triggers as axes, half press to initiate a press, add GC axis id in config, clarify some code blocks for better readability 2020-07-02 15:54:44 -04:00
Ameer 34a590e509 Reset adapter state on init, fixes errors relating driver hang from unexpected unplug 2020-07-01 12:52:50 -04:00
Ameer a76e11e7f0 Address feedback regarding increments, const vars, and general cleanup 2020-06-30 17:28:02 -04:00
Ameer dfdf87d844 fix implicit conversion of size_t type to int 2020-06-30 11:44:55 -04:00
Ameer 3f739514e3 Stop reading loop if error is encountered 2020-06-25 19:31:51 -04:00
Ameer c18dc9c707 padbutton enum class and struct initiailization 2020-06-24 11:39:30 -04:00
Ameer 743e1f02a0 cleanup check access, read, and factory GetNextInput funcs. Use size rather than magic number 2020-06-23 17:37:15 -04:00
Ameer d4e07fd95e Fix deallocation of GC Adapter 2020-06-23 12:47:58 -04:00
Ameer 901bc09dd7 Small quality of life indication that mapped button is GC 2020-06-22 22:02:50 -04:00
Ameer fcc23139f6 std::array and const reference passing of non-trivial objects 2020-06-22 18:11:59 -04:00
Ameer 8ccc8cb252 update libusb dependency 2020-06-22 17:05:57 -04:00
Ameer 28046ae3a9 Tidy up the pointers, use pair over tuple where appropriate 2020-06-21 23:56:56 -04:00
Ameer 0f729ef078 fix for sleep using stl 2020-06-21 22:58:53 -04:00
Ameer 46b4461fbb shared_ptr for the GC adapter class, constexpr constants 2020-06-21 21:50:58 -04:00
Ameer 968d631aa5 std::arrays where appropriate, clear q in adapter class, other touch ups 2020-06-21 21:17:46 -04:00
Ameer 5f0fa4cb82 fix include thread 2020-06-21 21:17:46 -04:00
Ameer 121af3646d Singleton GC Adapter class, remove globals, fix naming convention
Fix clang formatting

Manual fix for configure_input_player formatting

Add missing lib usb cmake command
2020-06-21 21:17:07 -04:00
Ameer c94583d867 Clang Formatting 2020-06-21 15:31:57 -04:00
Ameer 0076a08d04 Cleanup after linter 2020-06-21 13:02:43 -04:00
Ameer 18a42d3815 Add libusb dependency 2020-06-21 12:39:15 -04:00
Ameer 0248614add GC Adapter Implementation 2020-06-21 12:36:28 -04:00