ErrVal ReadYuvFile::readFrame( UChar *pLum, UChar *pCb, UChar *pCr, UInt uiBufHeight, UInt uiBufWidth, UInt uiBufStride) { //printf("Llegirem els tres plans de l'arxiu %s\n",m_cFileName); ROT( uiBufHeight < m_uiLumPicHeight || uiBufWidth < m_uiLumPicWidth ); UInt uiPicHeight = m_uiLumPicHeight; UInt uiPicWidth = m_uiLumPicWidth; UInt uiClearSize = uiBufWidth - uiPicWidth; UInt uiStartLine = m_uiStartLine; UInt uiEndLine = m_uiEndLine; RNOKS( xReadPlane( pLum, uiBufHeight, uiBufWidth, uiBufStride, uiPicHeight, uiPicWidth, uiStartLine, uiEndLine ) ); uiPicHeight >>= 1; uiPicWidth >>= 1; uiClearSize >>= 1; uiBufHeight >>= 1; uiBufWidth >>= 1; uiBufStride >>= 1; uiStartLine >>= 1; uiEndLine >>= 1; RNOKS( xReadPlane( pCb, uiBufHeight, uiBufWidth, uiBufStride, uiPicHeight, uiPicWidth, uiStartLine, uiEndLine ) ); RNOKS( xReadPlane( pCr, uiBufHeight, uiBufWidth, uiBufStride, uiPicHeight, uiPicWidth, uiStartLine, uiEndLine ) ); return Err::m_nOK; }
ErrVal ReadYuvFile::readFrame( UChar *pLum, UChar *pCb, UChar *pCr, UInt uiBufHeight, UInt uiBufWidth, UInt uiBufStride) { ROT( uiBufHeight < m_uiLumPicHeight || uiBufWidth < m_uiLumPicWidth ); UInt uiPicHeight = m_uiLumPicHeight; UInt uiPicWidth = m_uiLumPicWidth; UInt uiClearSize = uiBufWidth - uiPicWidth; UInt uiStartLine = m_uiStartLine; UInt uiEndLine = m_uiEndLine; RNOKS( xReadPlane( pLum, uiBufHeight, uiBufWidth, uiBufStride, uiPicHeight, uiPicWidth, uiStartLine, uiEndLine ) ); uiPicHeight >>= 1; uiPicWidth >>= 1; uiClearSize >>= 1; uiBufHeight >>= 1; uiBufWidth >>= 1; uiBufStride >>= 1; uiStartLine >>= 1; uiEndLine >>= 1; RNOKS( xReadPlane( pCb, uiBufHeight, uiBufWidth, uiBufStride, uiPicHeight, uiPicWidth, uiStartLine, uiEndLine ) ); RNOKS( xReadPlane( pCr, uiBufHeight, uiBufWidth, uiBufStride, uiPicHeight, uiPicWidth, uiStartLine, uiEndLine ) ); return Err::m_nOK; }