class AbstractMediaStream


abstract

Module phonon
Namespace Phonon
Class AbstractMediaStream
Inherits QObject
\class AbstractMediaStream abstractmediastream.h Phonon/AbstractMediaStream Base class for custom media data streams.

Implement this class to provide a custom data stream to the backend. The class supports both, the push and the pull model.

Push:

PushStream.PushStream(QObject *parent)
: AbstractMediaStream(parent), m_timer(new QTimer(this))
{
setStreamSize(getMediaStreamSize());

connect(m_timer, SIGNAL(timeout()), SLOT(moreData())); m_timer->setInterval(0); }

void PushStream.moreData() { const QByteArray data = getMediaData(); if (data.isEmpty()) { endOfData(); } else { writeData(data); } }

void PushStream.needData() { m_timer->start(); moreData(); }

void PushStream.enoughData() { m_timer->stop(); }

Pull:

PullStream.PullStream(QObject *parent)
: AbstractMediaStream(parent)
{
setStreamSize(getMediaStreamSize());
}

void PullStream.needData() { const QByteArray data = getMediaData(); if (data.isEmpty()) { endOfData(); } else { writeData(data); } }

Author Matthias Kretz



methods