/
githubmirror
/
yuzu
Обзор
Документация
Войти
/
githubmirror
/
yuzu
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/audio_core/opus/decoder_manager.h
40 строк
1 KB
Liam
audio: rewrite IHardwareOpusDecoderManager
21 фев 2024, 06:15
21 фев 2024, 06:15
ea4703c
Код
Авторство
О чём код?
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include "audio_core/opus/hardware_opus.h" #include "audio_core/opus/parameters.h" #include "common/common_types.h" #include "core/hle/service/audio/errors.h" namespace Core { class System; } namespace AudioCore::OpusDecoder { class OpusDecoderManager { public: OpusDecoderManager(Core::System& system); HardwareOpus& GetHardwareOpus() { return hardware_opus; } Result GetWorkBufferSize(const OpusParameters& params, u32& out_size); Result GetWorkBufferSizeEx(const OpusParametersEx& params, u32& out_size); Result GetWorkBufferSizeExEx(const OpusParametersEx& params, u32& out_size); Result GetWorkBufferSizeForMultiStream(const OpusMultiStreamParameters& params, u32& out_size); Result GetWorkBufferSizeForMultiStreamEx(const OpusMultiStreamParametersEx& params, u32& out_size); Result GetWorkBufferSizeForMultiStreamExEx(const OpusMultiStreamParametersEx& params, u32& out_size); private: Core::System& system; HardwareOpus hardware_opus; std::array<u32, MaxChannels> required_workbuffer_sizes{}; }; } // namespace AudioCore::OpusDecoder