Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
6731 Discussions

MPEG4 decoder IPP 5.2 beta - color conversion problem?

phoenixpl
Beginner
213 Views

Hello,

I'm trying to use IPP 5.2 beta with MPEG4. It seams to be working a lot faster in terms of encoding then IPP 5.1 but I need to conduct forther tests to confirm that. Currently I have a problem with decoding images. Decoder is initalized correctly, but when I display images on the screen it seams to have a problem with colors (attached screenshot and decoder code). Is is possible at all to decode strait to UMC::YUY2? I have testes the same solution under IPP 5.1 and it worked so ether I'm missing something or YUY2 is not supported in beta. Please, help me with this one.

#define XDIM 720
#define YDIM 576

Decoder constructor:
m_dataOut = new UMC::VideoData;
m_dataIn = new UMC::MediaData;

m_dataOut->Init( XDIM, YDIM, UMC::YUY2, 16);

video_info.color_format = UMC::YUY2;
video_info.clip_info.width = XDIM;
video_info.clip_info.height = YDIM;

m_mpeg4_Param.info = video_info;
m_mpeg4_Param.lFlags = 0;
m_mpeg4_Param.uiLimitThreads = 1;

UMC::Status status = m_mpeg4_dec.Init( &m_mpeg4_Param );

Decode method:
DWORD EvaDecode::DecodeFrame( SEvaDataFile &_dataFile, BYTE *_buffer )
{
// MPEG4 decode
BYTE *pY = _buffer;

m_dataIn->SetBufferPointer( _dataFile.data, _dataFile.dataSize );
m_dataIn->SetDataSize( _dataFile.dataSize );

m_dataOut->SetPlanePointer( pY, 0 );
m_dataOut->SetPlanePointer( NULL, 1 );
m_dataOut->SetPlanePointer( NULL, 2 );
m_dataOut->SetPlanePitch( XDIM*2, 0 );
m_dataOut->SetPlanePitch( 0, 1 );
m_dataOut->SetPlanePitch( 0, 2 );

int mRetval = m_mpeg4_dec.GetFrame( m_dataIn, m_dataOut );

return 0;
}

0 Kudos
0 Replies
Reply