Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
QGstPipeline Class Reference

#include <qgstpipeline_p.h>

+ Inheritance diagram for QGstPipeline:
+ Collaboration diagram for QGstPipeline:

Public Member Functions

constexpr QGstPipeline ()=default
 
 QGstPipeline (const QGstPipeline &o)
 
QGstPipelineoperator= (const QGstPipeline &o)
 
 QGstPipeline (const char *name)
 
 QGstPipeline (GstPipeline *p)
 
 ~QGstPipeline () override
 
bool inStoppedState () const
 
void setInStoppedState (bool stopped)
 
void setFlushOnConfigChanges (bool flush)
 
void installMessageFilter (QGstreamerSyncMessageFilter *filter)
 
void removeMessageFilter (QGstreamerSyncMessageFilter *filter)
 
void installMessageFilter (QGstreamerBusMessageFilter *filter)
 
void removeMessageFilter (QGstreamerBusMessageFilter *filter)
 
GstStateChangeReturn setState (GstState state)
 
GstPipeline * pipeline () const
 
void dumpGraph (const char *fileName)
 
void beginConfig ()
 
void endConfig ()
 
void flush ()
 
bool seek (qint64 pos, double rate)
 
bool setPlaybackRate (double rate)
 
double playbackRate () const
 
bool setPosition (qint64 pos)
 
qint64 position () const
 
qint64 duration () const
 
- Public Member Functions inherited from QGstBin
 QGstBin ()=default
 
 QGstBin (const QGstObject &o)
 
 QGstBin (const char *name)
 
 QGstBin (GstBin *bin, RefMode mode=NeedsRef)
 
void add (const QGstElement &element)
 
void add (const QGstElement &e1, const QGstElement &e2)
 
void add (const QGstElement &e1, const QGstElement &e2, const QGstElement &e3)
 
void add (const QGstElement &e1, const QGstElement &e2, const QGstElement &e3, const QGstElement &e4)
 
void add (const QGstElement &e1, const QGstElement &e2, const QGstElement &e3, const QGstElement &e4, const QGstElement &e5)
 
void add (const QGstElement &e1, const QGstElement &e2, const QGstElement &e3, const QGstElement &e4, const QGstElement &e5, const QGstElement &e6)
 
void remove (const QGstElement &element)
 
GstBin * bin () const
 
void addGhostPad (const QGstElement &child, const char *name)
 
void addGhostPad (const char *name, const QGstPad &pad)
 
- Public Member Functions inherited from QGstElement
 QGstElement ()=default
 
 QGstElement (const QGstObject &o)
 
 QGstElement (GstElement *element, RefMode mode=NeedsRef)
 
 QGstElement (const char *factory, const char *name=nullptr)
 
bool link (const QGstElement &next)
 
bool link (const QGstElement &n1, const QGstElement &n2)
 
bool link (const QGstElement &n1, const QGstElement &n2, const QGstElement &n3)
 
bool link (const QGstElement &n1, const QGstElement &n2, const QGstElement &n3, const QGstElement &n4)
 
bool link (const QGstElement &n1, const QGstElement &n2, const QGstElement &n3, const QGstElement &n4, const QGstElement &n5)
 
void unlink (const QGstElement &next)
 
QGstPad staticPad (const char *name) const
 
QGstPad src () const
 
QGstPad sink () const
 
QGstPad getRequestPad (const char *name) const
 
void releaseRequestPad (const QGstPad &pad) const
 
GstState state () const
 
GstStateChangeReturn setState (GstState state)
 
bool setStateSync (GstState state)
 
bool syncStateWithParent ()
 
bool finishStateChange ()
 
void lockState (bool locked)
 
bool isStateLocked () const
 
void sendEvent (GstEvent *event) const
 
void sendEos () const
 
template<auto Member, typename T >
void onPadAdded (T *instance)
 
template<auto Member, typename T >
void onPadRemoved (T *instance)
 
template<auto Member, typename T >
void onNoMorePads (T *instance)
 
GstClockTime baseTime () const
 
void setBaseTime (GstClockTime time) const
 
GstElement * element () const
 
- Public Member Functions inherited from QGstObject
 QGstObject ()=default
 
 QGstObject (GstObject *o, RefMode mode=HasRef)
 
 QGstObject (const QGstObject &other)
 
QGstObjectoperator= (const QGstObject &other)
 
 QGstObject (QGstObject &&other) noexcept
 
QGstObjectoperator= (QGstObject &&other)
 
virtual ~QGstObject ()
 
 operator bool () const
 
bool isNull () const
 
void set (const char *property, const char *str)
 
void set (const char *property, bool b)
 
void set (const char *property, uint i)
 
void set (const char *property, int i)
 
void set (const char *property, qint64 i)
 
void set (const char *property, quint64 i)
 
void set (const char *property, double d)
 
void set (const char *property, const QGstObject &o)
 
void set (const char *property, const QGstCaps &c)
 
QGString getString (const char *property) const
 
QGstStructure getStructure (const char *property) const
 
bool getBool (const char *property) const
 
uint getUInt (const char *property) const
 
int getInt (const char *property) const
 
quint64 getUInt64 (const char *property) const
 
qint64 getInt64 (const char *property) const
 
float getFloat (const char *property) const
 
double getDouble (const char *property) const
 
QGstObject getObject (const char *property) const
 
void connect (const char *name, GCallback callback, gpointer userData)
 
GstObject * object () const
 
const char * name () const
 

Additional Inherited Members

- Public Types inherited from QGstObject
enum  RefMode { HasRef , NeedsRef }
 
- Protected Attributes inherited from QGstObject
GstObject * m_object = nullptr
 

Detailed Description

Definition at line 42 of file qgstpipeline_p.h.

Constructor & Destructor Documentation

◆ QGstPipeline() [1/4]

constexpr QGstPipeline::QGstPipeline ( )
constexprdefault

◆ QGstPipeline() [2/4]

QGstPipeline::QGstPipeline ( const QGstPipeline o)

Definition at line 162 of file qgstpipeline.cpp.

References QGstPipelinePrivate::ref().

+ Here is the call graph for this function:

◆ QGstPipeline() [3/4]

QGstPipeline::QGstPipeline ( const char *  name)

Definition at line 183 of file qgstpipeline.cpp.

References pipeline(), and QGstPipelinePrivate::ref().

+ Here is the call graph for this function:

◆ QGstPipeline() [4/4]

QGstPipeline::QGstPipeline ( GstPipeline *  p)

Definition at line 190 of file qgstpipeline.cpp.

References pipeline(), and QGstPipelinePrivate::ref().

+ Here is the call graph for this function:

◆ ~QGstPipeline()

QGstPipeline::~QGstPipeline ( )
override

Definition at line 197 of file qgstpipeline.cpp.

References QGstPipelinePrivate::deref().

+ Here is the call graph for this function:

Member Function Documentation

◆ beginConfig()

void QGstPipeline::beginConfig ( )

Definition at line 254 of file qgstpipeline.cpp.

References QGstObject::isNull(), QGstPipelinePrivate::m_configCounter, QGstPipelinePrivate::m_savedState, Q_ASSERT, QGstElement::setStateSync(), and QGstElement::state().

Referenced by QGstreamerVideoOutput::linkSubtitleStream(), QGstreamerMediaPlayer::setActiveTrack(), QGstreamerMediaPlayer::setAudioOutput(), QGstreamerVideoOutput::setVideoSink(), and QGstreamerVideoOutput::unlinkSubtitleStream().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dumpGraph()

void QGstPipeline::dumpGraph ( const char *  fileName)
inline

Definition at line 72 of file qgstpipeline_p.h.

References QGstBin::bin(), fileName, QGstObject::isNull(), and Q_UNUSED.

Referenced by QGstreamerMediaEncoder::pause(), QGstreamerMediaPlayer::processBusMessage(), QGstreamerMediaPlayer::processSyncMessage(), QGstreamerMediaEncoder::record(), QGstreamerMediaEncoder::resume(), QGstreamerMediaCapture::setCamera(), QGstreamerMediaCapture::setImageCapture(), QGstreamerMediaCapture::setMediaRecorder(), and QGstreamerAudioDecoder::start().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ duration()

qint64 QGstPipeline::duration ( ) const

Definition at line 335 of file qgstpipeline.cpp.

References d, and QGstElement::element().

Referenced by QGstreamerMediaPlayer::processBusMessage(), and seek().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ endConfig()

void QGstPipeline::endConfig ( )

Definition at line 269 of file qgstpipeline.cpp.

References QGstObject::isNull(), QGstPipelinePrivate::m_configCounter, QGstPipelinePrivate::m_flushOnConfigChanges, QGstPipelinePrivate::m_pendingFlush, QGstPipelinePrivate::m_savedState, Q_ASSERT, and setState().

Referenced by QGstreamerVideoOutput::linkSubtitleStream(), QGstreamerMediaPlayer::setActiveTrack(), QGstreamerMediaPlayer::setAudioOutput(), QGstreamerVideoOutput::setVideoSink(), and QGstreamerVideoOutput::unlinkSubtitleStream().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ flush()

void QGstPipeline::flush ( )

Definition at line 286 of file qgstpipeline.cpp.

References QGstPipelinePrivate::m_rate, position(), and seek().

Referenced by QGstreamerMediaPlayer::pause(), QGstreamerMediaPlayer::play(), QGstreamerMediaPlayer::setActiveTrack(), setFlushOnConfigChanges(), and setState().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ installMessageFilter() [1/2]

void QGstPipeline::installMessageFilter ( QGstreamerBusMessageFilter filter)

Definition at line 232 of file qgstpipeline.cpp.

References QGstPipelinePrivate::installMessageFilter(), and Q_ASSERT.

+ Here is the call graph for this function:

◆ installMessageFilter() [2/2]

void QGstPipeline::installMessageFilter ( QGstreamerSyncMessageFilter filter)

Definition at line 220 of file qgstpipeline.cpp.

References QGstPipelinePrivate::installMessageFilter(), and Q_ASSERT.

Referenced by QGstreamerMediaEncoder::setCaptureSession().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ inStoppedState()

bool QGstPipeline::inStoppedState ( ) const

Definition at line 203 of file qgstpipeline.cpp.

References QGstPipelinePrivate::inStoppedState, and Q_ASSERT.

Referenced by QGstreamerVideoSink::inStoppedState(), and QGstreamerMediaPlayer::pause().

+ Here is the caller graph for this function:

◆ operator=()

QGstPipeline & QGstPipeline::operator= ( const QGstPipeline o)

Definition at line 170 of file qgstpipeline.cpp.

References QGstPipelinePrivate::deref(), o, and QGstObject::operator=().

+ Here is the call graph for this function:

◆ pipeline()

GstPipeline * QGstPipeline::pipeline ( ) const
inline

Definition at line 70 of file qgstpipeline_p.h.

References QGstObject::m_object.

Referenced by QGstPipeline(), and QGstPipeline().

+ Here is the caller graph for this function:

◆ playbackRate()

double QGstPipeline::playbackRate ( ) const

Definition at line 317 of file qgstpipeline.cpp.

References QGstPipelinePrivate::m_rate.

Referenced by QGstreamerMediaPlayer::playbackRate().

+ Here is the caller graph for this function:

◆ position()

qint64 QGstPipeline::position ( ) const

Definition at line 327 of file qgstpipeline.cpp.

References QGstElement::element(), QGstPipelinePrivate::m_position, and pos.

Referenced by flush(), QGstreamerMediaPlayer::position(), setPlaybackRate(), and QGstreamerMediaPlayer::setPosition().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ removeMessageFilter() [1/2]

void QGstPipeline::removeMessageFilter ( QGstreamerBusMessageFilter filter)

Definition at line 238 of file qgstpipeline.cpp.

References Q_ASSERT, and QGstPipelinePrivate::removeMessageFilter().

+ Here is the call graph for this function:

◆ removeMessageFilter() [2/2]

void QGstPipeline::removeMessageFilter ( QGstreamerSyncMessageFilter filter)

Definition at line 226 of file qgstpipeline.cpp.

References Q_ASSERT, and QGstPipelinePrivate::removeMessageFilter().

Referenced by QGstreamerMediaEncoder::~QGstreamerMediaEncoder(), QGstreamerMediaPlayer::~QGstreamerMediaPlayer(), and QGstreamerMediaEncoder::setCaptureSession().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ seek()

bool QGstPipeline::seek ( qint64  pos,
double  rate 
)

Definition at line 291 of file qgstpipeline.cpp.

References duration(), QGstElement::element(), QGstPipelinePrivate::m_position, QGstPipelinePrivate::m_rate, and pos.

Referenced by flush(), setPlaybackRate(), and setPosition().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setFlushOnConfigChanges()

void QGstPipeline::setFlushOnConfigChanges ( bool  flush)

Definition at line 215 of file qgstpipeline.cpp.

References flush(), and QGstPipelinePrivate::m_flushOnConfigChanges.

+ Here is the call graph for this function:

◆ setInStoppedState()

void QGstPipeline::setInStoppedState ( bool  stopped)

Definition at line 209 of file qgstpipeline.cpp.

References QGstPipelinePrivate::inStoppedState, and Q_ASSERT.

Referenced by QGstreamerMediaPlayer::pause(), QGstreamerMediaPlayer::play(), and QGstreamerMediaPlayer::setMedia().

+ Here is the caller graph for this function:

◆ setPlaybackRate()

bool QGstPipeline::setPlaybackRate ( double  rate)

Definition at line 309 of file qgstpipeline.cpp.

References QGstPipelinePrivate::m_rate, position(), and seek().

Referenced by QGstreamerMediaPlayer::setPlaybackRate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setPosition()

bool QGstPipeline::setPosition ( qint64  pos)

Definition at line 322 of file qgstpipeline.cpp.

References QGstPipelinePrivate::m_rate, pos, and seek().

Referenced by QGstreamerMediaPlayer::pause(), QGstreamerMediaPlayer::play(), QGstreamerMediaPlayer::setMedia(), and QGstreamerMediaPlayer::setPosition().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setState()

GstStateChangeReturn QGstPipeline::setState ( GstState  state)

Definition at line 244 of file qgstpipeline.cpp.

References QGstElement::element(), flush(), QGstPipelinePrivate::m_pendingFlush, and QGstElement::state().

Referenced by endConfig(), QGstreamerMediaPlayer::pause(), QGstreamerMediaPlayer::play(), QGstreamerAudioDecoder::processBusMessage(), QGStreamerAudioSink::resume(), QGStreamerAudioSource::resume(), QGstreamerMediaPlayer::setMedia(), QGstreamerAudioDecoder::start(), QGstreamerAudioDecoder::stop(), QGStreamerAudioSink::suspend(), and QGStreamerAudioSource::suspend().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

The documentation for this class was generated from the following files: