Home · All Namespaces · All Classes · Grouped Classes · Modules · Functions codeless banner

ffmpegplaybinsession.h Example File
ffmpeg/ffmpegplaybinsession.h

    /****************************************************************************
    **
    ** This file is part of the Qt Extended Opensource Package.
    **
    ** Copyright (C) 2009 Trolltech ASA.
    **
    ** $QT_EXTENDED_DUAL_LICENSE$
    **
    ****************************************************************************/

    #ifndef __FFMPEG_PLAYBINSESSION_H
    #define __FFMPEG_PLAYBINSESSION_H

    #include <QUrl>
    #include <QUuid>

    #include <QMediaServerSession>

    class QMediaDevice;

    namespace ffmpeg
    {

    class Engine;
    class Message;
    class PlaybinSessionPrivate;

    class PlaybinSession : public QMediaServerSession
    {
        Q_OBJECT

    public:
        PlaybinSession(Engine* engine, QUuid const& id, QUrl const& url,
                QMediaDevice* sink);
        ~PlaybinSession();

        bool isValid() const;

        void start();
        void pause();
        void stop();

        void suspend();
        void resume();

        void seek(quint32 ms);
        quint32 length();

        void setVolume(int volume);
        int volume() const;

        void setMuted(bool mute);
        bool isMuted() const;

        QtopiaMedia::State playerState() const;

        QString errorString();

        void setDomain(QString const& domain);
        QString domain() const;

        QStringList interfaces();

        QString id() const;
        QString reportData() const;

    private slots:
        void readFrame();

    private:
        void getStreamsInfo();
        void readySession();

        PlaybinSessionPrivate*  d;
    };

    }   // ns ffmpeg

    #endif  // __FFMPEG_PLAYBINSESSION_H


Copyright © 2009 Trolltech Trademarks
Qt Extended 4.4.3