MaranBr
5 months ago
committed by
crueter
No known key found for this signature in database
GPG Key ID: 425ACD2D4830EBC6
2 changed files with
6 additions and
9 deletions
-
src/video_core/host1x/nvdec.cpp
-
src/video_core/host1x/nvdec.h
|
|
@ -1,3 +1,6 @@ |
|
|
|
|
|
// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
|
|
|
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
|
|
|
|
|
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project
|
|
|
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
|
|
|
|
|
@ -34,10 +37,6 @@ void Nvdec::ProcessMethod(u32 method, u32 argument) { |
|
|
CreateDecoder(static_cast<NvdecCommon::VideoCodec>(argument)); |
|
|
CreateDecoder(static_cast<NvdecCommon::VideoCodec>(argument)); |
|
|
break; |
|
|
break; |
|
|
case NVDEC_REG_INDEX(execute): { |
|
|
case NVDEC_REG_INDEX(execute): { |
|
|
if (wait_needed) { |
|
|
|
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(32)); |
|
|
|
|
|
wait_needed = false; |
|
|
|
|
|
} |
|
|
|
|
|
Execute(); |
|
|
Execute(); |
|
|
} break; |
|
|
} break; |
|
|
} |
|
|
} |
|
|
|
|
|
@ -1,3 +1,6 @@ |
|
|
|
|
|
// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project |
|
|
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later |
|
|
|
|
|
|
|
|
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project |
|
|
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project |
|
|
// SPDX-License-Identifier: GPL-2.0-or-later |
|
|
// SPDX-License-Identifier: GPL-2.0-or-later |
|
|
|
|
|
|
|
|
@ -28,10 +31,6 @@ public: |
|
|
return syncpoint; |
|
|
return syncpoint; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
void SetWait() { |
|
|
|
|
|
wait_needed = true; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private: |
|
|
private: |
|
|
/// Create the decoder when the codec id is set |
|
|
/// Create the decoder when the codec id is set |
|
|
void CreateDecoder(NvdecCommon::VideoCodec codec); |
|
|
void CreateDecoder(NvdecCommon::VideoCodec codec); |
|
|
@ -45,7 +44,6 @@ private: |
|
|
|
|
|
|
|
|
NvdecCommon::NvdecRegisters regs{}; |
|
|
NvdecCommon::NvdecRegisters regs{}; |
|
|
std::unique_ptr<Decoder> decoder; |
|
|
std::unique_ptr<Decoder> decoder; |
|
|
bool wait_needed{false}; |
|
|
|
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
} // namespace Host1x |
|
|
} // namespace Host1x |
|
|
|