YUV分别各占一个buffer,
Y: BYTE[400*320];
U: BYTE[400*320/4];
V: BYTE[400*320/4];

解决方案 »

  1.   

    先转成BMP,然后Draw上去。
    转BMP
    先参考:
    Y1 Cb1 Cr1    Y2 Cb1 Cr1    Y3 Cb2 Cr2    Y4 Cb2 Cr2 
    Y5 Cb1 Cr1    Y6 Cb1 Cr1    Y7 Cb2 Cr2    Y8 Cb2 Cr2 
    Y9 Cb3 Cr3    Y10 Cb3 Cr3   Y11 Cb4 Cr4   Y12 Cb4 Cr4 
    Y13 Cb3 Cr3   Y14 Cb3 Cr3   Y15 Cb4 Cr4   Y16 Cb4 Cr4 
    (注意色度是相邻的4个点共用一组)
    然后是:
    http://expert.csdn.net/Expert/topic/1243/1243200.xml?temp=.5304987
    这个帖子里面讲如何将一个象素的YUV转成RGB。
    然后直接写到缓冲区显示,就不说了吧?
      

  2.   

    光是从YUV到RGB,是不应该存在速度问题的,就是很大的图象,这样的转换也不会要什么时间。
    可能是其它的原因引起的速度问题,我也不知道了。
    块操作主要是指memcpy这些函数……,能够使用块操作的就使用块操作。
      

  3.   

    YUV到RGB你怎么转?直接用那三个公式吗?那肯定慢啦。用查表法就快多了,要想再快,用MMX啦