[imx8mp] How to resolve VPU_DEC_NO_ENOUGH_INBUF

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

[imx8mp] How to resolve VPU_DEC_NO_ENOUGH_INBUF

跳至解决方案
2,033 次查看
b_m
Contributor III

I am trying to decode according to the VPU reference manual.
VPU_DecDecodeBuf()'s return value is Success, however *pOutBufRetCode is set to 0x101, which means the following bit flags are set: VPU_DEC_INPUT_USED, VPU_DEC_NO_ENOUGH_INBUF.

How is this "INBUF" (Input Buffer?) set anyway in the first place? I assume this "INBUF" can be set via VPU_DecRegisterFrameBuffer(), but this API is not shown in the "Decoding Calling Sequence" of the manual.

Any hints (eg sample source) would be appreciated!

0 项奖励
回复
1 解答
1,803 次查看
b_m
Contributor III

>My question remains, why is VPU_DEC_NO_ENOUGH_INBUF set when I try to decode the output of my encode function? 
So I got this fixed.

As what I understand from the actual behavior, for VPU to decode H264 properly, input encoded file should have SPS/PPS NALu, which my encode function failed to include initially. Adding SPS/PPS NALu to the encoded file resolved my case.

To NXP, it would have been helpful to debug this problem if the return code was more meaningful than VPU_DEC_NO_ENOUGH_INBUF (Up to now, I still have no idea what this means)

在原帖中查看解决方案

6 回复数
1,804 次查看
b_m
Contributor III

>My question remains, why is VPU_DEC_NO_ENOUGH_INBUF set when I try to decode the output of my encode function? 
So I got this fixed.

As what I understand from the actual behavior, for VPU to decode H264 properly, input encoded file should have SPS/PPS NALu, which my encode function failed to include initially. Adding SPS/PPS NALu to the encoded file resolved my case.

To NXP, it would have been helpful to debug this problem if the return code was more meaningful than VPU_DEC_NO_ENOUGH_INBUF (Up to now, I still have no idea what this means)

1,971 次查看
b_m
Contributor III

Hi Rita,
I'm using yocto-real-time-edge bsp. Does this have anything to do with my original question?

A bit of a background, I want to implement a simple app that can do both encode/decode.
For the encoding part my input is a single YUV file. Based on the encoding API's return values, I think I was able to encode successfully (actual "encoded image" needs to be verified visually, though)
Now, I want to decode the above "encoded image", so basically I am trying to decode it back to the input YUV file of my encode function.

I followed the "Decoding Calling Sequence" of the manual, but it seems like I'm missing some implementations before calling VPU_DecDecodeBuf(), as the *pOutBufRetCode parameter of this function is set to 0x101: VPU_DEC_INPUT_USED, VPU_DEC_NO_ENOUGH_INBUF.

I want to know more about VPU_DEC_NO_ENOUGH_INBUF, especially on how to resolve this.

Thanks!

0 项奖励
回复
1,942 次查看
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi @b_m ,

I help create 00644508 to our Vpu engineer, she will update to you in the case.

Any questions contact us freely

Wish you have a nice day

Best Regards

Rita

0 项奖励
回复
1,921 次查看
b_m
Contributor III

Hi @Rita_Wang 

Thanks for replying!

Is "00644508" a support ticket number of sorts? If so, is there a way that I can view its content to be updated? Anyway, thanks for creating this!

I have an update regarding this post. I tried to input H264 file encoded by ffmpeg (instead of the encode function of my app), which resulted to VPU_DEC_NO_ENOUGH_INBUF not being set. Then, eventually managed to output VPU_DEC_OUTPUT_DIS being set.

My question remains, why is VPU_DEC_NO_ENOUGH_INBUF set when I try to decode the output of my encode function? The output encoded image starts with "0x00000001" so from my understanding it is an H264 file. Like could the reason be that there's something wrong with the encode function I made (high chance, as I'm a beginner), or maybe some parameters passed to decode VPU API didn't match the output of my encode function? I want to understand its possible causes, as I need both encode and decode functions to work. 

0 项奖励
回复
1,900 次查看
Rita_Wang
NXP TechSupport
NXP TechSupport

Do not worry, our engineer will update to you by email, you can receive the massage by email when update to you, by now we are confirming it for you.

0 项奖励
回复
2,010 次查看
Rita_Wang
NXP TechSupport
NXP TechSupport

Which version BSP are you using?

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-1932689%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%5Bimx8mp%5D%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3VPU_DEC_NO_ENOUGH_INBUF%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1932689%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%88%91%E6%AD%A3%E5%9C%A8%E5%B0%9D%E8%AF%95%E6%A0%B9%E6%8D%AE%20VPU%20%E5%8F%82%E8%80%83%3CA%20href%3D%22https%3A%2F%2Fwww.nxp.com%2Fdocs%2Fen%2Freference-manual%2FIMX_VPU_APPLICATION_PROGRAMMING_INTERFACE_LINUX_REFERENCE_MANUAL.pdf%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3E%E6%89%8B%E5%86%8C%E8%BF%9B%E8%A1%8C%E8%A7%A3%E7%A0%81%E3%80%82%3C%2FA%3E%3CBR%20%2F%3EVPU_DecDecodeBuf()%20%E7%9A%84%E8%BF%94%E5%9B%9E%E5%80%BC%E4%B8%BA%20Success%EF%BC%8C%E4%BD%86%E6%98%AF%20*pOutBufRetCode%20%E8%AE%BE%E7%BD%AE%E4%B8%BA%200x101%EF%BC%8C%E8%BF%99%E6%84%8F%E5%91%B3%E7%9D%80%E8%AE%BE%E7%BD%AE%E4%BA%86%E4%BB%A5%E4%B8%8B%E4%BD%8D%E6%A0%87%E5%BF%97%EF%BC%9AVPU_DEC_INPUT_USED%E3%80%81VPU_DEC_NO_ENOUGH_INBUF%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%E8%BF%99%E4%B8%AA%E2%80%9CINBUF%E2%80%9D%EF%BC%88%E8%BE%93%E5%85%A5%E7%BC%93%E5%86%B2%E5%8C%BA%EF%BC%9F%EF%BC%89%E5%88%B0%E5%BA%95%E6%98%AF%E5%A6%82%E4%BD%95%E8%AE%BE%E7%BD%AE%E7%9A%84%EF%BC%9F%E6%88%91%E5%81%87%E8%AE%BE%E8%BF%99%E4%B8%AA%E2%80%9CINBUF%E2%80%9D%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87VPU_DecRegisterFrameBuffer()%E8%AE%BE%E7%BD%AE%EF%BC%8C%E4%BD%86%E6%98%AF%E8%BF%99%E4%B8%AAAPI%E6%B2%A1%E6%9C%89%E6%98%BE%E7%A4%BA%E5%9C%A8%E6%89%8B%E5%86%8C%E7%9A%84%E2%80%9C%E8%A7%A3%E7%A0%81%E8%B0%83%E7%94%A8%E5%BA%8F%E5%88%97%E2%80%9D%E4%B8%AD%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%E4%BB%BB%E4%BD%95%E6%8F%90%E7%A4%BA%EF%BC%88%E4%BE%8B%E5%A6%82%E6%A0%B7%E6%9C%AC%E6%9D%A5%E6%BA%90%EF%BC%89%E9%83%BD%E5%B0%86%E4%B8%8D%E8%83%9C%E6%84%9F%E6%BF%80%EF%BC%81%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1941996%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9A%5Bimx8mp%5D%20%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%20VPU_DEC_NO_ENOUGH_INBUF%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1941996%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%26gt%3B%E6%88%91%E7%9A%84%E9%97%AE%E9%A2%98%E4%BB%8D%E7%84%B6%E5%AD%98%E5%9C%A8%EF%BC%8C%3CSPAN%3E%E5%BD%93%E6%88%91%E5%B0%9D%E8%AF%95%E8%A7%A3%E7%A0%81%E7%BC%96%E7%A0%81%E5%87%BD%E6%95%B0%E7%9A%84%E8%BE%93%E5%87%BA%E6%97%B6%EF%BC%8C%3C%2FSPAN%3E%3CSPAN%3E%E4%B8%BA%E4%BB%80%E4%B9%88%E8%AE%BE%E7%BD%AE%E4%BA%86%20VPU_DEC_NO_ENOUGH_INBUF%EF%BC%9F%3CBR%20%2F%3E%3C%2FSPAN%3E%E6%89%80%E4%BB%A5%E6%88%91%E8%A7%A3%E5%86%B3%E4%BA%86%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%A0%B9%E6%8D%AE%E6%88%91%E4%BB%8E%E5%AE%9E%E9%99%85%E8%A1%8C%E4%B8%BA%E4%B8%AD%E7%90%86%E8%A7%A3%E7%9A%84%E6%83%85%E5%86%B5%EF%BC%8C%E4%B8%BA%E4%BA%86%E4%BD%BF%20VPU%20%E6%AD%A3%E7%A1%AE%E8%A7%A3%E7%A0%81%20H264%EF%BC%8C%E8%BE%93%E5%85%A5%E7%BC%96%E7%A0%81%E6%96%87%E4%BB%B6%E5%BA%94%E8%AF%A5%E5%85%B7%E6%9C%89%20SPS%2FPPS%20NALu%EF%BC%8C%E8%80%8C%E6%88%91%E7%9A%84%E7%BC%96%E7%A0%81%E5%87%BD%E6%95%B0%E6%9C%80%E5%88%9D%E6%9C%AA%E8%83%BD%E5%8C%85%E5%90%AB%E5%AE%83%E3%80%82%E5%B0%86%20SPS%2FPPS%20NALu%20%E6%B7%BB%E5%8A%A0%E5%88%B0%E7%BC%96%E7%A0%81%E6%96%87%E4%BB%B6%E4%B8%AD%E8%A7%A3%E5%86%B3%E4%BA%86%E6%88%91%E7%9A%84%E9%97%AE%E9%A2%98%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%E5%AF%B9%E4%BA%8E%20NXP%20%E6%9D%A5%E8%AF%B4%EF%BC%8C%E5%A6%82%E6%9E%9C%E8%BF%94%E5%9B%9E%E4%BB%A3%E7%A0%81%E6%AF%94%3CSPAN%3EVPU_DEC_NO_ENOUGH_INBUF%20%E6%9B%B4%E6%9C%89%E6%84%8F%E4%B9%89%EF%BC%8C%E9%82%A3%E4%B9%88%E8%B0%83%E8%AF%95%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%E4%BC%9A%E5%BE%88%E6%9C%89%E5%B8%AE%E5%8A%A9%EF%BC%88%E5%88%B0%E7%9B%AE%E5%89%8D%E4%B8%BA%E6%AD%A2%EF%BC%8C%E6%88%91%E4%BB%8D%E7%84%B6%E4%B8%8D%E7%9F%A5%E9%81%93%E8%BF%99%E6%84%8F%E5%91%B3%E7%9D%80%E4%BB%80%E4%B9%88%EF%BC%89%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1937993%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9A%5Bimx8mp%5D%20%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%20VPU_DEC_NO_ENOUGH_INBUF%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1937993%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%B8%8D%E7%94%A8%E6%8B%85%E5%BF%83%EF%BC%8C%E6%88%91%E4%BB%AC%E7%9A%84%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%B0%86%E9%80%9A%E8%BF%87%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E5%90%91%E6%82%A8%E5%8F%91%E9%80%81%E6%9B%B4%E6%96%B0%EF%BC%8C%E5%BD%93%E6%9B%B4%E6%96%B0%E5%88%B0%E6%82%A8%E6%97%B6%EF%BC%8C%E6%82%A8%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E6%94%B6%E5%88%B0%E6%B6%88%E6%81%AF%EF%BC%8C%E7%8E%B0%E5%9C%A8%E6%88%91%E4%BB%AC%E6%AD%A3%E5%9C%A8%E4%B8%BA%E6%82%A8%E7%A1%AE%E8%AE%A4%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1937020%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9A%5Bimx8mp%5D%20%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%20VPU_DEC_NO_ENOUGH_INBUF%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1937020%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F57740%22%20target%3D%22_blank%22%3E%40Rita_Wang%3C%2FA%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%E8%B0%A2%E8%B0%A2%E5%9B%9E%E5%A4%8D%EF%BC%81%3CBR%20%2F%3E%3CBR%20%2F%3E%E2%80%9C%20%3CSPAN%3E00644508%E2%80%9D%20%E6%98%AF%E6%94%AF%E6%8C%81%E5%B7%A5%E5%8D%95%E5%8F%B7%E5%90%97%EF%BC%9F%E5%A6%82%E6%9E%9C%E6%98%AF%EF%BC%8C%E6%9C%89%E4%BB%80%E4%B9%88%E6%96%B9%E6%B3%95%E5%8F%AF%E4%BB%A5%E6%9F%A5%E7%9C%8B%E5%85%B6%E5%86%85%E5%AE%B9%E5%B9%B6%E8%BF%9B%E8%A1%8C%E6%9B%B4%E6%96%B0%E5%90%97%EF%BC%9F%E6%80%BB%E4%B9%8B%EF%BC%8C%E6%84%9F%E8%B0%A2%E6%82%A8%E5%88%9B%E5%BB%BA%E8%BF%99%E4%B8%AA%EF%BC%81%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FSPAN%3E%3CSPAN%3E%E5%85%B3%E4%BA%8E%E8%BF%99%E7%AF%87%E6%96%87%E7%AB%A0%EF%BC%8C%E6%88%91%E6%9C%89%E4%B8%80%E4%B8%AA%E6%9B%B4%E6%96%B0%E3%80%82%E6%88%91%E5%B0%9D%E8%AF%95%E8%BE%93%E5%85%A5%E7%94%B1%20ffmpeg%EF%BC%88%E8%80%8C%E4%B8%8D%E6%98%AF%E6%88%91%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%E7%BC%96%E7%A0%81%E5%87%BD%E6%95%B0%EF%BC%89%E7%BC%96%E7%A0%81%E7%9A%84%20H264%20%E6%96%87%E4%BB%B6%EF%BC%8C%E7%BB%93%E6%9E%9C%20VPU_DEC_NO_ENOUGH_INBUF%20%E6%9C%AA%E8%AE%BE%E7%BD%AE%E3%80%82%E7%84%B6%E5%90%8E%EF%BC%8C%E6%9C%80%E7%BB%88%E6%88%90%E5%8A%9F%3CSPAN%20class%3D%22%22%3E%E8%AE%BE%E7%BD%AE%E4%BA%86%E8%BE%93%E5%87%BA%20VPU_DEC_OUTPUT_DIS%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%E6%88%91%E7%9A%84%E9%97%AE%E9%A2%98%E6%98%AF%EF%BC%8C%E4%B8%BA%E4%BB%80%E4%B9%88%3CSPAN%3E%E5%BD%93%E6%88%91%E5%B0%9D%E8%AF%95%E8%A7%A3%E7%A0%81%E7%BC%96%E7%A0%81%E5%87%BD%E6%95%B0%E7%9A%84%E8%BE%93%E5%87%BA%E6%97%B6%E4%BC%9A%E8%AE%BE%E7%BD%AE%20VPU_DEC_NO_ENOUGH_INBUF%EF%BC%9F%E8%BE%93%E5%87%BA%E7%9A%84%E7%BC%96%E7%A0%81%E5%9B%BE%E5%83%8F%E4%BB%A5%E2%80%9C0x00000001%E2%80%9D%E5%BC%80%E5%A4%B4%EF%BC%8C%E6%89%80%E4%BB%A5%E6%8D%AE%E6%88%91%E6%89%80%E7%9F%A5%EF%BC%8C%E5%AE%83%E6%98%AF%E4%B8%80%E4%B8%AA%20H264%20%E6%96%87%E4%BB%B6%E3%80%82%E5%8F%AF%E8%83%BD%E6%98%AF%E5%9B%A0%E4%B8%BA%E6%88%91%E7%BC%96%E5%86%99%E7%9A%84%E7%BC%96%E7%A0%81%E5%87%BD%E6%95%B0%E5%87%BA%E4%BA%86%E9%97%AE%E9%A2%98%EF%BC%88%E5%8F%AF%E8%83%BD%E6%80%A7%E5%BE%88%E5%A4%A7%EF%BC%8C%E5%9B%A0%E4%B8%BA%E6%88%91%E6%98%AF%E5%88%9D%E5%AD%A6%E8%80%85%EF%BC%89%EF%BC%8C%E6%88%96%E8%80%85%E4%BC%A0%E9%80%92%E7%BB%99%E8%A7%A3%E7%A0%81%20VPU%20API%20%E7%9A%84%E6%9F%90%E4%BA%9B%E5%8F%82%E6%95%B0%E4%B8%8E%E6%88%91%E7%9A%84%E7%BC%96%E7%A0%81%E5%87%BD%E6%95%B0%E7%9A%84%E8%BE%93%E5%87%BA%E4%B8%8D%E5%8C%B9%E9%85%8D%EF%BC%9F%E6%88%91%E6%83%B3%E4%BA%86%E8%A7%A3%E5%85%B6%E5%8F%AF%E8%83%BD%E7%9A%84%E5%8E%9F%E5%9B%A0%EF%BC%8C%E5%9B%A0%E4%B8%BA%E6%88%91%E9%9C%80%E8%A6%81%E7%BC%96%E7%A0%81%E5%92%8C%E8%A7%A3%E7%A0%81%E5%87%BD%E6%95%B0%E6%89%8D%E8%83%BD%E6%AD%A3%E5%B8%B8%E5%B7%A5%E4%BD%9C%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1934597%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9A%5Bimx8mp%5D%20%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%20VPU_DEC_NO_ENOUGH_INBUF%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1934597%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%97%A8%EF%BC%8C%E4%B8%BD%E5%A1%94%EF%BC%8C%3CBR%20%2F%3E%E6%88%91%E6%AD%A3%E5%9C%A8%E4%BD%BF%E7%94%A8%20yocto-real-time-edge%20bsp%E3%80%82%E8%BF%99%E5%92%8C%E6%88%91%E6%9C%80%E5%88%9D%E7%9A%84%E9%97%AE%E9%A2%98%E6%9C%89%E5%85%B3%E7%B3%BB%E5%90%97%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%E7%A8%8D%E5%BE%AE%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8B%E8%83%8C%E6%99%AF%EF%BC%8C%E6%88%91%E6%83%B3%E5%AE%9E%E7%8E%B0%E4%B8%80%E4%B8%AA%E5%8F%AF%E4%BB%A5%E5%90%8C%E6%97%B6%E8%BF%9B%E8%A1%8C%E7%BC%96%E7%A0%81%2F%E8%A7%A3%E7%A0%81%E7%9A%84%E7%AE%80%E5%8D%95%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E3%80%82%3CBR%20%2F%3E%E5%AF%B9%E4%BA%8E%E7%BC%96%E7%A0%81%E9%83%A8%E5%88%86%EF%BC%8C%E6%88%91%E7%9A%84%E8%BE%93%E5%85%A5%E6%98%AF%E4%B8%80%E4%B8%AA%E5%8D%95%E4%B8%80%E7%9A%84%20YUV%20%E6%96%87%E4%BB%B6%E3%80%82%E6%A0%B9%E6%8D%AE%E7%BC%96%E7%A0%81%20API%20%E7%9A%84%E8%BF%94%E5%9B%9E%E5%80%BC%EF%BC%8C%E6%88%91%E8%AE%A4%E4%B8%BA%E6%88%91%E8%83%BD%E5%A4%9F%E6%88%90%E5%8A%9F%E7%BC%96%E7%A0%81%EF%BC%88%E4%BD%86%E5%AE%9E%E9%99%85%E7%9A%84%E2%80%9C%E7%BC%96%E7%A0%81%E5%9B%BE%E5%83%8F%E2%80%9D%E9%9C%80%E8%A6%81%E9%80%9A%E8%BF%87%E8%A7%86%E8%A7%89%E9%AA%8C%E8%AF%81%EF%BC%89%3CBR%20%2F%3E%E7%8E%B0%E5%9C%A8%EF%BC%8C%E6%88%91%E6%83%B3%E8%A7%A3%E7%A0%81%E4%B8%8A%E9%9D%A2%E7%9A%84%E2%80%9C%E7%BC%96%E7%A0%81%E5%9B%BE%E5%83%8F%E2%80%9D%EF%BC%8C%E6%89%80%E4%BB%A5%E5%9F%BA%E6%9C%AC%E4%B8%8A%E6%88%91%E8%AF%95%E5%9B%BE%E5%B0%86%E5%85%B6%E8%A7%A3%E7%A0%81%E5%9B%9E%E6%88%91%E7%9A%84%E7%BC%96%E7%A0%81%E5%87%BD%E6%95%B0%E7%9A%84%E8%BE%93%E5%85%A5%20YUV%20%E6%96%87%E4%BB%B6%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%88%91%E9%81%B5%E5%BE%AA%E4%BA%86%E6%89%8B%E5%86%8C%E7%9A%84%E2%80%9C%E8%A7%A3%E7%A0%81%E8%B0%83%E7%94%A8%E5%BA%8F%E5%88%97%E2%80%9D%EF%BC%8C%E4%BD%86%E4%BC%BC%E4%B9%8E%E5%9C%A8%E8%B0%83%E7%94%A8%3CSPAN%3EVPU_DecDecodeBuf()%20%E4%B9%8B%E5%89%8D%E7%BC%BA%E5%B0%91%E4%B8%80%E4%BA%9B%E5%AE%9E%E7%8E%B0%EF%BC%8C%E5%9B%A0%E4%B8%BA%E6%AD%A4%E5%87%BD%E6%95%B0%E7%9A%84%20*pOutBufRetCode%20%E5%8F%82%E6%95%B0%E8%AE%BE%E7%BD%AE%E4%B8%BA%200x101%EF%BC%9AVPU_DEC_INPUT_USED%E3%80%81VPU_DEC_NO_ENOUGH_INBUF%E3%80%82%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%88%91%E6%83%B3%E4%BA%86%E8%A7%A3%E6%9C%89%E5%85%B3%20VPU_DEC_NO_ENOUGH_INBUF%20%E7%9A%84%E6%9B%B4%E5%A4%9A%E4%BF%A1%E6%81%AF%EF%BC%8C%E5%B0%A4%E5%85%B6%E6%98%AF%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%E8%B0%A2%E8%B0%A2%EF%BC%81%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1932866%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9A%5Bimx8mp%5D%20%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%20VPU_DEC_NO_ENOUGH_INBUF%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1932866%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%82%A8%E4%BD%BF%E7%94%A8%E7%9A%84%E6%98%AF%E5%93%AA%E4%B8%AA%E7%89%88%E6%9C%AC%E7%9A%84%20BSP%EF%BC%9F%3C%2FP%3E%3C%2FLINGO-BODY%3E