summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/audio/audin_u.h
diff options
context:
space:
mode:
authorDavid Marcec <dmarcecguzman@gmail.com>2020-04-28 16:19:07 +0200
committerDavid Marcec <dmarcecguzman@gmail.com>2020-04-28 16:19:07 +0200
commitfb51a655b8042b8ad83b2c8eb973e83d24a7ad69 (patch)
tree712f7377589cee310ca6f825ed28702e27299ebf /src/core/hle/service/audio/audin_u.h
parentMerge pull request #3785 from ogniK5377/set-buffer-count-unit (diff)
downloadyuzu-fb51a655b8042b8ad83b2c8eb973e83d24a7ad69.tar
yuzu-fb51a655b8042b8ad83b2c8eb973e83d24a7ad69.tar.gz
yuzu-fb51a655b8042b8ad83b2c8eb973e83d24a7ad69.tar.bz2
yuzu-fb51a655b8042b8ad83b2c8eb973e83d24a7ad69.tar.lz
yuzu-fb51a655b8042b8ad83b2c8eb973e83d24a7ad69.tar.xz
yuzu-fb51a655b8042b8ad83b2c8eb973e83d24a7ad69.tar.zst
yuzu-fb51a655b8042b8ad83b2c8eb973e83d24a7ad69.zip
Diffstat (limited to 'src/core/hle/service/audio/audin_u.h')
-rw-r--r--src/core/hle/service/audio/audin_u.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/core/hle/service/audio/audin_u.h b/src/core/hle/service/audio/audin_u.h
index 0538b9560..a599f4a64 100644
--- a/src/core/hle/service/audio/audin_u.h
+++ b/src/core/hle/service/audio/audin_u.h
@@ -16,6 +16,35 @@ class AudInU final : public ServiceFramework<AudInU> {
public:
explicit AudInU();
~AudInU() override;
+
+private:
+ enum class SampleFormat : u32_le {
+ PCM16 = 2,
+ };
+
+ enum class State : u32_le {
+ Started = 0,
+ Stopped = 1,
+ };
+
+ struct AudInOutParams {
+ u32_le sample_rate{};
+ u32_le channel_count{};
+ SampleFormat sample_format{};
+ State state{};
+ };
+ static_assert(sizeof(AudInOutParams) == 0x10, "AudInOutParams is an invalid size");
+
+ using AudioInDeviceName = std::array<char, 256>;
+ static constexpr std::array<std::string_view, 1> audio_device_names{{
+ "BuiltInHeadset",
+ }};
+
+ void ListAudioIns(Kernel::HLERequestContext& ctx);
+ void ListAudioInsAutoFiltered(Kernel::HLERequestContext& ctx);
+ void OpenInOutImpl(Kernel::HLERequestContext& ctx);
+ void OpenAudioIn(Kernel::HLERequestContext& ctx);
+ void OpenAudioInProtocolSpecified(Kernel::HLERequestContext& ctx);
};
} // namespace Service::Audio