diff options
| author | 2018-08-03 15:30:01 -0400 | |
|---|---|---|
| committer | 2018-08-04 18:22:58 -0400 | |
| commit | f1cb3903ac358183dcdc562ba19dc469b056e73f (patch) | |
| tree | 0179ee55d3c573cdd9189cb708e2b69e02a1b166 /src/core | |
| parent | cubeb_sink: Support variable sample_rate and num_channels. (diff) | |
| download | yuzu-f1cb3903ac358183dcdc562ba19dc469b056e73f.tar.gz yuzu-f1cb3903ac358183dcdc562ba19dc469b056e73f.tar.xz yuzu-f1cb3903ac358183dcdc562ba19dc469b056e73f.zip | |
audio_core: Port codec code from Citra for ADPCM decoding.
Diffstat (limited to 'src/core')
| -rw-r--r-- | src/core/hle/service/audio/audout_u.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/service/audio/audout_u.h | 10 |
2 files changed, 3 insertions, 11 deletions
diff --git a/src/core/hle/service/audio/audout_u.cpp b/src/core/hle/service/audio/audout_u.cpp index 9f4c7855a..f4a557634 100644 --- a/src/core/hle/service/audio/audout_u.cpp +++ b/src/core/hle/service/audio/audout_u.cpp | |||
| @@ -4,6 +4,8 @@ | |||
| 4 | 4 | ||
| 5 | #include <array> | 5 | #include <array> |
| 6 | #include <vector> | 6 | #include <vector> |
| 7 | |||
| 8 | #include "audio_core/codec.h" | ||
| 7 | #include "common/logging/log.h" | 9 | #include "common/logging/log.h" |
| 8 | #include "core/core.h" | 10 | #include "core/core.h" |
| 9 | #include "core/hle/ipc_helpers.h" | 11 | #include "core/hle/ipc_helpers.h" |
| @@ -200,7 +202,7 @@ void AudOutU::OpenAudioOutImpl(Kernel::HLERequestContext& ctx) { | |||
| 200 | rb.Push(RESULT_SUCCESS); | 202 | rb.Push(RESULT_SUCCESS); |
| 201 | rb.Push<u32>(DefaultSampleRate); | 203 | rb.Push<u32>(DefaultSampleRate); |
| 202 | rb.Push<u32>(params.channel_count); | 204 | rb.Push<u32>(params.channel_count); |
| 203 | rb.Push<u32>(static_cast<u32>(PcmFormat::Int16)); | 205 | rb.Push<u32>(static_cast<u32>(AudioCore::Codec::PcmFormat::Int16)); |
| 204 | rb.Push<u32>(static_cast<u32>(AudioState::Stopped)); | 206 | rb.Push<u32>(static_cast<u32>(AudioState::Stopped)); |
| 205 | rb.PushIpcInterface<Audio::IAudioOut>(audio_out_interface); | 207 | rb.PushIpcInterface<Audio::IAudioOut>(audio_out_interface); |
| 206 | } | 208 | } |
diff --git a/src/core/hle/service/audio/audout_u.h b/src/core/hle/service/audio/audout_u.h index e5c2184d5..fd491f65d 100644 --- a/src/core/hle/service/audio/audout_u.h +++ b/src/core/hle/service/audio/audout_u.h | |||
| @@ -38,16 +38,6 @@ private: | |||
| 38 | 38 | ||
| 39 | void ListAudioOutsImpl(Kernel::HLERequestContext& ctx); | 39 | void ListAudioOutsImpl(Kernel::HLERequestContext& ctx); |
| 40 | void OpenAudioOutImpl(Kernel::HLERequestContext& ctx); | 40 | void OpenAudioOutImpl(Kernel::HLERequestContext& ctx); |
| 41 | |||
| 42 | enum class PcmFormat : u32 { | ||
| 43 | Invalid = 0, | ||
| 44 | Int8 = 1, | ||
| 45 | Int16 = 2, | ||
| 46 | Int24 = 3, | ||
| 47 | Int32 = 4, | ||
| 48 | PcmFloat = 5, | ||
| 49 | Adpcm = 6, | ||
| 50 | }; | ||
| 51 | }; | 41 | }; |
| 52 | 42 | ||
| 53 | } // namespace Service::Audio | 43 | } // namespace Service::Audio |