The evictable video stream class, see IVideoStream. More...

#include "murl_util_evictable_video_stream.h"

Inheritance diagram for Murl::Util::EvictableVideoStream:

Public Member Functions

 EvictableVideoStream (IEnums::PixelFormat outputFormat, UInt32 pixelSizeX, UInt32 pixelSizeY, IEnums::MipMapGenerationMode mipMapGen)
 The constructor. More...
 
 ~EvictableVideoStream () override
 The destructor.
 
Bool ReleaseDecodedData () override
 Release decoded surface data. More...
 
- Public Member Functions inherited from Murl::Util::VideoStream
 VideoStream (IEnums::PixelFormat outputFormat, UInt32 pixelSizeX, UInt32 pixelSizeY, IEnums::MipMapGenerationMode mipMapGen)
 The constructor. More...
 
 ~VideoStream () override
 The destructor.
 
IVideoStreamClone () const override
 Implementation of IVideoStream::Clone(). More...
 
IVideoStreamClone (IEnums::PixelFormat pixelFormat) const override
 Implementation of IVideoStream::Clone(IEnums::PixelFormat pixelFormat). More...
 
IVideoStreamClone (IEnums::PixelFormat pixelFormat, UInt32 pixelSizeX, UInt32 pixelSizeY) const override
 Implementation of IVideoStream::Clone((IEnums::PixelFormat pixelFormat, UInt32 pixelSizeX, UInt32 pixelSizeY). More...
 
IVideoStreamClone (IEnums::PixelFormat pixelFormat, UInt32 pixelSizeX, UInt32 pixelSizeY, IEnums::MipMapGenerationMode mipMapGen) const override
 Implementation of IVideoStream::Clone(IEnums::PixelFormat pixelFormat, UInt32 pixelSizeX, UInt32 pixelSizeY, IEnums::MipMapGenerationMode mipMapGen). More...
 
UInt32 GetNumberOfFrames () const override
 Implementation of IVideoStream::GetNumberOfFrames(). More...
 
UInt32 GetFrameIndex (Double startTime) const override
 Implementation of IVideoStream::GetFrameIndex(). More...
 
Double GetStartTime (UInt32 frameIndex) const override
 Implementation of IVideoStream::GetStartTime(). More...
 
Double GetFrameRate () const override
 Implementation of IVideoStream::GetFrameRate(). More...
 
Double GetFrameDuration () const override
 Implementation of IVideoStream::GetFrameDuration(). More...
 
Double GetTotalDuration () const override
 Implementation of IVideoStream::GetTotalDuration(). More...
 
UInt32 GetNumberOfMipLevels () const override
 Implementation of IVideoStream::GetNumberOfMipLevels(). More...
 
UInt32 GetNumberOfPlanes () const override
 Implementation of IVideoStream::GetNumberOfPlanes(). More...
 
IEnums::PixelFormat GetPixelFormat () const override
 Implementation of IVideoStream::GetPixelFormat(). More...
 
UInt32 GetBytesPerPixel () const override
 Implementation of IVideoStream::GetBytesPerPixel(). More...
 
UInt32 GetPixelSizeX (UInt32 mipLevel) const override
 Implementation of IVideoStream::GetPixelSizeX(UInt32 mipLevel). More...
 
UInt32 GetPixelSizeY (UInt32 mipLevel) const override
 Implementation of IVideoStream::GetPixelSizeY(UInt32 mipLevel). More...
 
UInt32 GetBytesPerLine (UInt32 mipLevel) const override
 Implementation of IVideoStream::GetBytesPerLine(UInt32 mipLevel). More...
 
UInt32 GetNumberOfBytes (UInt32 mipLevel) const override
 Implementation of IVideoStream::GetNumberOfBytes(UInt32 mipLevel). More...
 
IEnums::PixelFormat GetPixelFormat (UInt32 planeIndex) const override
 Implementation of IVideoStream::GetPixelFormat(UInt32 planeIndex). More...
 
UInt32 GetBytesPerPixel (UInt32 planeIndex) const override
 Implementation of IVideoStream::GetBytesPerPixel(UInt32 planeIndex). More...
 
UInt32 GetPixelSizeX (UInt32 mipLevel, UInt32 planeIndex) const override
 Implementation of IVideoStream::GetPixelSizeX(UInt32 mipLevel, UInt32 planeIndex). More...
 
UInt32 GetPixelSizeY (UInt32 mipLevel, UInt32 planeIndex) const override
 Implementation of IVideoStream::GetPixelSizeY(UInt32 mipLevel, UInt32 planeIndex). More...
 
UInt32 GetBytesPerLine (UInt32 mipLevel, UInt32 planeIndex) const override
 Implementation of IVideoStream::GetBytesPerLine(UInt32 mipLevel, UInt32 planeIndex). More...
 
UInt32 GetNumberOfBytes (UInt32 mipLevel, UInt32 planeIndex) const override
 Implementation of IVideoStream::GetNumberOfBytes(UInt32 mipLevel, UInt32 planeIndex). More...
 
Bool IsReadyForDecoding () const override
 Implementation of IVideoStream::IsReadyForDecoding(). More...
 
Bool StartDecoding () override
 Implementation of IVideoStream::StartDecoding(). More...
 
Bool EndDecoding () override
 Implementation of IVideoStream::EndDecoding(). More...
 
UInt32 Decode (UInt32 mipLevel, UInt32 planeIndex, Data &dstBuffer, IEnums::PixelFormat dstFormat, UInt32 firstFrame, UInt32 numFrames) override
 Implementation of IVideoStream::Decode(). More...
 
Bool SetCurrentMode (IEnums::StreamMode mode) override
 Implementation of IVideoStream::SetCurrentMode(). More...
 
const IEnums::StreamMode GetCurrentMode () const override
 Implementation of IVideoStream::GetCurrentMode(). More...
 
Bool SetCurrentTimeOffset (Double timeOffset) override
 Implementation of IVideoStream::SetCurrentTimeOffset(). More...
 
Double GetCurrentTimeOffset () const override
 Implementation of IVideoStream::GetCurrentTimeOffset(). More...
 
Bool PrepareDecodedData () override
 Implementation of IVideoStream::PrepareDecodedData(). More...
 
Bool FinishDecodedData () override
 Implementation of IVideoStream::FinishDecodedData(). More...
 
Bool ReleaseDecodedData () override
 Implementation of IVideoStream::ReleaseDecodedData(). More...
 
Double GetDecodedTimeOffset () const override
 Implementation of IVideoStream::GetDecodedTimeOffset(). More...
 
UInt64 GetDecodedFrameIndex () const override
 Implementation of IVideoStream::GetDecodedFrameIndex(). More...
 
const ConstDataGetDecodedData (UInt32 mipLevel, UInt32 planeIndex) override
 Implementation of IVideoStream::GetDecodedData(). More...
 
const IVideoSurfaceGetDecodedSurface (UInt32 mipLevel, UInt32 planeIndex) override
 Implementation of IVideoStream::GetDecodedSurface(). More...
 
const MutableDataLockDecodedData (UInt32 mipLevel, UInt32 planeIndex) override
 Implementation of IVideoStream::LockDecodedData(). More...
 
IVideoSurfaceLockDecodedSurface (UInt32 mipLevel, UInt32 planeIndex) override
 Implementation of IVideoStream::LockDecodedSurface(). More...
 
Bool UnlockDecodedData (UInt32 mipLevel, UInt32 planeIndex) override
 Implementation of IVideoStream::UnlockDecodedData(). More...
 
Bool UnlockDecodedSurface (UInt32 mipLevel, UInt32 planeIndex) override
 Implementation of IVideoStream::UnlockDecodedSurface(). More...
 
virtual Bool SetSurface (UInt32 mipLevel, UInt32 planeIndex, IVideoSurface *surface, Bool takeOwnership)
 Set the surface. More...
 
void CollectObjectStatistics (IObjectStatistics *stat) const override
 Implementation of IStatisticsObject::CollectObjectStatistics(). More...
 
- Public Member Functions inherited from Murl::IVideoStream
 ~IVideoStream () override
 The destructor.
 

Protected Member Functions

Bool AcquireMipLevelSurface (UInt32 mipLevel) override
 Create or restore surface data for a specified mip level. More...
 

Detailed Description

The evictable video stream class, see IVideoStream.

Constructor & Destructor Documentation

◆ EvictableVideoStream()

Murl::Util::EvictableVideoStream::EvictableVideoStream ( IEnums::PixelFormat  outputFormat,
UInt32  pixelSizeX,
UInt32  pixelSizeY,
IEnums::MipMapGenerationMode  mipMapGen 
)

The constructor.

Creates a video stream with spcified pixel format and dimension.

Parameters
outputFormatThe pixel format of the new video object.
pixelSizeXThe number of horizontal pixels.
pixelSizeYThe number of vertical pixels.
mipMapGenSpecifies if and how mip maps are generated.

Member Function Documentation

◆ ReleaseDecodedData()

Bool Murl::Util::EvictableVideoStream::ReleaseDecodedData ( )
overridevirtual

Release decoded surface data.

Calls IVideoSurface::Evict() on all mip-level surfaces.

Returns
true if successful.

Implements Murl::IVideoStream.

◆ AcquireMipLevelSurface()

Bool Murl::Util::EvictableVideoStream::AcquireMipLevelSurface ( UInt32  mipLevel)
overrideprotectedvirtual

Create or restore surface data for a specified mip level.

Calls IVideoSurface::Restore() if the surface exists, otherwise a new surface is created.

Parameters
mipLevelThe mip level in the range [0 .. GetNumberOfMipLevels() - 1].
Returns
true if successful.

Reimplemented from Murl::Util::VideoStream.


The documentation for this class was generated from the following file:
  • murl_util_evictable_video_stream.h


Copyright © 2011-2024 Spraylight GmbH.