Source

Target

Commits (5)
  • Maurice Kalinowski's avatar
    WinRT: Fix compilation after ANGLE update · b369746a
    Maurice Kalinowski authored
    
    Header inclusion is not needed, hence remove it for WinRT.
    
    Change-Id: I8117439849143975cad3dc14e36118b8da4621de
    Reviewed-by: default avatarOliver Wolff <oliver.wolff@theqtcompany.com>
    b369746a
  • Laszlo Agocs's avatar
    Fix bogus videonode plugin handling · 96407d8d
    Laszlo Agocs authored
    
    Each plugin must provide its own unique key. Otherwise we will only ever
    see one single plugin.
    
    Right now running on i.MX6 is often broken because the imx6 videonode plugin is
    not picked up since only the egl one is seen by the system. With the fix both plugins
    provide their own unique key so both become visible.
    
    Additionally, introduce a QT_VIDEONODE environment variable. This is useful to specify
    which plugin to use. This is necessary in case multiple custom videonode plugins support
    the same formats.
    
    Change-Id: Iaa1988f8436dcb938cb9a95e2e0d68a4e92e113c
    Reviewed-by: default avatarYoann Lopes <yoann.lopes@theqtcompany.com>
    96407d8d
  • Frederik Gladhorn's avatar
    Merge remote-tracking branch 'origin/5.4.0' into 5.4 · f2b3363c
    Frederik Gladhorn authored
    Change-Id: Iec2c793710c95919975aa3c03144d915ca5fa84f
    f2b3363c
  • Thiago Macieira's avatar
    Fix Clang warning about comparison of different signs · 16a386b0
    Thiago Macieira authored
    Commit 4d35f66a
    
     changed from -1 to ~0 because
    ICC complained, but Clang still sees ~0 as int. So force to unsigned.
    
    qgstappsrc.cpp:144:31: warning: comparison of integers of different signs: 'unsigned int' and 'int' [-Wsign-compare]
    
    Change-Id: I6b0fdf8dc5df157d8e184f22dba44660e60ca3b2
    Reviewed-by: default avatarYoann Lopes <yoann.lopes@theqtcompany.com>
    16a386b0
  • Thiago Macieira's avatar
    Remove unused private members · 59f2bf18
    Thiago Macieira authored
    
    One is not used, the others are not even initialized, so don't use the
    memory.
    
    qsoundeffect_pulse_p.h:172:20: warning: private field 'm_resourceStatus' is not used [-Wunused-private-field]
    qvideowidget_p.h:211:25: warning: private field 'm_aspectRatioMode' is not used [-Wunused-private-field]
    qalsaaudioinput.h:156:22: warning: private field 'timestamp' is not used [-Wunused-private-field]
    qalsaaudiooutput.h:135:22: warning: private field 'timestamp' is not used [-Wunused-private-field]
    
    Change-Id: I7c9f50d57c4d29ee0dfd7dc086771d721cdb5b05
    Reviewed-by: default avatarYoann Lopes <yoann.lopes@theqtcompany.com>
    59f2bf18
Showing with 24 additions and 22 deletions
......@@ -141,7 +141,7 @@ void QGstAppSrc::pushDataToAppSrc()
if (m_dataRequested && !m_enoughData) {
qint64 size;
if (m_dataRequestSize == ~0)
if (m_dataRequestSize == ~0u)
size = qMin(m_stream->bytesAvailable(), queueSize());
else
size = qMin(m_stream->bytesAvailable(), (qint64)m_dataRequestSize);
......
......@@ -163,13 +163,6 @@ private:
int m_position;
QSoundEffectRef *m_ref;
enum ResourceStatus {
NoResources,
WaitingResources,
GrantedResources,
DeniedResources
};
ResourceStatus m_resourceStatus;
bool m_resourcesAvailable;
QMediaPlayerResourceSetInterface *m_resources;
......
......@@ -47,7 +47,7 @@
#include <QtGui/QOpenGLContext>
#if defined(Q_OS_WIN) && (defined(QT_OPENGL_ES_2) || defined(QT_OPENGL_DYNAMIC))
#if defined(Q_OS_WIN) && !defined(Q_OS_WINRT) && (defined(QT_OPENGL_ES_2) || defined(QT_OPENGL_DYNAMIC))
#include <EGL/egl.h>
#endif
......
......@@ -43,8 +43,6 @@
QT_BEGIN_NAMESPACE
const QLatin1String QSGVideoNodeFactoryPluginKey("sgvideonodes");
class Q_MULTIMEDIAQUICK_EXPORT QSGVideoNode : public QSGGeometryNode
{
public:
......
......@@ -306,7 +306,6 @@ QWindowVideoWidgetBackend::QWindowVideoWidgetBackend(
: m_service(service)
, m_windowControl(control)
, m_widget(widget)
, m_aspectRatioMode(Qt::KeepAspectRatio)
{
connect(control, SIGNAL(brightnessChanged(int)), m_widget, SLOT(_q_brightnessChanged(int)));
connect(control, SIGNAL(contrastChanged(int)), m_widget, SLOT(_q_contrastChanged(int)));
......
......@@ -208,7 +208,6 @@ private:
QMediaService *m_service;
QVideoWindowControl *m_windowControl;
QWidget *m_widget;
Qt::AspectRatioMode m_aspectRatioMode;
QSize m_pixelAspectRatio;
};
......
......@@ -153,7 +153,6 @@ private:
snd_pcm_uframes_t period_frames;
snd_pcm_access_t access;
snd_pcm_format_t pcmformat;
snd_timestamp_t* timestamp;
snd_pcm_hw_params_t *hwparams;
qreal m_volume;
};
......
......@@ -132,7 +132,6 @@ private:
snd_pcm_t* handle;
snd_pcm_access_t access;
snd_pcm_format_t pcmformat;
snd_timestamp_t* timestamp;
snd_pcm_hw_params_t *hwparams;
qreal m_volume;
};
......
{
"Keys": ["sgvideonodes"]
"Keys": ["android"]
}
{
"Keys": ["sgvideonodes"]
"Keys": ["egl"]
}
{
"Keys": ["sgvideonodes"]
"Keys": ["imx6"]
}
......@@ -55,10 +55,21 @@ QDeclarativeVideoRendererBackend::QDeclarativeVideoRendererBackend(QDeclarativeV
QObject::connect(m_surface, SIGNAL(surfaceFormatChanged(QVideoSurfaceFormat)),
q, SLOT(_q_updateNativeSize()), Qt::QueuedConnection);
foreach (QObject *instance, videoNodeFactoryLoader()->instances(QSGVideoNodeFactoryPluginKey)) {
// Prioritize the plugin requested by the environment
QString requestedVideoNode = QString::fromLatin1(qgetenv("QT_VIDEONODE"));
foreach (const QString &key, videoNodeFactoryLoader()->keys()) {
QObject *instance = videoNodeFactoryLoader()->instance(key);
QSGVideoNodeFactoryInterface* plugin = qobject_cast<QSGVideoNodeFactoryInterface*>(instance);
if (plugin)
m_videoNodeFactories.append(plugin);
if (plugin) {
if (key == requestedVideoNode)
m_videoNodeFactories.prepend(plugin);
else
m_videoNodeFactories.append(plugin);
#ifdef DEBUG_VIDEOITEM
qDebug() << "found videonode plugin" << key << plugin;
#endif
}
}
// Append existing node factories as fallback if we have no plugins
......@@ -224,8 +235,12 @@ QSGNode *QDeclarativeVideoRendererBackend::updatePaintNode(QSGNode *oldNode,
if (!videoNode) {
foreach (QSGVideoNodeFactoryInterface* factory, m_videoNodeFactories) {
videoNode = factory->createNode(m_surface->surfaceFormat());
if (videoNode)
if (videoNode) {
#ifdef DEBUG_VIDEOITEM
qDebug() << "using video node from factory" << factory;
#endif
break;
}
}
}
}
......