2014-02-21 7 views
5

Ich versuche, das grundlegende Beispiel von QAudioDeviceInfo class reference auszuführen, aber Qt findet kein Standard-Audiogerät.QAudioDeviceInfo findet kein Standard-Audiogerät unter Ubuntu

Ausführen dieses Codes zeigt keine Ausgabe:

foreach (const QAudioDeviceInfo &deviceInfo, QAudioDeviceInfo::availableDevices(QAudio::AudioOutput)) 
    qDebug() << "Device name: " << deviceInfo.deviceName(); 

Ich bin mit Qt Creator 2.7.1 mit Qt 5.0.2 auf Ubuntu 13.10. Qt Multimedia wurde über apt-get installiert. Meine Profildatei hat QT += multimedia. Meine Header-Datei enthält:

#include <QAudio> 
#include <QAudioOutput> 
#include <QAudioDeviceInfo> 

Irgendwelche Ideen, was ich falsch machen könnte?

+1

Ich fand die Lösung für meine Antwort, obwohl ich meine eigene Frage bis morgen nicht beantworten kann. Ich musste nur ausführen: 'sudo apt-get installieren libqt5multimedia5-plugins' – maxmcmahon

Antwort

12

Es wurde mit einem einfachen Befehl festgelegt:

sudo apt-get install libqt5multimedia5-plugins

Qt Multimedia erfordert dieses Paket Plug-In für Audio-Backend-Support.

+1

Für OS X-Bereitstellung ist dies die' plugins/audio/libqtaudio_coreaudio.dylib' Datei. – njahnke

+0

Dies gilt auch für Ubuntu 14.04 – JoErNanO

+0

Gelöst auch mein Problem mit PyQt5 auf Ubuntu 14.04 :) – iacopo

3

Hatte das gleiche Problem in Windows. Es wurde behoben, indem Qt5Multimedia.dll in \Python34\Lib\site-packages\PyQt* durch einen von \Qt\Tools\QtCreator\bin ersetzt wurde.

Verbringen Sie einige Zeit, um eine Lösung zu finden, also beschlossen, sie hier zu lassen.