Skip to content

Commit

Permalink
Add setting 'asio/enable' to allow users to disable ASIO via the Mumb…
Browse files Browse the repository at this point in the history
…le configuration.
  • Loading branch information
mkrautz committed Feb 7, 2015
1 parent 3293f7a commit a565197
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 0 deletions.
5 changes: 5 additions & 0 deletions src/mumble/ASIOInput.cpp
Expand Up @@ -89,6 +89,11 @@ void ASIOInit::initialize() {


bool bFound = false; bool bFound = false;


if (!g.s.bASIOEnable) {
qWarning("ASIOInput: ASIO forcefully disabled via 'asio/enable' config option.");
return;
}

// List of devices known to misbehave or be totally useless // List of devices known to misbehave or be totally useless
QStringList blacklist; QStringList blacklist;
blacklist << QLatin1String("{a91eaba1-cf4c-11d3-b96a-00a0c9c7b61a}"); // ASIO DirectX blacklist << QLatin1String("{a91eaba1-cf4c-11d3-b96a-00a0c9c7b61a}"); // ASIO DirectX
Expand Down
4 changes: 4 additions & 0 deletions src/mumble/Settings.cpp
Expand Up @@ -324,6 +324,8 @@ Settings::Settings() {


iOutputDelay = 5; iOutputDelay = 5;


bASIOEnable = true;

qsALSAInput=QLatin1String("default"); qsALSAInput=QLatin1String("default");
qsALSAOutput=QLatin1String("default"); qsALSAOutput=QLatin1String("default");


Expand Down Expand Up @@ -589,6 +591,7 @@ void Settings::load(QSettings* settings_ptr) {
SAVELOAD(iJitterBufferSize, "net/jitterbuffer"); SAVELOAD(iJitterBufferSize, "net/jitterbuffer");
SAVELOAD(iFramesPerPacket, "net/framesperpacket"); SAVELOAD(iFramesPerPacket, "net/framesperpacket");


SAVELOAD(bASIOEnable, "asio/enable");
SAVELOAD(qsASIOclass, "asio/class"); SAVELOAD(qsASIOclass, "asio/class");
SAVELOAD(qlASIOmic, "asio/mic"); SAVELOAD(qlASIOmic, "asio/mic");
SAVELOAD(qlASIOspeaker, "asio/speaker"); SAVELOAD(qlASIOspeaker, "asio/speaker");
Expand Down Expand Up @@ -882,6 +885,7 @@ void Settings::save() {
SAVELOAD(iJitterBufferSize, "net/jitterbuffer"); SAVELOAD(iJitterBufferSize, "net/jitterbuffer");
SAVELOAD(iFramesPerPacket, "net/framesperpacket"); SAVELOAD(iFramesPerPacket, "net/framesperpacket");


SAVELOAD(bASIOEnable, "asio/enable");
SAVELOAD(qsASIOclass, "asio/class"); SAVELOAD(qsASIOclass, "asio/class");
SAVELOAD(qlASIOmic, "asio/mic"); SAVELOAD(qlASIOmic, "asio/mic");
SAVELOAD(qlASIOspeaker, "asio/speaker"); SAVELOAD(qlASIOspeaker, "asio/speaker");
Expand Down
3 changes: 3 additions & 0 deletions src/mumble/Settings.h
Expand Up @@ -210,9 +210,12 @@ struct Settings {
QString qsPulseAudioInput, qsPulseAudioOutput; QString qsPulseAudioInput, qsPulseAudioOutput;
QString qsOSSInput, qsOSSOutput; QString qsOSSInput, qsOSSOutput;
int iPortAudioInput, iPortAudioOutput; int iPortAudioInput, iPortAudioOutput;

bool bASIOEnable;
QString qsASIOclass; QString qsASIOclass;
QList<QVariant> qlASIOmic; QList<QVariant> qlASIOmic;
QList<QVariant> qlASIOspeaker; QList<QVariant> qlASIOspeaker;

QString qsCoreAudioInput, qsCoreAudioOutput; QString qsCoreAudioInput, qsCoreAudioOutput;
QString qsWASAPIInput, qsWASAPIOutput; QString qsWASAPIInput, qsWASAPIOutput;
QByteArray qbaDXInput, qbaDXOutput; QByteArray qbaDXInput, qbaDXOutput;
Expand Down

0 comments on commit a565197

Please sign in to comment.