MPEG4 Decoder problem
MPEG4 Decoder with other than size 176x144 if it is a Live stream:
-------------------------------------------------------------------------
Reason:
-----------
if it is more than 176x144, then there might be the chance to take much time receive the single frame.at that time it causes the error. 1.it is working fine with video file. But it is not working with MPEG4 Decoder.what may be the reason ? From RTP source Filter, if we are not having enough data, I will send data as all zeroes.So within our MPEG4 Decoder, we need to handle it as follows:
If IMediasample's GetActualDataLength() function returns 0, then we need to drop that frame.
if( pSource->GetActualDataLength() == 0)
{
return S_FALSE;//Drop the Frame in Transform() fn .
}
-------------------------------------------------------------------------
Reason:
-----------
if it is more than 176x144, then there might be the chance to take much time receive the single frame.at that time it causes the error. 1.it is working fine with video file. But it is not working with MPEG4 Decoder.what may be the reason ? From RTP source Filter, if we are not having enough data, I will send data as all zeroes.So within our MPEG4 Decoder, we need to handle it as follows:
If IMediasample's GetActualDataLength() function returns 0, then we need to drop that frame.
if( pSource->GetActualDataLength() == 0)
{
return S_FALSE;//Drop the Frame in Transform() fn .
}
Labels: Directshow, MPEG4 Decoder Filter
0 Comments:
Post a Comment
<< Home