reference

This documentation is automatically generated from the openFrameworks source code using doxygen and refers to the most recent release, version 0.12.0.

#include <ofGstVideoPlayer.h>

Inheritance diagram for ofGstVideoPlayer:
ofBaseVideoPlayer ofGstAppSink ofBaseVideo ofBaseHasPixels_< unsigned char > ofBaseUpdates ofAbstractHasPixels

Public Member Functions

 ofGstVideoPlayer ()
 
 ~ofGstVideoPlayer ()
 
bool setPixelFormat (ofPixelFormat pixelFormat)
 needs to be called before loadMovie
 
ofPixelFormat getPixelFormat () const
 
void loadAsync (std::string name)
 Asynchronously load a video resource by name.
 
bool load (std::string uri)
 Load a video resource by name.
 
void update ()
 Update the object's state.
 
int getCurrentFrame () const
 Get the current playhead position as a frame number.
 
int getTotalNumFrames () const
 Get the total number of frames in the currently loaded video.
 
void firstFrame ()
 Set the playhead position to the first frame.
 
void nextFrame ()
 Advance the playhead forward one frame.
 
void previousFrame ()
 Advance the playhead backward one frame.
 
void setFrame (int frame)
 Set the current frame by frame number.
 
bool isStream () const
 
void play ()
 Play the video from the current playhead position.
 
void stop ()
 Pause and reset the playhead position to the first frame.
 
void setPaused (bool bPause)
 Set the paused state of the video.
 
bool isPaused () const
 Returns true if the video is paused.
 
bool isLoaded () const
 Returns true if a video is loaded.
 
bool isPlaying () const
 Returns true if the loaded video is playing.
 
float getPosition () const
 Get the current playhead position of the loaded video.
 
float getSpeed () const
 Get the playback speed of the video player.
 
float getDuration () const
 Get the duration of the loaded video in seconds.
 
bool getIsMovieDone () const
 Returns true if the loaded video has finished playing.
 
void setPosition (float pct)
 Set the position of the playhead.
 
void setVolume (float volume)
 Set the volume of the video player.
 
void setLoopState (ofLoopType state)
 Set the video loop state.
 
ofLoopType getLoopState () const
 Get the current loop state of the video.
 
void setSpeed (float speed)
 Set the video playback speed.
 
void close ()
 Close the video source.
 
bool isFrameNew () const
 
ofPixelsgetPixels ()
 Get a reference to the underlying ofPixels.
 
const ofPixelsgetPixels () const
 Get a const reference to the underlying ofPixels.
 
ofTexturegetTexturePtr ()
 Get a pointer to the video texture used internally if it exists.
 
float getHeight () const
 Get the height in pixels of the loaded video.
 
float getWidth () const
 Get the width in pixels of the loaded video.
 
void setFrameByFrame (bool frameByFrame)
 
void setThreadAppSink (bool threaded)
 
bool isThreadedAppSink () const
 
bool isFrameByFrame () const
 
ofGstVideoUtilsgetGstVideoUtils ()
 
- Public Member Functions inherited from ofBaseVideoPlayer
virtual ~ofBaseVideoPlayer ()
 Destroys the ofBaseVideoPlayer.
 
virtual bool isInitialized () const
 Returns true if a video is loaded.
 
- Public Member Functions inherited from ofBaseVideo
virtual ~ofBaseVideo ()
 Destroy the ofBaseVideo.
 
- Public Member Functions inherited from ofBaseHasPixels_< unsigned char >
virtual ~ofBaseHasPixels_ ()
 Destroy the ofAbstractHasPixels.
 
- Public Member Functions inherited from ofAbstractHasPixels
virtual ~ofAbstractHasPixels ()
 Destroy the ofAbstractHasPixels.
 
- Public Member Functions inherited from ofBaseUpdates
virtual ~ofBaseUpdates ()
 Destroy the ofBaseUpdates.
 
- Public Member Functions inherited from ofGstAppSink
virtual ~ofGstAppSink ()
 
virtual GstFlowReturn on_preroll (std::shared_ptr< GstBuffer > buffer)
 
virtual GstFlowReturn on_buffer (std::shared_ptr< GstBuffer > buffer)
 
virtual void on_eos ()
 

Protected Member Functions

bool allocate ()
 
bool createPipeline (std::string uri)
 
void on_stream_prepared ()
 
virtual bool on_message (GstMessage *msg)
 

Constructor & Destructor Documentation

◆ ofGstVideoPlayer()

ofGstVideoPlayer::ofGstVideoPlayer ( )

◆ ~ofGstVideoPlayer()

ofGstVideoPlayer::~ofGstVideoPlayer ( )

Member Function Documentation

◆ allocate()

bool ofGstVideoPlayer::allocate ( )
protected

◆ close()

void ofGstVideoPlayer::close ( )
virtual

Close the video source.

Implements ofBaseVideo.

◆ createPipeline()

bool ofGstVideoPlayer::createPipeline ( std::string  uri)
protected

◆ firstFrame()

void ofGstVideoPlayer::firstFrame ( )
virtual

Set the playhead position to the first frame.

This is functionally equivalent to setFrame(0) or setPosition(0.0).

Reimplemented from ofBaseVideoPlayer.

◆ getCurrentFrame()

int ofGstVideoPlayer::getCurrentFrame ( ) const
virtual

Get the current playhead position as a frame number.

Returns
The current playhead position as a frame number.

Reimplemented from ofBaseVideoPlayer.

◆ getDuration()

float ofGstVideoPlayer::getDuration ( ) const
virtual

Get the duration of the loaded video in seconds.

Returns
The duration of the loaded video in seconds.

Reimplemented from ofBaseVideoPlayer.

◆ getGstVideoUtils()

ofGstVideoUtils * ofGstVideoPlayer::getGstVideoUtils ( )

◆ getHeight()

float ofGstVideoPlayer::getHeight ( ) const
virtual

Get the height in pixels of the loaded video.

Returns
The height in pixels of the loaded video or 0 if none is loaded.

Implements ofBaseVideoPlayer.

◆ getIsMovieDone()

bool ofGstVideoPlayer::getIsMovieDone ( ) const
virtual

Returns true if the loaded video has finished playing.

Returns
True if the loaded video has finished playing.

Reimplemented from ofBaseVideoPlayer.

◆ getLoopState()

ofLoopType ofGstVideoPlayer::getLoopState ( ) const
virtual

Get the current loop state of the video.

See also
ofLoopType

Reimplemented from ofBaseVideoPlayer.

◆ getPixelFormat()

ofPixelFormat ofGstVideoPlayer::getPixelFormat ( ) const
virtual
Returns
the current ofPixelFormat.

Implements ofBaseVideo.

◆ getPixels() [1/2]

ofPixels & ofGstVideoPlayer::getPixels ( )
virtual

Get a reference to the underlying ofPixels.

Returns
a reference the underlying ofPixels.

Implements ofBaseHasPixels_< unsigned char >.

◆ getPixels() [2/2]

const ofPixels & ofGstVideoPlayer::getPixels ( ) const
virtual

Get a const reference to the underlying ofPixels.

Returns
a const reference the underlying ofPixels.

Implements ofBaseHasPixels_< unsigned char >.

◆ getPosition()

float ofGstVideoPlayer::getPosition ( ) const
virtual

Get the current playhead position of the loaded video.

This value is a normalized floating point value between 0.0 and 1.0 that represents the position of the playhead. 0.0 maps to the first frame of the loaded video and 1.0 maps to the last frame of the loaded video.

Returns
A value between 0.0 and 1.0 representing playhead position.

Reimplemented from ofBaseVideoPlayer.

◆ getSpeed()

float ofGstVideoPlayer::getSpeed ( ) const
virtual

Get the playback speed of the video player.

When the loop state is OF_LOOP_NONE or OF_LOOP_NORMAL, positive speed will scale a forward playback rate while a negative speed will scale a a backward playback rate. When the loop state is OF_LOOP_PALINDROME, the direction of playback will change each loop, but the playback rate will still be scaled by the absolute value of the speed.

Returns
The playback speed of the video player.

Reimplemented from ofBaseVideoPlayer.

◆ getTexturePtr()

ofTexture * ofGstVideoPlayer::getTexturePtr ( )
virtual

Get a pointer to the video texture used internally if it exists.

If the video player implementation supports direct-to-texture rendering, this method will return a pointer to the internal texture. If direct-to-texture rendering is not supported, nullptr is returned.

Returns
A valid pointer to the internal texture, otherwise a nullptr.

Reimplemented from ofBaseVideoPlayer.

◆ getTotalNumFrames()

int ofGstVideoPlayer::getTotalNumFrames ( ) const
virtual

Get the total number of frames in the currently loaded video.

Returns
The total number of frames in the currently loaded video.

Reimplemented from ofBaseVideoPlayer.

◆ getWidth()

float ofGstVideoPlayer::getWidth ( ) const
virtual

Get the width in pixels of the loaded video.

Returns
The width in pixels of the loaded video or 0 if none is loaded.

Implements ofBaseVideoPlayer.

◆ isFrameByFrame()

bool ofGstVideoPlayer::isFrameByFrame ( ) const

◆ isFrameNew()

bool ofGstVideoPlayer::isFrameNew ( ) const
virtual
Returns
true if the pixel data was updated since the last call to update().

Implements ofBaseVideo.

◆ isLoaded()

bool ofGstVideoPlayer::isLoaded ( ) const
virtual

Returns true if a video is loaded.

This is helpful when loading a video with loadAsync(). This is also an alias of isInitialized().

See also
loadAsync()
Returns
True if a video is loaded.

Implements ofBaseVideoPlayer.

◆ isPaused()

bool ofGstVideoPlayer::isPaused ( ) const
virtual

Returns true if the video is paused.

Returns
True if the video is paused.

Implements ofBaseVideoPlayer.

◆ isPlaying()

bool ofGstVideoPlayer::isPlaying ( ) const
virtual

Returns true if the loaded video is playing.

Returns
True if the loaded video is playing.

Implements ofBaseVideoPlayer.

◆ isStream()

bool ofGstVideoPlayer::isStream ( ) const

◆ isThreadedAppSink()

bool ofGstVideoPlayer::isThreadedAppSink ( ) const

◆ load()

bool ofGstVideoPlayer::load ( std::string  name)
virtual

Load a video resource by name.

The list of supported video types and sources (e.g. rtsp:// sources) is implementation dependent.

Parameters
nameThe name of the video resource to load.
Returns
True if the video was loaded successfully.
See also
loadAsync()

Implements ofBaseVideoPlayer.

◆ loadAsync()

void ofGstVideoPlayer::loadAsync ( std::string  name)
virtual

Asynchronously load a video resource by name.

The list of supported video types and sources (e.g. rtsp:// sources) is implementation dependent.

When this method is used to load a video resouce, users can determine when the video is loaded by calling isLoaded().

Parameters
nameThe name of the video resource to load.
See also
isLoaded()

Reimplemented from ofBaseVideoPlayer.

◆ nextFrame()

void ofGstVideoPlayer::nextFrame ( )
virtual

Advance the playhead forward one frame.

This allows the user to advance through the video manually one frame at a time without calling play().

Reimplemented from ofBaseVideoPlayer.

◆ on_message()

virtual bool ofGstVideoPlayer::on_message ( GstMessage msg)
inlineprotectedvirtual

Reimplemented from ofGstAppSink.

◆ on_stream_prepared()

void ofGstVideoPlayer::on_stream_prepared ( )
protectedvirtual

Reimplemented from ofGstAppSink.

◆ play()

void ofGstVideoPlayer::play ( )
virtual

Play the video from the current playhead position.

See also
getPosition()
setPostion()

Implements ofBaseVideoPlayer.

◆ previousFrame()

void ofGstVideoPlayer::previousFrame ( )
virtual

Advance the playhead backward one frame.

This allows the user to advance backward through the video manually one frame at a time without calling play().

Reimplemented from ofBaseVideoPlayer.

◆ setFrame()

void ofGstVideoPlayer::setFrame ( int  frame)
virtual

Set the current frame by frame number.

Similar to setPosition(), but accepts a frame number instead of a normalized floating point value. Frame count begins with the first frame as 0 and the last frame as getTotalNumFrames() - 1.

Parameters
frameThe frame number to set the new playhead to.

Reimplemented from ofBaseVideoPlayer.

◆ setFrameByFrame()

void ofGstVideoPlayer::setFrameByFrame ( bool  frameByFrame)

◆ setLoopState()

void ofGstVideoPlayer::setLoopState ( ofLoopType  state)
virtual

Set the video loop state.

Parameters
stateThe loop state of the video.
See also
ofLoopType

Reimplemented from ofBaseVideoPlayer.

◆ setPaused()

void ofGstVideoPlayer::setPaused ( bool  bPause)
virtual

Set the paused state of the video.

Parameters
bPauseTrue to pause the video, false to play.

Reimplemented from ofBaseVideoPlayer.

◆ setPixelFormat()

bool ofGstVideoPlayer::setPixelFormat ( ofPixelFormat  pixelFormat)
virtual

needs to be called before loadMovie

Implements ofBaseVideo.

◆ setPosition()

void ofGstVideoPlayer::setPosition ( float  pct)
virtual

Set the position of the playhead.

This value is a normalized floating point value between 0.0 and 1.0 that represents the position of the playhead. 0.0 maps to the first frame of the loaded video and 1.0 maps to the last frame of the loaded video.

Parameters
pctA value between 0.0 and 1.0 representing playhead position.

Reimplemented from ofBaseVideoPlayer.

◆ setSpeed()

void ofGstVideoPlayer::setSpeed ( float  speed)
virtual

Set the video playback speed.

When the loop state is OF_LOOP_NONE or OF_LOOP_NORMAL, positive speed will scale a forward playback rate while a negative speed will scale a a backward playback rate. When the loop state is OF_LOOP_PALINDROME, the direction of playback will change each loop, but the playback rate will still be scaled by the absolute value of the speed.

To play a video forward at normal speed, set the loop state to OF_LOOP_NONE or OF_LOOP_NORMAL and a speed of 1.0. To double the playback rate, set the speed to 2.0. To play a video backward, set the speed to a negative number. A speed 0.25 will play the video at 1/4 the the normal rate and a rate of 0.0 will effectively stop playback.

Parameters
speedThe desired playback speed of the video.

Reimplemented from ofBaseVideoPlayer.

◆ setThreadAppSink()

void ofGstVideoPlayer::setThreadAppSink ( bool  threaded)

◆ setVolume()

void ofGstVideoPlayer::setVolume ( float  volume)
virtual

Set the volume of the video player.

This value is a normalized floating point value between 0.0 and 1.0 that represents the video player volume. 0.0 maps to silence and 1.0 maps to maximum volume.

Parameters
volumeA value between 0.0 and 1.0 representing volume.

Reimplemented from ofBaseVideoPlayer.

◆ stop()

void ofGstVideoPlayer::stop ( )
virtual

Pause and reset the playhead position to the first frame.

Implements ofBaseVideoPlayer.

◆ update()

void ofGstVideoPlayer::update ( )
virtual

Update the object's state.

Implements ofBaseUpdates.


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