diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2022-01-30 10:31:13 +0100 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2022-10-06 21:00:52 +0200 |
commit | 668e80a9f42fb4ce0e16f6381d05bcbd286b2da1 (patch) | |
tree | a1c668d6c3d00eade849b1d31dba4116095e4c12 /src/video_core/command_classes/nvdec.cpp | |
parent | Texture Cache: Fix GC and GPU Modified on Joins. (diff) | |
download | yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.tar yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.tar.gz yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.tar.bz2 yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.tar.lz yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.tar.xz yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.tar.zst yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.zip |
Diffstat (limited to 'src/video_core/command_classes/nvdec.cpp')
-rw-r--r-- | src/video_core/command_classes/nvdec.cpp | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/src/video_core/command_classes/nvdec.cpp b/src/video_core/command_classes/nvdec.cpp deleted file mode 100644 index 4fbbe3da6..000000000 --- a/src/video_core/command_classes/nvdec.cpp +++ /dev/null @@ -1,47 +0,0 @@ -// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project -// SPDX-License-Identifier: GPL-2.0-or-later - -#include "common/assert.h" -#include "video_core/command_classes/nvdec.h" -#include "video_core/gpu.h" - -namespace Tegra { - -#define NVDEC_REG_INDEX(field_name) \ - (offsetof(NvdecCommon::NvdecRegisters, field_name) / sizeof(u64)) - -Nvdec::Nvdec(GPU& gpu_) : gpu(gpu_), state{}, codec(std::make_unique<Codec>(gpu, state)) {} - -Nvdec::~Nvdec() = default; - -void Nvdec::ProcessMethod(u32 method, u32 argument) { - state.reg_array[method] = static_cast<u64>(argument) << 8; - - switch (method) { - case NVDEC_REG_INDEX(set_codec_id): - codec->SetTargetCodec(static_cast<NvdecCommon::VideoCodec>(argument)); - break; - case NVDEC_REG_INDEX(execute): - Execute(); - break; - } -} - -AVFramePtr Nvdec::GetFrame() { - return codec->GetCurrentFrame(); -} - -void Nvdec::Execute() { - switch (codec->GetCurrentCodec()) { - case NvdecCommon::VideoCodec::H264: - case NvdecCommon::VideoCodec::VP8: - case NvdecCommon::VideoCodec::VP9: - codec->Decode(); - break; - default: - UNIMPLEMENTED_MSG("Codec {}", codec->GetCurrentCodecName()); - break; - } -} - -} // namespace Tegra |