summaryrefslogtreecommitdiffstats
path: root/src/video_core/gpu.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2021-04-17 08:14:44 +0200
committerGitHub <noreply@github.com>2021-04-17 08:14:44 +0200
commit9ad77ba6d388c93b8f2258d6faab8b68342742ff (patch)
treed7f9fe69b8ed0504f7285d000d6c5e7c570870c3 /src/video_core/gpu.cpp
parentMerge pull request #6133 from Morph1984/project-eleuthia (diff)
parentAddress issues (diff)
downloadyuzu-9ad77ba6d388c93b8f2258d6faab8b68342742ff.tar
yuzu-9ad77ba6d388c93b8f2258d6faab8b68342742ff.tar.gz
yuzu-9ad77ba6d388c93b8f2258d6faab8b68342742ff.tar.bz2
yuzu-9ad77ba6d388c93b8f2258d6faab8b68342742ff.tar.lz
yuzu-9ad77ba6d388c93b8f2258d6faab8b68342742ff.tar.xz
yuzu-9ad77ba6d388c93b8f2258d6faab8b68342742ff.tar.zst
yuzu-9ad77ba6d388c93b8f2258d6faab8b68342742ff.zip
Diffstat (limited to 'src/video_core/gpu.cpp')
-rw-r--r--src/video_core/gpu.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/video_core/gpu.cpp b/src/video_core/gpu.cpp
index 9bdb282d2..7c42f1177 100644
--- a/src/video_core/gpu.cpp
+++ b/src/video_core/gpu.cpp
@@ -480,11 +480,7 @@ void GPU::PushCommandBuffer(Tegra::ChCommandHeaderList& entries) {
if (!use_nvdec) {
return;
}
- // This condition fires when a video stream ends, clear all intermediary data
- if (entries[0].raw == 0xDEADB33F) {
- cdma_pusher.reset();
- return;
- }
+
if (!cdma_pusher) {
cdma_pusher = std::make_unique<Tegra::CDmaPusher>(*this);
}
@@ -496,6 +492,12 @@ void GPU::PushCommandBuffer(Tegra::ChCommandHeaderList& entries) {
cdma_pusher->ProcessEntries(std::move(entries));
}
+void GPU::ClearCommandBuffer() {
+ // This condition fires when a video stream ends, clear all intermediary data
+ cdma_pusher.reset();
+ LOG_INFO(Service_NVDRV, "NVDEC video stream ended");
+}
+
void GPU::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) {
gpu_thread.SwapBuffers(framebuffer);
}