aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/command_classes/codecs/codec.h
diff options
context:
space:
mode:
authorFernando S <fsahmkow27@gmail.com>2021-09-11 23:11:32 +0200
committerGitHub <noreply@github.com>2021-09-11 23:11:32 +0200
commitbe4e1929033aff005472163164ab0ccc80d81c19 (patch)
treeb3b3f62a3b3e8e3c329ee35411d8d18e20a835ab /src/video_core/command_classes/codecs/codec.h
parent82c867164bc37d598f12fac5e8b662ee77b9db02 (diff)
parentb384129c63c604d8087f72a880adfdc6c68ab9a0 (diff)
Merge pull request #6846 from ameerj/nvdec-gpu-decode
nvdec: Add GPU video decoding for all capable drivers and platforms
Diffstat (limited to 'src/video_core/command_classes/codecs/codec.h')
-rw-r--r--src/video_core/command_classes/codecs/codec.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/video_core/command_classes/codecs/codec.h b/src/video_core/command_classes/codecs/codec.h
index 71936203f..1508d36c2 100644
--- a/src/video_core/command_classes/codecs/codec.h
+++ b/src/video_core/command_classes/codecs/codec.h
@@ -50,18 +50,23 @@ public:
/// Returns the value of current_codec
[[nodiscard]] NvdecCommon::VideoCodec GetCurrentCodec() const;
+
/// Return name of the current codec
[[nodiscard]] std::string_view GetCurrentCodecName() const;
private:
- void InitializeHwdec();
+ void InitializeAvCodecContext();
+
+ void InitializeGpuDecoder();
+
+ bool CreateGpuAvDevice();
bool initialized{};
NvdecCommon::VideoCodec current_codec{NvdecCommon::VideoCodec::None};
AVCodec* av_codec{nullptr};
- AVBufferRef* av_hw_device{nullptr};
AVCodecContext* av_codec_ctx{nullptr};
+ AVBufferRef* av_gpu_decoder{nullptr};
GPU& gpu;
const NvdecCommon::NvdecRegisters& state;