找回密码
 注册
搜索
查看: 1290|回复: 4

[讨论] 关于JPEG文件的解析问题

[复制链接]
发表于 2006-5-11 16:48:00 | 显示全部楼层 |阅读模式
经常会碰到一些jpeg文件,其中会包含多个FFC0标志字段。导致如果只去判断第一个FFC0的话,会得到错误的信息(如宽、高)。但是如果需要判断多个FFC0的话,需要把整个文件都解析一遍。一旦遇到比较大的文件的话,会比较花时间。
还请各位朋友多多帮忙,提供一些相关信息,如何去避免这个问题。
谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2006-5-12 09:12:00 | 显示全部楼层
<P>这个问题我也遇到过,当时忽略了,现在有人摆出来了,就一定要解决。</P><P>个人觉得如果是多帧的话,文件头是不会提供多帧的信息的,等到你读到第二个SOI(0xFFD8),你才知道是一个多帧图像,每帧的SOF(0xFFC0)与实际大小不符。这个问题我还在想,如何把它正确显示在屏幕上,过两天再来跟贴。</P>
点评回复

使用道具 举报

发表于 2006-5-22 09:09:00 | 显示全部楼层

能否把出错的一些jpeg传给我呢?

我也刚写了个jpeg解码器,却没碰到你说的问题,
reis@actions-semi.com,谢谢!
点评回复

使用道具 举报

发表于 2006-5-22 19:22:00 | 显示全部楼层

多帧JPEG就是传说中Progressive JPEG模式!

大家都知道JPEG有四种模式sequential DCT-based, progressive DCT-based, lossless, and hierarchical.第一种就是大家熟悉的baseline模式,我想任何JPEG解码器都应该支持的。后三种模式由于涉及到一些公司的专利,应用的就不多了。
其中JPEG的 progressive DCT-based模式的huffman编码可能是有算术编码,要比baseline复杂。形象的说,这种模式就是渐进模式,类似于Photoshop中的多层结构(其实大部分的渐进JPEG图片都是photoshop生成的),有人又说它像GIF中的透明色。总之,这种模式体现在文件组织上就是多帧(多个SOI)。我写的那破软件当然不可能支持,可是我们用的多媒体处理器(硬件JPEG解码)却解得开。
以前看到搏动提供的JPEG程序包,几十个源文件,我还暗自发笑我写的居然用两个源文件搞定。现在想想确实笑得太早了。时下提供多媒体功能的芯片一般都支持JPEG硬件解码,软件解码看来只能用在强大的通用处理器上了。
一张典型的Progressive JPEG,从注释信息看是确实是photoshop做出来。
【文件名】:06522@52RD_172_213809.rar
【格 式】:rar
【大 小】:30K
【简 介】:
【目 录】:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
点评回复

使用道具 举报

发表于 2006-5-24 00:08:00 | 显示全部楼层
牛啊 小弟跟学
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-15 01:35 , Processed in 0.060037 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表