9#include <QtCore/qloggingcategory.h>
10#include <QtNetwork/qnetworkaccessmanager.h>
11#include <QtNetwork/qnetworkreply.h>
25 QGstElement autoaudiosrc(
"autoaudiosrc",
"autoaudiosrc");
40 gstAudioInput(
"audioInput"),
41 audioSrc(
std::move(autoaudiosrc)),
42 audioVolume(
std::move(volume))
44 gstAudioInput.add(audioSrc, audioVolume);
45 audioSrc.link(audioVolume);
47 gstAudioInput.addGhostPad(audioVolume,
"src");
70 audioVolume.
set(
"volume", vol);
85 if (
device == m_audioDevice)
91#if QT_CONFIG(pulseaudio)
92 auto id = m_audioDevice.
id();
95 newSrc.
set(
"device",
id.constData());
97 qCWarning(qLcMediaAudioInput) <<
"Invalid audio device";
100 if (deviceInfo && deviceInfo->gstDevice)
101 newSrc = gst_device_create_element(deviceInfo->gstDevice,
"audiosrc");
103 qCWarning(qLcMediaAudioInput) <<
"Invalid audio device";
107 qCWarning(qLcMediaAudioInput) <<
"Failed to create a gst element for the audio device, using a default audio source";
113 audioSrc.
unlink(audioVolume);
116 gstAudioInput.
remove(audioSrc);
118 gstAudioInput.
add(audioSrc);
119 audioSrc.
link(audioVolume);
125 return m_audioDevice;
130#include "moc_qgstreameraudioinput_p.cpp"
IOBluetoothDevice * device
The QAudioDevice class provides an information about audio devices and their functionality.
QString description
\qmlproperty string QtMultimedia::audioDevice::description
QByteArray id
\qmlproperty string QtMultimedia::audioDevice::id
const QAudioDevicePrivate * handle() const
bool isNull() const
Returns whether this QAudioDevice object holds a valid device definition.
void remove(const QGstElement &element)
void add(const QGstElement &element)
bool setStateSync(GstState state)
bool syncStateWithParent()
void unlink(const QGstElement &next)
QGstPad staticPad(const char *name) const
bool link(const QGstElement &next)
void set(const char *property, const char *str)
void doInIdleProbe(std::function< void()> work)
Combined button and popup list for selecting options.
QString errorMessageCannotFindElement(std::string_view element)
#define Q_LOGGING_CATEGORY(name,...)
#define qCWarning(category,...)
#define qCDebug(category,...)
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent