Files
komplex/plugin/AudioModel.cpp
Digital Artifex f65399ec53 Initial Commit
2025-08-03 18:41:56 -04:00

72 lines
1.4 KiB
C++

#include "AudioModel.h"
#ifdef AUDIOMODEL_H
AudioModel::AudioModel(QObject *parent)
: QObject(parent), m_deviceString(QString())
{
}
AudioModel::~AudioModel()
{
if (m_recorder)
{
m_recorder->stop();
delete m_recorder;
}
if (m_audioInput)
delete m_audioInput;
if (m_captureSession)
delete m_captureSession;
}
QByteArray AudioModel::frame() const
{
// This function should return the current audio frame.
// For now, we return an empty QByteArray.
return QByteArray();
}
QString AudioModel::device() const
{
return m_deviceString;
}
QStringList AudioModel::availableDevices() const
{
QStringList devices;
// Assuming QAudioDeviceInfo is used to get available audio devices
for (const auto &device : QMediaDevices::audioInputs())
{
devices.append(QString::fromLatin1(device.id()));
}
return devices;
}
void AudioModel::setDeviceName(const QString &device)
{
if (m_deviceString == device)
return;
m_deviceString = device;
// if (m_audioInput)
// {
// m_audioInput->setDevice(QAudioInput(device));
// getAudioFrame();
// }
}
void AudioModel::getAudioFrame()
{
// This function should be implemented to retrieve the audio frame
// from the audio input device and emit the frameChanged signal.
// For now, we will just emit the signal to indicate that the frame is ready.
Q_EMIT frameChanged();
}
#endif