ESInfo Class Reference
Info object that describes one elementary stream <short description="">. More...
#include <ESInfo.hpp>
Inheritance diagram for ESInfo:
Public Member Functions | |
ESInfo (u64 streamId, u32 streamtype, ContainerInfo *vob, u32 timeIncrement, u8 *encodeddecconf, u32 objtype, u32 bufsize, u32 avg, u32 maxBand, u32 timeScale, u64 duration, u32 size, bool complete=true, CodecID codec_id=CODEC_ID_NONE, float quality=1.0) | |
creates an ESInfo object | |
u32 | getHeaders (u8 **pHeaders) const |
returns the size of the header, returns 0 in case of error. | |
u64 | getStreamId () const |
const u8 * | getEncodedDecoderConfig () const |
returns a pointer to the decode config | |
virtual void | setEncodedDecoderConfig (u8 *enc) |
creates a shallow copy of enc | |
void | setDecoderConfig (const u8 *dec, int size) |
encodes dec and deep-copies it | |
u32 | getObjectType () const |
u32 | getStreamType () const |
u32 | getBufferSize () const |
virtual u32 | getHandlerType () const =0 |
virtual bool | isVisualStream () const =0 |
virtual bool | isAudioStream () const =0 |
virtual bool | isODStream () const =0 |
virtual bool | isSceneDescriptionStream () const =0 |
virtual void | generateDescriptionText () |
const char * | getDescriptionText () const |
virtual ESInfo * | clone (ContainerInfo *mp4)=0 |
creates a deep copy of the ES | |
bool | getCompleteState () const |
float | getStreamQuality () const |
void | setCompleteState (bool comp) |
void | setInput (const char *inp) |
sets a deep copy of input at this object, input will be freed when the destructor is called | |
const char * | getInput () const |
u32 | getAvgBandwidth () const |
void | setAvgBandwidth (u32 uiBandwidth) |
Needed in Adaptor classes. | |
u32 | getMaxBandwidth () const |
void | setMaxBandwidth (u32 uiMaxBandwidth) |
u32 | getMediaTimeScale () const |
returns the timescale of the stream measured in ticks/second | |
void | setMediaTimeScale (u32 uiMediaTimeScale) |
set the mediaTimeScale | |
u64 | getDuration () const |
returns the duration of the ElementaryStream expressed in ticks | |
void | setDuration (u64 uiDuration) |
u64 | getDurationInMs () const |
returns the duration of the media in ms | |
u32 | getOrigMediaSize () const |
void | setOrigMediaSize (u32 mediaSize) |
u32 | getCurrentDemuxedMediaSize () const |
returns the size of the current media. | |
u32 | getFrameNumber (double timeInSeconds, bool upround=true) const |
calculates the frame number for the given time stamp which is expressed in seconds | |
double | getMediaTime (u32 frameNo) const |
Calculates media time in seconds from frame number. | |
void | setVOPTimeIncrement (u32 ticks) |
updates the delta times between two consecutive frames in ticks | |
u32 | getVOPTimeIncrement () const |
u32 | getNumberOfMediaSamples () const |
ContainerInfo * | getContainerInfo () |
bool | getDecConfUpdated () const |
void | clearDecConfUpdated () |
bool | enableFrameStatistic () |
creates a new frame statistic object. | |
void | disableFrameStatistic () |
BitField * | getFrameStatistic () |
void | setFrameStatistic (BitField *) |
ReferenceCounter * | getUsageCounter () |
void | setCloneCounter (ReferenceCounter *&ref) |
ReferenceCounter * | getCloneCounter () |
void | setCodecID (CodecID id) |
CodecID | getCodecID () |
bool | destroy () |
deletes all locally stored files belonging to this object | |
Protected Attributes | |
u64 | streamId |
u32 | streamType |
ContainerInfo * | vo |
char * | input |
input specifies a local file or an url string | |
u8 * | encodedDecoderConfig |
u32 | objectType |
u32 | bufferSize |
u32 | avgBandwidth |
u32 | maxBandwidth |
u32 | mediaTimeScale |
the timescale of the media, in ticks/second | |
u64 | duration |
the duration of the stream expressed in the medias timescale | |
u32 | mediaSize |
the byteSize of the original ES | |
u32 | vopTimeIncrement |
bool | decConfUpdated |
bool | complete |
BitField * | frameStatistic |
ReferenceCounter * | usageCounter |
ReferenceCounter * | existingClones |
stores the number of existing clones for this ESInfo including the original one | |
CodecID | codec_id |
This is the codec id for the stream as provided by ffmpeg Cannot be used with ISOMP4. | |
float | quality |
char | description [MAX_STR_LEN] |
char * | Language |
Detailed Description
Info object that describes one elementary stream <short description="">.
- Author:
- Michael Kropfberger and Peter Schojer
- Version:
- Id
- ESInfo.hpp,v 1.24 2006/05/15 10:41:39 mkropfbe Exp
Definition at line 80 of file ESInfo.hpp.
Constructor & Destructor Documentation
|
creates an ESInfo object
References codec_id, duration, existingClones, input, mediaSize, and mediaTimeScale.
|
Member Function Documentation
|
creates a new frame statistic object. fails if already one exists Definition at line 237 of file ESInfo.cpp. References getNumberOfMediaSamples(). Referenced by destroy(), RawStreamIO::open(), MPGStreamIO::open(), BufferedIO::open(), and RTSP::parseResponseDescribe().
|
|
returns the size of the current media. Will also work for streams that are currently streamed to the diskDefinition at line 318 of file ESInfo.cpp. References input.
|
|
calculates the frame number for the given time stamp which is expressed in seconds
References mediaTimeScale. Referenced by ContainerDemux::adaptESInfo().
|
|
returns the size of the header, returns 0 in case of error. If *pheaders is != NULL an assertion is thrown! Definition at line 158 of file ESInfo.cpp. References SDP::decodeDecoderConfig(). Referenced by MPGStreamIO::setToFrameNumber(), and Rtp::writeFrame().
|
|
References input. Referenced by MPGStreamIO::open(), and ProxySession::tearDown().
|
|
Calculates media time in seconds from frame number. Returns 0.0 on error. Definition at line 227 of file ESInfo.cpp. References mediaTimeScale.
|
|
Referenced by ContainerDemux::demultiplexAndUpdateIO(), enableFrameStatistic(), Rtp::getFrame(), ContainerInfo::loadFromCfgFile(), RawStreamIO::open(), MPGStreamIO::open(), BufferedIO::open(), MPGStreamIO::setToClosestIFrame(), and setVOPTimeIncrement().
|
|
Needed in Adaptor classes. Definition at line 172 of file ESInfo.hpp.
|
The documentation for this class was generated from the following files: