mirror of
https://github.com/hrydgard/ppsspp.git
synced 2024-11-23 13:30:02 +00:00
349b73acec
* Move the resampler usage to a common file, AudioCommon. Ports that don't want to use the resampler can now simply exclude that file and provide their own implementation. Next up, libretro will be converted to do it that way. * Android.mk typo * libretro makefile fix * libretro buildfix * libretro: try a different approach for the temporary solution * duh * double duh
57 lines
1.6 KiB
C++
57 lines
1.6 KiB
C++
// Copyright (c) 2012- PPSSPP Project.
|
|
|
|
// This program is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation, version 2.0 or later versions.
|
|
|
|
// This program is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License 2.0 for more details.
|
|
|
|
// A copy of the GPL 2.0 should have been included with the program.
|
|
// If not, see http://www.gnu.org/licenses/
|
|
|
|
// Official git repository and contact information can be found at
|
|
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
|
|
|
|
#pragma once
|
|
|
|
#include "Common/File/Path.h"
|
|
|
|
#include "sceAudio.h"
|
|
|
|
struct AudioDebugStats {
|
|
int buffered;
|
|
int watermark;
|
|
int bufsize;
|
|
int underrunCount;
|
|
int overrunCount;
|
|
int instantSampleRate;
|
|
int targetSampleRate;
|
|
int lastPushSize;
|
|
};
|
|
|
|
// Easy interface for sceAudio to write to, to keep the complexity in check.
|
|
|
|
void __AudioInit();
|
|
void __AudioDoState(PointerWrap &p);
|
|
void __AudioUpdate(bool resetRecording = false);
|
|
void __AudioShutdown();
|
|
void __AudioSetOutputFrequency(int freq);
|
|
void __AudioSetSRCFrequency(int freq);
|
|
|
|
// May return SCE_ERROR_AUDIO_CHANNEL_BUSY if buffer too large
|
|
u32 __AudioEnqueue(AudioChannel &chan, int chanNum, bool blocking);
|
|
void __AudioWakeThreads(AudioChannel &chan, int result, int step);
|
|
void __AudioWakeThreads(AudioChannel &chan, int result);
|
|
|
|
// Audio Dumping stuff
|
|
void __StartLogAudio(const Path &filename);
|
|
void __StopLogAudio();
|
|
|
|
class WAVDump {
|
|
public:
|
|
static void Reset();
|
|
};
|