2022-04-08 10:41:59 +00:00
|
|
|
#ifndef EMULATOR_INCLUDE_EMULATOR_AUDIO_H_
|
|
|
|
#define EMULATOR_INCLUDE_EMULATOR_AUDIO_H_
|
|
|
|
|
|
|
|
#include "Kyty/Core/Common.h"
|
|
|
|
#include "Kyty/Core/Subsystems.h"
|
|
|
|
|
|
|
|
#include "Emulator/Common.h"
|
|
|
|
|
|
|
|
#ifdef KYTY_EMU_ENABLED
|
|
|
|
|
|
|
|
namespace Kyty::Libs::Audio {
|
|
|
|
|
|
|
|
KYTY_SUBSYSTEM_DEFINE(Audio);
|
|
|
|
|
2022-04-13 10:36:34 +00:00
|
|
|
namespace AudioOut {
|
|
|
|
|
|
|
|
struct AudioOutOutputParam;
|
|
|
|
|
|
|
|
int KYTY_SYSV_ABI AudioOutInit();
|
|
|
|
int KYTY_SYSV_ABI AudioOutOpen(int user_id, int type, int index, uint32_t len, uint32_t freq, uint32_t param);
|
|
|
|
int KYTY_SYSV_ABI AudioOutSetVolume(int handle, uint32_t flag, int* vol);
|
|
|
|
int KYTY_SYSV_ABI AudioOutOutputs(AudioOutOutputParam* param, uint32_t num);
|
2022-05-21 12:04:50 +00:00
|
|
|
int KYTY_SYSV_ABI AudioOutOutput(int handle, const void* ptr);
|
|
|
|
int KYTY_SYSV_ABI AudioOutClose(int handle);
|
2022-04-13 10:36:34 +00:00
|
|
|
|
|
|
|
} // namespace AudioOut
|
|
|
|
|
2022-04-27 08:49:15 +00:00
|
|
|
namespace AudioIn {
|
|
|
|
|
|
|
|
int KYTY_SYSV_ABI AudioInOpen(int user_id, uint32_t type, uint32_t index, uint32_t len, uint32_t freq, uint32_t param);
|
|
|
|
int KYTY_SYSV_ABI AudioInInput(int handle, void* dest);
|
|
|
|
|
|
|
|
} // namespace AudioIn
|
|
|
|
|
2022-04-08 10:41:59 +00:00
|
|
|
namespace VoiceQoS {
|
|
|
|
|
|
|
|
int KYTY_SYSV_ABI VoiceQoSInit(void* mem_block, uint32_t mem_size, int32_t app_type);
|
|
|
|
|
|
|
|
} // namespace VoiceQoS
|
|
|
|
|
2022-04-27 08:49:15 +00:00
|
|
|
namespace Ajm {
|
|
|
|
|
|
|
|
int KYTY_SYSV_ABI AjmInitialize(int64_t reserved, uint32_t* context);
|
2022-05-21 12:04:50 +00:00
|
|
|
int KYTY_SYSV_ABI AjmModuleRegister(uint32_t context, uint32_t codec, int64_t reserved);
|
2022-04-27 08:49:15 +00:00
|
|
|
|
|
|
|
} // namespace Ajm
|
|
|
|
|
2022-05-21 12:04:50 +00:00
|
|
|
namespace AvPlayer {
|
|
|
|
|
|
|
|
struct AvPlayerInitData;
|
|
|
|
struct AvPlayerFrameInfoEx;
|
|
|
|
struct AvPlayerFrameInfo;
|
|
|
|
struct AvPlayerInternal;
|
|
|
|
|
|
|
|
using Bool = uint8_t;
|
|
|
|
|
|
|
|
AvPlayerInternal* KYTY_SYSV_ABI AvPlayerInit(AvPlayerInitData* init);
|
|
|
|
int KYTY_SYSV_ABI AvPlayerAddSource(AvPlayerInternal* h, const char* filename);
|
|
|
|
int KYTY_SYSV_ABI AvPlayerSetLooping(AvPlayerInternal* h, Bool loop);
|
|
|
|
Bool KYTY_SYSV_ABI AvPlayerGetVideoDataEx(AvPlayerInternal* h, AvPlayerFrameInfoEx* video_info);
|
|
|
|
Bool KYTY_SYSV_ABI AvPlayerGetAudioData(AvPlayerInternal* h, AvPlayerFrameInfo* audio_info);
|
|
|
|
Bool KYTY_SYSV_ABI AvPlayerIsActive(AvPlayerInternal* h);
|
|
|
|
int KYTY_SYSV_ABI AvPlayerClose(AvPlayerInternal* h);
|
|
|
|
|
|
|
|
} // namespace AvPlayer
|
|
|
|
|
2022-04-08 10:41:59 +00:00
|
|
|
} // namespace Kyty::Libs::Audio
|
|
|
|
|
|
|
|
#endif // KYTY_EMU_ENABLED
|
|
|
|
|
|
|
|
#endif /* EMULATOR_INCLUDE_EMULATOR_AUDIO_H_ */
|