summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/nvdrv/devices/nvhost_nvdec_common.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* core: Make variable shadowing a compile-time errorLioncash2021-05-161-6/+6
| | | | | | Now that we have most of core free of shadowing, we can enable the warning as an error to catch anything that may be remaining and also eliminate this class of logic bug entirely.
* service: Resolve cases of member field shadowingLioncash2021-05-041-2/+2
| | | | | Now all that remains is for kernel code to be 'shadow-free' and then -Wshadow can be turned into an error.
* nvdec syncpt incorporationameerj2021-01-071-4/+10
| | | | laying the groundwork for async gpu, although this does not fully implement async nvdec operations
* nvdrv: Remove useless re-declaration of pure virtual methods that were already declared in the superclasscomex2020-12-071-33/+0
|
* nvservices: Reintroducee IoctlCtrlChloe Marcec2020-11-241-4/+5
| | | | Fixes regression caused by #4907 which caused games like Breath of the Wild 1.0.0 not to boot.
* Addressed issuesChloe Marcec2020-11-101-0/+25
|
* core: Make nvservices more standardizedChloe Marcec2020-11-101-41/+44
|
* video_core: NVDEC Implementationameerj2020-10-271-0/+168
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>