Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
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 &)=default
 
 QGstPipeline (QGstPipeline &&)=default
 
QGstPipelineoperator= (const QGstPipeline &)=default
 
QGstPipelineoperator= (QGstPipeline &&) noexcept=default
 
 QGstPipeline (GstPipeline *, RefMode mode)
 
 ~QGstPipeline ()
 
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)
 
template<typename Functor >
void modifyPipelineWhileNotRunning (Functor &&fn)
 
void flush ()
 
bool seek (qint64 pos, double rate)
 
bool setPlaybackRate (double rate, bool applyToPipeline=true)
 
double playbackRate () const
 
bool setPosition (qint64 pos)
 
qint64 position () const
 
qint64 duration () const
 
- Public Member Functions inherited from QGstBin
 QGstBin (const QGstBin &)=default
 
 QGstBin (QGstBin &&) noexcept=default
 
QGstBinoperator= (const QGstBin &)=default
 
QGstBinoperator= (QGstBin &&) noexcept=default
 
 QGstBin (GstBin *bin, RefMode mode=NeedsRef)
 
GstBin * bin () const
 
void addGhostPad (const QGstElement &child, const char *name)
 
void addGhostPad (const char *name, const QGstPad &pad)
 
bool syncChildrenState ()
 
void dumpGraph (const char *fileNamePrefix)
 
QGstElement findByName (const char *)
 
 QGstElement (const QGstElement &)=default
 
 QGstElement (QGstElement &&) noexcept=default
 
 QGstElement (GstElement *element, RefMode mode)
 
- Public Member Functions inherited from QGstElement
 QGstElement (const QGstElement &)=default
 
 QGstElement (QGstElement &&) noexcept=default
 
QGstElementoperator= (const QGstElement &)=default
 
QGstElementoperator= (QGstElement &&) noexcept=default
 
 QGstElement (GstElement *element, RefMode mode)
 
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 (std::chrono::nanoseconds timeout=std::chrono::seconds(0)) const
 
GstStateChangeReturn setState (GstState state)
 
bool setStateSync (GstState state, std::chrono::nanoseconds timeout=std::chrono::seconds(1))
 
bool syncStateWithParent ()
 
bool finishStateChange (std::chrono::nanoseconds timeout=std::chrono::seconds(5))
 
void lockState (bool locked)
 
bool isStateLocked () const
 
void sendEvent (GstEvent *event) const
 
void sendEos () const
 
template<auto Member, typename T >
QGObjectHandlerConnection onPadAdded (T *instance)
 
template<auto Member, typename T >
QGObjectHandlerConnection onPadRemoved (T *instance)
 
template<auto Member, typename T >
QGObjectHandlerConnection onNoMorePads (T *instance)
 
GstClockTime baseTime () const
 
void setBaseTime (GstClockTime time) const
 
GstElement * element () const
 
QGstElement getParent () const
 
QGstPipeline getPipeline () const
 
 QGstObject (const QGstObject &)=default
 
 QGstObject (QGstObject &&) noexcept=default
 
- Public Member Functions inherited from QGstObject
 QGstObject (const QGstObject &)=default
 
 QGstObject (QGstObject &&) noexcept=default
 
QGstObjectoperator= (const QGstObject &)=default
 
QGstObjectoperator= (QGstObject &&) noexcept=default
 
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
 
QGObjectHandlerConnection connect (const char *name, GCallback callback, gpointer userData)
 
void disconnect (gulong handlerId)
 
GType type () const
 
GstObject * object () const
 
const char * name () const
 
- Public Member Functions inherited from QGstPointerImpl::QGstObjectWrapper< GstObject >
constexpr QGstObjectWrapper ()=default
 
 QGstObjectWrapper (GstObject *object, RefMode mode)
 
 QGstObjectWrapper (const QGstObjectWrapper &other)
 
 QGstObjectWrapper (QGstObjectWrapper &&other) noexcept
 
 ~QGstObjectWrapper ()
 
QGstObjectWrapperoperator= (const QGstObjectWrapper &other)
 
QGstObjectWrapperoperator= (QGstObjectWrapper &&other) noexcept
 
 operator bool () const
 
bool isNull () const
 
GstObject * release ()
 

Static Public Member Functions

static QGstPipeline create (const char *name)
 
static QGstPipeline adopt (GstPipeline *)
 
template<typename Functor >
static void modifyPipelineWhileNotRunning (QGstPipeline &&pipeline, Functor &&fn)
 
- Static Public Member Functions inherited from QGstBin
static QGstBin create (const char *name)
 
static QGstBin createFromFactory (const char *factory, const char *name)
 
- Static Public Member Functions inherited from QGstElement
static QGstElement createFromFactory (const char *factory, const char *name=nullptr)
 
static QGstElement createFromFactory (GstElementFactory *, const char *name=nullptr)
 
static QGstElement createFromFactory (const QGstElementFactoryHandle &, const char *name=nullptr)
 
static QGstElement createFromDevice (const QGstDeviceHandle &, const char *name=nullptr)
 
static QGstElement createFromDevice (GstDevice *, const char *name=nullptr)
 

Additional Inherited Members

- Public Types inherited from QGstPointerImpl::QGstObjectWrapper< GstObject >
enum  RefMode
 
- Public Attributes inherited from QGstBin
template<typename... Ts>
std::enable_if_t<(std::is_base_of_v< QGstElement, Ts > &&...), void add )(const Ts &...ts)
 
template<typename... Ts>
std::enable_if_t<(std::is_base_of_v< QGstElement, Ts > &&...), void remove )(const Ts &...ts)
 
template<typename... Ts>
std::enable_if_t<(std::is_base_of_v< QGstElement, Ts > &&...), void stopAndRemoveElements )(Ts... ts)
 
- Protected Member Functions inherited from QGstPointerImpl::QGstObjectWrapper< GstObject >
GstObject * get () const
 

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 & )
default

◆ QGstPipeline() [3/4]

QGstPipeline::QGstPipeline ( QGstPipeline && )
default

◆ QGstPipeline() [4/4]

QGstPipeline::QGstPipeline ( GstPipeline * p,
RefMode mode )

Definition at line 176 of file qgstpipeline.cpp.

◆ ~QGstPipeline()

QGstPipeline::~QGstPipeline ( )
default

Member Function Documentation

◆ adopt()

QGstPipeline QGstPipeline::adopt ( GstPipeline * pipeline)
static

Definition at line 161 of file qgstpipeline.cpp.

References d, QGstPointerImpl::QGstObjectWrapper< GstObject >::NeedsRef, pipeline(), and ptr().

Referenced by create(), and QGstreamerAudioDecoder::create().

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

◆ create()

QGstPipeline QGstPipeline::create ( const char * name)
static

Definition at line 155 of file qgstpipeline.cpp.

References adopt(), and pipeline().

+ Here is the call graph for this function:

◆ dumpGraph()

void QGstPipeline::dumpGraph ( const char * fileName)

Definition at line 235 of file qgstpipeline.cpp.

References QGstBin::bin(), fileName, QGstPointerImpl::QGstObjectWrapper< GstObject >::isNull(), and QGstPointerImpl::QGstObjectWrapper< GstObject >::NeedsRef.

Referenced by QGstreamerMediaEncoder::pause(), QGstreamerMediaPlayer::processBusMessage(), QGstreamerMediaPlayer::processSyncMessage(), QGstreamerMediaEncoder::record(), QGstreamerMediaEncoder::resume(), 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 371 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:

◆ flush()

void QGstPipeline::flush ( )

Definition at line 299 of file qgstpipeline.cpp.

References d, 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 212 of file qgstpipeline.cpp.

References d.

◆ installMessageFilter() [2/2]

void QGstPipeline::installMessageFilter ( QGstreamerSyncMessageFilter * filter)

Definition at line 200 of file qgstpipeline.cpp.

References d.

Referenced by QGstreamerMediaEncoder::setCaptureSession().

+ Here is the caller graph for this function:

◆ inStoppedState()

bool QGstPipeline::inStoppedState ( ) const

Definition at line 182 of file qgstpipeline.cpp.

References d.

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

+ Here is the caller graph for this function:

◆ modifyPipelineWhileNotRunning() [1/2]

◆ modifyPipelineWhileNotRunning() [2/2]

template<typename Functor >
static void QGstPipeline::modifyPipelineWhileNotRunning ( QGstPipeline && pipeline,
Functor && fn )
inlinestatic

Definition at line 87 of file qgstpipeline_p.h.

References pipeline().

+ Here is the call graph for this function:

◆ operator=() [1/2]

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

◆ operator=() [2/2]

QGstPipeline & QGstPipeline::operator= ( QGstPipeline && )
defaultnoexcept

◆ pipeline()

GstPipeline * QGstPipeline::pipeline ( ) const
inline

Definition at line 74 of file qgstpipeline_p.h.

References QGstPointerImpl::QGstObjectWrapper< GstObject >::get().

Referenced by adopt(), create(), modifyPipelineWhileNotRunning(), QGstreamerMediaPlayer::nativePipeline(), and QGstreamerMediaCapture::nativePipeline().

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

◆ playbackRate()

double QGstPipeline::playbackRate ( ) const

Definition at line 350 of file qgstpipeline.cpp.

References d.

Referenced by QGstreamerMediaPlayer::playbackRate().

+ Here is the caller graph for this function:

◆ position()

qint64 QGstPipeline::position ( ) const

Definition at line 362 of file qgstpipeline.cpp.

References d, QGstElement::element(), and pos.

Referenced by flush(), QGstreamerMediaPlayer::position(), 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 218 of file qgstpipeline.cpp.

References d.

◆ removeMessageFilter() [2/2]

void QGstPipeline::removeMessageFilter ( QGstreamerSyncMessageFilter * filter)

Definition at line 206 of file qgstpipeline.cpp.

References d.

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

+ Here is the caller graph for this function:

◆ seek()

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

Definition at line 305 of file qgstpipeline.cpp.

References d, duration(), QGstElement::element(), and pos.

Referenced by flush(), 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 194 of file qgstpipeline.cpp.

References d, and flush().

+ Here is the call graph for this function:

◆ setInStoppedState()

void QGstPipeline::setInStoppedState ( bool stopped)

Definition at line 188 of file qgstpipeline.cpp.

References d.

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

+ Here is the caller graph for this function:

◆ setPlaybackRate()

bool QGstPipeline::setPlaybackRate ( double rate,
bool applyToPipeline = true )

Definition at line 324 of file qgstpipeline.cpp.

References d, and QGstElement::element().

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 356 of file qgstpipeline.cpp.

References d, pos, and seek().

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

+ 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 224 of file qgstpipeline.cpp.

References d, QGstElement::element(), flush(), and state.

Referenced by QGstreamerMediaPlayer::pause(), QGstreamerMediaPlayer::play(), 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: