DBus connection to omxplayer won't work

  • Hy, I try to write a wrapper to navigate the omxplayer on raspberry pi 2. The script dbuscontroll.sh works but the Qt source code do not work.

    I am not sure if the application is connected? This is the code:

        QDBusConnection *_dbus;
        _dbus = new QDBusConnection(QDBusConnection::sessionBus());
        _dbus->connectToBus(address, "org.mpris.MediaPlayer2.omxplayer");
        if( !_dbus->isConnected() ) {
            qDebug() << "not connected";
        QString dest = "org.mpris.MediaPlayer2.omxplayer";
        QString path = "/org/mpris/MediaPlayer2/";
        QString interface = "org.mpris.MediaPlayer2.Player";
        QString name = "Action";
        QDBusMessage msg = QDBusMessage::createMethodCall(dest, path, interface, name);
        msg.setArguments(QList<QVariant>() << 16);
        if( !_dbus->send(msg) ) {
            qWarning() << "error: " << _dbus->lastError().message();

    And I got this output on the console:

    Unable to query physical screen size, defaulting to 100 dpi.
    To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
    QDBusConnectionPrivate(0x72208478) : connected successfully
    not connected
    error:  "Not connected to D-Bus server"
    QDBusConnectionPrivate(0x72208478) got message (signal): QDBusMessage(type=Signal, service="org.freedesktop.DBus", path="/org/freedesktop/DBus", interface="org.freedesktop.DBus", member="NameAcquired", signature="s", contents=(":1.29") )

    I am connected with ssh and use the dbus-monitor. It display the following output:

    signal sender=org.freedesktop.DBus -> dest=(null destination) serial=8 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
       string ":1.33"
       string ""
       string ":1.33"
    method call sender=:1.33 -> dest=org.freedesktop.DBus serial=1 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=Hello

    Can anyone tell me what's going wrong and why the message is not queued?

  • I think that I found the solution. I will test something and post the result later.

  • The solution is to set some environment variables. I set the address in qt but the environments are required for the libdbus library.

    Set the




Log in to reply

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.