PEGASUS: Fix frames after turning

This commit is contained in:
Matthew Hoops 2011-10-07 23:01:53 -04:00
parent e1dc4db7aa
commit 8a717d28d8
2 changed files with 13 additions and 0 deletions

View File

@ -177,6 +177,17 @@ void Movie::pause() {
TimeBase::pause();
}
TimeValue Movie::getDuration(const TimeScale scale) const {
// Unlike TimeBase::getDuration(), this returns the whole duration of the movie
// The original source has a TODO to make this behave like TimeBase::getDuration(),
// but the problem is that too much code requires this function to behave this way...
if (_video)
return _video->getDuration() * ((scale == 0) ? getScale() : scale) / 1000;
return 0;
}
void Movie::checkCallBacks() {
TimeBase::checkCallBacks();

View File

@ -64,6 +64,8 @@ public:
virtual void moveMovieBoxTo(const tCoordType, const tCoordType);
virtual TimeValue getDuration(const TimeScale = 0) const;
// *** HACK ALERT
Video::SeekableVideoDecoder *getMovie() { return _video; }
void setVolume(uint16);