OPAL
Version 3.14.3
|
#include <recording.h>
Data Structures | |
struct | Options |
Public Types | |
enum | VideoMode { eSideBySideLetterbox, eSideBySideScaled, eStackedPillarbox, eStackedScaled, eSeparateStreams, NumVideoMixingModes } |
typedef PFactory < OpalRecordManager, PCaselessString > | Factory |
Public Member Functions | |
virtual | ~OpalRecordManager () |
bool | Open (const PFilePath &fn) |
bool | Open (const PFilePath &fn, bool mono) |
bool | Open (const PFilePath &fn, const Options &options) |
virtual bool | IsOpen () const =0 |
virtual bool | Close ()=0 |
virtual bool | OpenStream (const PString &strmId, const OpalMediaFormat &format)=0 |
virtual bool | CloseStream (const PString &strmId)=0 |
virtual bool | WriteAudio (const PString &strmId, const RTP_DataFrame &rtp)=0 |
virtual bool | WriteVideo (const PString &strmId, const RTP_DataFrame &rtp)=0 |
const Options & | GetOptions () const |
void | SetOptions (const Options &options) |
Protected Member Functions | |
virtual bool | OpenFile (const PFilePath &fn)=0 |
Protected Attributes | |
Options | m_options |
This is an abstract class for recording OPAL calls. A factory is used to created concrete classes based on the file extension supported by the individual record manager.
typedef PFactory<OpalRecordManager, PCaselessString> OpalRecordManager::Factory |
Factory for creating new recording managers. Selection is made based on the file extension of the file supplied to OpalManager::StartRecording().
Currently only WAV files, and for WIndows only, AVI files, are supported. Howeer this factory allows an application to add their own file formats.
|
inlinevirtual |
|
pure virtual |
Close the recording file. Note this may block until various sub-threads are termianted so care may be needed to avoid deadlocks.
|
pure virtual |
Close the media stream based on the identifier provided.
strmId | Identifier for media stream. |
|
inline |
Get the options for this recording.
References m_options.
|
pure virtual |
Indicate if the recording file is open.
|
inline |
|
inline |
Open the recoding file indicating audio mode.
References m_options, OpalRecordManager::Options::m_stereo, and OpenFile().
|
inline |
|
protectedpure virtual |
Referenced by Open().
|
pure virtual |
Open an individual media stream using the provided identifier and format.
strmId | Identifier for media stream. |
format | Media format for new stream |
|
inline |
Set the options for this recording.
References m_options.
|
pure virtual |
Write audio to the recording file.
strmId | Identifier for media stream. |
rtp | RTP data containing PCM-16 data |
|
pure virtual |
Write video to the recording file.
strmId | Identifier for media stream. |
rtp | RTP data containing a YUV420P frame |
|
protected |
Referenced by GetOptions(), Open(), and SetOptions().