diff --git a/app/ModulesHandle.cpp b/app/ModulesHandle.cpp index 86dbf2b..4e19ce7 100644 --- a/app/ModulesHandle.cpp +++ b/app/ModulesHandle.cpp @@ -282,7 +282,7 @@ Void ModulesHandle::enableModuleIf( PlaYUVerAppModuleIf *pcCurrModuleIf ) } else { - windowName.append( pcVideoSubWindow->windowTitle() ); + windowName.append( pcVideoSubWindow->getWindowName() ); videoSubWindowList.append( pcVideoSubWindow ); } diff --git a/app/VideoSubWindow.cpp b/app/VideoSubWindow.cpp index 5c0f72d..3e27fa2 100644 --- a/app/VideoSubWindow.cpp +++ b/app/VideoSubWindow.cpp @@ -518,7 +518,7 @@ Void VideoSubWindow::seekRelativeEvent( Bool bIsFoward ) { if( m_pCurrStream ) { - if( m_pCurrStream->seekInput( m_pCurrStream->getCurrFrameNum() + ( bIsFoward ? 1 : -1 ) ) ) + if( m_pCurrStream->seekInputRelative( bIsFoward ) ) { refreshFrame(); } diff --git a/lib/PlaYUVerStream.cpp b/lib/PlaYUVerStream.cpp index b30012b..eb212e6 100644 --- a/lib/PlaYUVerStream.cpp +++ b/lib/PlaYUVerStream.cpp @@ -692,6 +692,25 @@ PlaYUVerFrame* PlaYUVerStream::getNextFrame() return m_pcNextFrame; } +Bool PlaYUVerStream::seekInputRelative( Bool bIsFoward ) +{ + if( !m_bInit || !m_bIsInput ) + return false; + + Bool bRet = false; + if( bIsFoward ) + { + readFrame(); + bRet = !setNextFrame(); + } + else + { + UInt64 newFrameNum = m_iCurrFrameNum - 1; + bRet = seekInput( newFrameNum ); + } + return bRet; +} + Bool PlaYUVerStream::seekInput( UInt64 new_frame_num ) { if( !m_bInit || new_frame_num < 0 || new_frame_num >= m_uiTotalFrameNum || ( Int64 )new_frame_num == m_iCurrFrameNum ) diff --git a/lib/PlaYUVerStream.h b/lib/PlaYUVerStream.h index 57906fc..a9429ab 100644 --- a/lib/PlaYUVerStream.h +++ b/lib/PlaYUVerStream.h @@ -77,7 +77,6 @@ private: std::string m_cCodedName; std::string m_cPelFmtName; - FILE* m_pFile; /**< The input file pointer >*/ std::fstream m_fsIOStream; /**< The input file pointer >*/ @@ -146,6 +145,7 @@ public: PlaYUVerFrame* getCurrFrame( PlaYUVerFrame * ); PlaYUVerFrame* getNextFrame(); + Bool seekInputRelative( Bool bIsFoward ); Bool seekInput( UInt64 new_frame_num ); Bool isInit()