赞
踩
搞 了4天,从解码jpeg文件到获取dct系数,终于搞通了,你也许会问,为啥是先解码,然后是获取dct系数呢,难道获取dct系数比解码jpeg文件还难吗?回答是当然!解码结果文件,利用libjpeg库可以很容易做出来,但是要在解码的中途中获取dct系数并保存下来却并不是那么容易。容我慢慢道来,解码jpeg码流,libjpeg编译后是有专门的函数的,直接用即可,获取dct系数同样有函数,可是直接用具就会遇到很多问题,因为存储结构体太复杂了,我这里就不多讲其结构体了,只说说我遇到的问题以及解决方法。
我遇到的最大一个问题就是,“不允许指针指向不完整的类类型”,就是这样一个错误困扰我整整一天了,直到刚刚才解决,其实我也不知道是不是libjpeg库存在那么一点点bug,或许是我的库编译有问题?最后我是重新定义了一个结构体才解决的,这个结构体就是typedef struct jvirt_barray_control * jvirt_barray_ptr;将该结构体的定义从.c文件中拿出来,放到头文件中。
如果你也遇到了上面的问题,不妨试试吧。
20150805更新:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。