Music Hub ..
A session-wide music playback service
Loading...
Searching...
No Matches
lomiri::MediaHub::VideoSink Class Referenceabstract

A video sink abstracts a queue of buffers, that receives a stream of decoded video buffers from an arbitrary source. More...

#include <video_sink.h>

Inheritance diagram for lomiri::MediaHub::VideoSink:
Collaboration diagram for lomiri::MediaHub::VideoSink:

Signals

void frameAvailable ()
 The signal is emitted whenever a new frame is available and a subsequent call to swapBuffers() will not block and return true.

Public Member Functions

virtual ~VideoSink ()
const QMatrix4x4 & transformationMatrix () const
 Queries the 4x4 transformation matrix for the current frame.
virtual bool swapBuffers ()=0
 Releases the current buffer, and consumes the next buffer in the queue, making it available for consumption by consumers of this API in an implementation-specific way. Clients will usually rely on a GL texture to receive the latest buffer.

Protected Member Functions

 VideoSink (VideoSinkPrivate *d, QObject *parent=nullptr)

Protected Attributes

QScopedPointer< VideoSinkPrivated_ptr

Detailed Description

A video sink abstracts a queue of buffers, that receives a stream of decoded video buffers from an arbitrary source.

Definition at line 34 of file video_sink.h.

Constructor & Destructor Documentation

◆ ~VideoSink()

VideoSink::~VideoSink ( )
virtualdefault

References transformationMatrix().

Here is the call graph for this function:

◆ VideoSink()

VideoSink::VideoSink ( VideoSinkPrivate * d,
QObject * parent = nullptr )
protected

Definition at line 39 of file video_sink.cpp.

References d_ptr.

Referenced by frameAvailable(), NullVideoSink::NullVideoSink(), and transformationMatrix().

Member Function Documentation

◆ frameAvailable

void lomiri::MediaHub::VideoSink::frameAvailable ( )
signal

The signal is emitted whenever a new frame is available and a subsequent call to swapBuffers() will not block and return true.

References VideoSink().

Here is the call graph for this function:

◆ swapBuffers()

virtual bool lomiri::MediaHub::VideoSink::swapBuffers ( )
pure virtual

Releases the current buffer, and consumes the next buffer in the queue, making it available for consumption by consumers of this API in an implementation-specific way. Clients will usually rely on a GL texture to receive the latest buffer.

Implemented in lomiri::MediaHub::EglVideoSink, lomiri::MediaHub::HybrisVideoSink, and NullVideoSink.

◆ transformationMatrix()

const QMatrix4x4 & VideoSink::transformationMatrix ( ) const

Queries the 4x4 transformation matrix for the current frame.

Definition at line 47 of file video_sink.cpp.

References VideoSink().

Referenced by ~VideoSink().

Here is the call graph for this function:

Member Data Documentation

◆ d_ptr

QScopedPointer<VideoSinkPrivate> lomiri::MediaHub::VideoSink::d_ptr
protected

Definition at line 66 of file video_sink.h.

Referenced by VideoSink().


The documentation for this class was generated from the following files:
  • /build/media-hub-4.7~20260316060616.27~fbd9644+ubports26.04.1/src/lib/MediaHub/video_sink.h
  • /build/media-hub-4.7~20260316060616.27~fbd9644+ubports26.04.1/src/lib/MediaHub/video_sink.cpp