#include <VideoAccessStrategy.h>
Inheritance diagram for Impala::Core::Stream::Lavc::VideoAccessStrategy:


Public Member Functions | |
| VideoAccessStrategy (const Lavc::VideoAccessObject *const vao) | |
| virtual | ~VideoAccessStrategy () |
| bool | Scan () |
| Scans the video for meta-data like bad frames and frame accuracy. | |
| const VideoAccessObject *const | VideoAccessObj () const |
| virtual bool | ResetVideoSrc () const |
| bool | VideoIsValid () const |
| virtual int | NrOfFrames () const |
| int | LeadingBadFrames () const |
| bool | FrameIsValid (int frameNr) const |
| char | FrameType () const |
| UInt8 * | RgbDataPtr () const |
| VideoIndex * | ConstructIndex () |
| Caller assumes responsibility for the returned object. | |
| virtual void | CleanUp () |
| virtual int | DecodeNextFrame (bool *isValidFrame, bool *isKeyFrame, PacketTrace *pktTrace) const |
| Reads packets until a video frame can be decoded from such packet. | |
| int | CurrentFrameToRgb () const |
| String | FrameHash (int frameNr) const |
| bool | JumpToFramePosition (const UInt64 &target) const |
| bool | FrameIsStable (int frameNr) const |
| virtual bool | FrameCanBeRead (int frameNr) const =0 |
Static Public Attributes | |
| static const int | HASH_SIZE = 32 |
| static const String | INVALID_FRAME_HASH |
| static const String | UNSTABLE_FRAME_HASH |
Protected Types | |
| typedef Table::TableTem< Column::ColumnTem< Int32 >, Column::ColumnTem< Int32 >, Column::ColumnTem< Int32 >, Column::ColumnTem< UInt64 > > | PacketTable |
| typedef Column::FixedStringColumn::ColElemType | FixedString |
| typedef Table::TableTem< Column::ColumnTem< Int32 >, Column::ColumnTem< Int32 >, Column::ColumnTem< Int32 >, Column::ColumnTem< Int32 >, Column::FixedStringColumn > | FrameTable |
Protected Member Functions | |
| virtual int | GetJumpFlags () const=0 |
| virtual bool | ScanProtected ()=0 |
| virtual VideoIndex * | ConstructIndexProtected () const=0 |
| virtual bool | Jump (const UInt64 &target, int flags, bool mustBeKey=false, int flush=0, PacketTrace *trace=0) const |
| Jumps to the specified target and attempts reading the first next (valid) frame; if requested, reading frames will continue until the first next (valid) *key* frame; 'target' is defined by 'flags', which consists of libavformat flags AVSEEK_FLAG_BACKWARD, AVSEEK_FLAG_BYTE and AVSEEK_FLAG_ANY ( see ffmpeg/avformat.h ). | |
| virtual bool | DecodeNextValidFrame (bool lookForKeyFrame, PacketTrace *pktTrace=0) const |
| void | ProcessFrame (bool isValid, bool isKey, int frameNr, bool validating=false) |
| bool | FrameIsKey (int frameNr) const |
| bool | CurrentFrameMatchesFrame (int frameNr, const PacketTrace *trace=0) const |
| bool | CurrentHashMatchesFrame (int frameNr) const |
| virtual bool | NextFrameMatchesFrame (int frameNr, const VideoIndex &videoIndex) const =0 |
| bool | ScanDataPresent () |
| virtual void | MarkFrameUnstable (int frameNr) |
| void | WriteScanData (CString fileName) |
| void | ReadScanData (CString fileName) |
| void | SetNrOfFrames (int count) |
Protected Attributes | |
| const VideoAccessObject *const | mVao |
| PacketTable * | mPackets |
| FrameTable * | mFrames |
| int | mBadFrameCount |
| int | mLeadingBadFrameCount |
| bool | mScanDataPresent |
Private Member Functions | |
| void | AddFrameToTable (bool isValid, bool isKey, CString hash, const FixedString &hashAsFixedStr) |
| VideoIndex * | ConstructIndexPrivate () |
| bool | IndexValid (const VideoIndex &idx) const |
| bool | IndexValidTraversingBackwards (const VideoIndex &idx) const |
| bool | IndexValidTraversingForwards (const VideoIndex &idx) const |
| bool | JumpValidForFrame (int frameNr, const VideoIndex &videoIndex) const |
| Attempt a jump to the specified frame using the specified index, and evaluate whether the jump was successfull (i.e. | |
| bool | PacketTraceMatchesFrame (const PacketTrace &trace, int frameNr) const |
| Checks the packet table to see whether the specified trace matches the packet context for the specified frame. | |
Private Attributes | |
| bool | mVideoIsValid |
| int | mNrOfFrames |
| int | mFailingKeyFrameNr |
| ILOG_VAR_DECL | |
Definition at line 25 of file VideoAccessStrategy.h.
1.5.1