ScummVM API documentation
Sci::DuckPlayer Class Reference

#include <video32.h>

Inheritance diagram for Sci::DuckPlayer:
Sci::VideoPlayer

Public Types

enum  DuckStatus { kDuckClosed = 0, kDuckOpen = 1, kDuckPlaying = 2, kDuckPaused = 3 }
 
- Public Types inherited from Sci::VideoPlayer
enum  EventFlags {
  kEventFlagNone = 0, kEventFlagEnd = 1, kEventFlagEscapeKey = 2, kEventFlagMouseDown = 4,
  kEventFlagHotRectangle = 8, kEventFlagToFrame = 0x10, kEventFlagYieldToVM = 0x20, kEventFlagReverse = 0x80
}
 

Public Member Functions

 DuckPlayer (EventManager *eventMan, SegManager *segMan)
 
void open (const GuiResourceId resourceId, const int displayMode, const int16 x, const int16 y)
 
void close ()
 
void play (const int lastFrameNo)
 
void setDoFrameOut (const bool value)
 
void setVolume (const uint8 value)
 
- Public Member Functions inherited from Sci::VideoPlayer
 VideoPlayer (EventManager *eventMan, Video::VideoDecoder *decoder=nullptr)
 

Protected Member Functions

bool shouldStartHQVideo () const override
 
void renderFrame (const Graphics::Surface &nextFrame) const override
 
- Protected Member Functions inherited from Sci::VideoPlayer
bool open (const Common::Path &fileName)
 
bool startHQVideo ()
 
bool endHQVideo ()
 
virtual EventFlags playUntilEvent (const EventFlags flags, const uint32 maxSleepMs=0xFFFFFFFF)
 
virtual EventFlags checkForEvent (const EventFlags flags)
 
virtual void submitPalette (const uint8 palette[256 *3]) const
 
template<typename PixelType >
void renderLQToSurface (Graphics::Surface &out, const Graphics::Surface &nextFrame, const bool doublePixels, const bool blackLines) const
 
void setDrawRect (const int16 x, const int16 y, const int16 width, const int16 height)
 
void setSubtitlePosition () const
 

Additional Inherited Members

- Protected Attributes inherited from Sci::VideoPlayer
EventManager_eventMan
 
Common::ScopedPtr< Video::VideoDecoder_decoder
 
Common::Rect _drawRect
 
bool _needsUpdate
 
const Graphics::Surface_currentFrame
 
Video::Subtitles _subtitles
 

Detailed Description

DuckPlayer is used to play Duck TrueMotion videos. Used by Phantasmagoria 2.

Member Function Documentation

◆ open()

void Sci::DuckPlayer::open ( const GuiResourceId  resourceId,
const int  displayMode,
const int16  x,
const int16  y 
)

Opens a stream to a Duck resource.

◆ close()

void Sci::DuckPlayer::close ( )

Stops playback and closes the currently open Duck stream.

◆ play()

void Sci::DuckPlayer::play ( const int  lastFrameNo)

Begins playback of the current Duck video.

◆ setDoFrameOut()

void Sci::DuckPlayer::setDoFrameOut ( const bool  value)
inline

Sets a flag indicating that an opaque plane should be added to the graphics manager underneath the video surface during playback.

◆ setVolume()

void Sci::DuckPlayer::setVolume ( const uint8  value)
inline

Sets the volume of the decoder.

◆ shouldStartHQVideo()

bool Sci::DuckPlayer::shouldStartHQVideo ( ) const
inlineoverrideprotectedvirtual

Determines whether or not the currently loaded video meets the criteria for high-quality scaled output.

Reimplemented from Sci::VideoPlayer.

◆ renderFrame()

void Sci::DuckPlayer::renderFrame ( const Graphics::Surface nextFrame) const
overrideprotectedvirtual

Renders a video frame to the system.

Reimplemented from Sci::VideoPlayer.


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