Community
cancel
Showing results for 
Search instead for 
Did you mean: 
zheng_s_
Beginner
81 Views

how to control the DecodeFrameAsync always get one frame out when feed one frame in?

I set AsyncDepth = 1 but when start feed the Decode it may return NEED_MORE_DATA, it quite common at the beginning of several frames.  Is there any possible to always force DecodeFraneAsync to output a frame when a frame is fed in? I want 10 frame feed in then 10 frame out, each time i call DecodeFrameAsync i pass one frame in and get one frame out. thx

 

 

0 Kudos
2 Replies
zheng_s_
Beginner
81 Views

and finally I want a more generic way to control  Decode/VPP/Encode in sync way.

I need  a transcode function which include   decode/vpp/encode three feature.  this function does following work:   get a H264 frame and decode it as raw data, call VPP to change it size(resolution), call encode function to create new h264 frame.  what I expected of this function is, when I pass a h264 frame in, I always a frame out, which mean the whole function is sync.. at moment, I saw  the Intel sdk function only offer the async way, and when you feed a frame, the decodeFrameAsync may return NEED_MORE_DATA, you need keep feed frame to decodeFrameAsync to get something out . same thing happens for the EncodeFrameAsync function which not guarantee a raw data feed in will get a  h264 frame out in the same step

Here is my transcode function looks like;

FrameOut   TranscodeFunction( frame_in * )

{

         raw_frame = decodeFrameAsync (frame_in);

         resized_frame = vppFrameAsync(raw_frame);

         out_frame = encodeFrameAsync(resized_frame);

        return out_frame

}

Basically, One frame in, one frame out,  Can Intel SDK support  this way?

zheng_s_
Beginner
81 Views

if no B-Frame, what I  need do to let decodeFrameAsync (),   vppFrameAsync(),   encodeFrameAsync(). three function to support sync operation?  Can you give more details?

Reply