到目的为止,还没有理清YCbCr 到jpeg文件的详细内存数据排列结构。只知道步骤:yuv图片数据补数生成被8整除的帧数据,分割成若干8*8的block块,对每个块经过Y,U,V三次余弦变换,量化,Z型变形,霍夫曼编码生成jpeg 数据文件,解码则是上面的逆方向。但上面的yuv三个处理后的数据是怎样排列的不清楚。
现在的思路是,一步步同时对信号编码,再对编码的数据解码还原验证能否显示。如对原始yuv数据补0后生成被8整除的新帧,再对新帧解码还原看能否显示图片,这样一步步的编码,解码验证,直到生成jpeg文件。虽然不一定是jpeg的标准,甚至最后标准看图软件也打不开此新图片,但我们已有生成此文件的编码解码程序。可以理解为此自编的编解码程序是此生成图片的专有加密解密程序。
到后期彻底搞清了标准的数据结构,只要小改排列一下数据顺序,就可生成标准的jpeg文件。
因为此程序非常长,复杂。所以每一个环节用一个子文件函数(main文件外)来表示。main主文件通过自编头文件TY.h调用许多功能文件函数。有点似linux的头文件,库函数的感觉。