all repos — mgba @ 9c92a29b28d1f81224ba28d5fc83a9481eccd5eb

mGBA Game Boy Advance Emulator

src/platform/qt/AudioProcessorSDL.cpp (view raw)

 1/* Copyright (c) 2013-2014 Jeffrey Pfau
 2 *
 3 * This Source Code Form is subject to the terms of the Mozilla Public
 4 * License, v. 2.0. If a copy of the MPL was not distributed with this
 5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 6#include "AudioProcessorSDL.h"
 7
 8extern "C" {
 9#include "gba-thread.h"
10}
11
12using namespace QGBA;
13
14AudioProcessorSDL::AudioProcessorSDL(QObject* parent)
15	: AudioProcessor(parent)
16	, m_audio()
17{
18}
19
20AudioProcessorSDL::~AudioProcessorSDL() {
21	GBASDLDeinitAudio(&m_audio);
22}
23
24void AudioProcessorSDL::start() {
25	if (m_audio.thread) {
26		GBASDLResumeAudio(&m_audio);
27	} else {
28		m_audio.samples = input()->audioBuffers;
29		GBASDLInitAudio(&m_audio, input());
30	}
31}
32
33void AudioProcessorSDL::pause() {
34	GBASDLPauseAudio(&m_audio);
35}
36
37void AudioProcessorSDL::setBufferSamples(int samples) {
38	if (m_audio.thread) {
39		GBASDLDeinitAudio(&m_audio);
40		m_audio.samples = samples;
41		GBASDLInitAudio(&m_audio, input());
42	}
43}
44
45void AudioProcessorSDL::inputParametersChanged() {
46}