Valkka  1.6.1
OpenSource Video Management
Public Member Functions | Public Attributes | Protected Attributes | List of all members
Connection Class Referenceabstract

A base class that unifies all kinds of connections (RTSP and SDP). More...

#include <livethread.h>

Inheritance diagram for Connection:
Inheritance graph
[legend]
Collaboration diagram for Connection:
Collaboration graph
[legend]

Public Member Functions

 Connection (UsageEnvironment &env, LiveConnectionContext &ctx)
 Default constructor. More...
 
virtual ~Connection ()
 Default destructor.
 
virtual void playStream ()=0
 Called from within the live555 event loop.
 
virtual void stopStream (bool cut=true)=0
 Stops stream and reclaims it resources. Called from within the live555 event loop. cut: cut the downstream filterchain or no.
 
virtual void reStartStream ()
 Called from within the live555 event loop.
 
virtual void reStartStreamIf ()
 Called from within the live555 event loop.
 
virtual bool isClosed ()
 Have the streams resources been reclaimed after stopping it?
 
virtual void forceClose ()
 Normally, stopStream reclaims the resources. This one forces the delete.
 
SlotNumber getSlot ()
 Return the slot number.
 

Public Attributes

UsageEnvironment & env
 UsageEnvironment identifying the Live555 event loop (see Live555 primer)
 
bool is_playing
 

Protected Attributes

LiveConnectionContextctx
 LiveConnectionContext identifying the stream source (address), it's destination (slot and target framefilter), etc.
 
FrameFiltertimestampfilter
 
FrameFilterinputfilter
 
FrameFilterrepeat_sps_filter
 Repeat sps & pps packets before i-frame (if they were not there before the i-frame)
 
long int frametimer
 Measures time when the last frame was received.
 
long int pendingtimer
 Measures how long stream has been pending.
 

Detailed Description

A base class that unifies all kinds of connections (RTSP and SDP).

Methods of this class are used by the LiveThread class and they are called from within the Live555 event loop.

Connect typically has a small, default internal filterchain to correct for the often-so-erroneous timestamps (see the cpp file for more details):

Filterchain: --> {FrameFilter: Connection::inputfilter} --> {TimestampFrameFilter2: Connection::timestampfilter} --> {FrameFilter: Connection::framefilter} -->


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