在wince6中用硬解码替换IIMAGING中的解码器

发布者:kappa20最新更新时间:2024-10-15 来源: cnblogs关键字:wince6  硬解码  解码器 手机看文章 扫描二维码
随时随地手机看文章

 一直想用6410的jpg解码器替换wince的解码器,这几天终于有时间,弄了一下。过程不是太复杂,大致如下:

1.从wince自带的decoder例子开始,主要是修改renderImage部分。

2.注册表的配置,因为wince的例子没有注册表配置,所以这部分花了不少时间。

 

 [HKEY_LOCAL_MACHINESOFTWAREMicrosoftimagingcodecs]
  '_LastCookie'=dword:00000001

 [HKEY_LOCAL_MACHINESoftwareMicrosoftImagingCodecss3c6410 jpeg Decoder]
 'MIME Type'='image/jpeg'
 'Filename Extension'='*.jpg'
 'File Type Description'='JPEG file'
 'DLLNAME'='imgcodec'
 'Signature Mask'=hex:
  ff,ff ;SigMask
 'Signature Pattern'=hex:
  ff,d8 ;SigPattern
 'Signature Size'=dword:2
 'Signature Count'=dword:1
 'Format ID'= hex:
        00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
;        AE,3C,6B,B9,28,07,D3,11,9D,7B,00,00,F8,1E,F3,2E
    ;'{b96b3cae-0728-11d3-9d7b-0000f81ef32e}' ;ImageFormatJPEG
 'CLSID'= hex:
        FA,80,A2,80,A3,C2,0c,4E,98,BF,67,32,9B,22,FD,BF
    ;'{80A280FA-C2A3-4e0c-98BF-67329B22FDBF}' ;CLSID_JPEGDecoder
 'Flags'=dword:00020022
 'Version'=dword:1
 '_InfoSize'=dword:d0
  

微软的文档上没有提到_LastCookie,一开始没设置_LastCookie,结果总是用系统的解码器。

3.在测试时发再现,解了几十幅图后,就出错了。经过一下午的郁闷,终于找到原因:

在jpeg驱动中,VirtualAllocCopyEx与VirtualFreeEx的用法出现问题。

开始是VirtualFreeEx(JPGRegCtx->callerProcess,    // HANDLE hProcess
                                  JPGRegCtx->strUserBuf,

                                  JPG_STREAM_BUF_SIZE,
                                  MEM_DECOMMIT);

好象并没有真正释放虚拟内存,最后导制VirtualAllocCopyEx出错.

改成VirtualFreeEx(JPGRegCtx->callerProcess,    // HANDLE hProcess
                                  (UINT32)JPGRegCtx->strUserBuf& ~VM_BLOCK_OFST_MASK,
                                  0,
                                  MEM_RELEASE);

后问题解决了。

 


关键字:wince6  硬解码  解码器 引用地址:在wince6中用硬解码替换IIMAGING中的解码器

上一篇:linux-2.6.38到tiny6410的移植手册(连载4)__USB设备(U盘,摄像头,wifi)
下一篇:c, cs, vala 性能简单测试

推荐阅读最新更新时间:2024-11-09 23:47

如何将声控麦克风与低功耗处理器或编解码器结合使用
  Amazon Alexa、Apple Siri 和 Google Home 等语音控制界面依靠始终在线的语音捕获功能来检测用于启动复杂语音处理算法的唤醒词或短语,这些算法通常需要基于云的资源。然而,随着基于语音的控制转移到电池供电的设备并增加了其他消费设备(如电视)的待机功率预算,这种始终开启的功能代表了显着的功耗,并增加了设计挑战。然而,使用一些低功耗设备,开发人员可以更轻松地实现语音控制接口,而不会影响功率预算。   本文介绍了开发人员如何将声控微机电系统 (MEMS) 麦克风与低功耗处理器或编解码器结合使用,以创建超低功耗、始终在线的声控设计。以举例的方式,介绍和描述Vesper Technologies的VM101
[嵌入式]
如何将声控麦克风与低功耗处理器或编<font color='red'>解码器</font>结合使用
AVR 32位微控制器实现真正的单芯片DRM数字音频编解码器
  随着近几年数字音频产品的爆炸性增长,市场上出现了很多芯片或者芯片组来满足更高级的播放器要求。但是有些进入数字音频市场的产品也存在一些陷阱,事情并不是像选取适当的处理器硬件那样简单。   在近几年,一直是单独的音频和多媒体播放器在占据市场的主体,但是一些消费者也在试图把他们的便携式媒体播放器与其家庭或者汽车立体声音响设备连接在一起,这也促使一些在家庭或者汽车立体声音响设备市场的厂商把他们的高保真(HiFi)系统用于数字音频时代。   采用计算机硬件   一些厂商已经试图在音频和多媒体播放器中采用计算机硬件,这些硬件虽然在处理计算机多任务的庞大数据面前表现非常优秀,但是却给音频设计师带来了很大挑战,主要表现在相对较慢的速度
[单片机]
无线应用中典型视频编解码器方案功能分析
无线应用的视频编解码器具有一些不同的功能要求,其视频编解码过程通常包括视频预处理、实际的视频编码与解码以及视频后处理三个阶段,所支持的视频标准、算法和视频结构都具有一些特殊性。本文以OMAP5910为例介绍了无线应用中的视频编码与解码功能,并图解分析了编解码器的结构组成。 无线应用中的视频编解码器需要符合第三代伙伴项目(3GPP)组织规定的多媒体电话低码率编解码器的标准,包括3G TS26.110、3G TS26.111以及3G TR26.911。本文以TI OMAP5910为例分析无线视频编解码器(编码器与解码器)的功能要求,包括为转换到编码器识别的输入格式而对采集数据的预处理,以及为转换到LCD显示屏要求格式的数据后处理。
[嵌入式]
数字语音解码器的低功耗设计方案
近年来,随着个人手持多媒体设备的快速增长, 低功耗设计 变得越来越重要,甚至成为决定产品是否成功的关键,如笔记本电脑、PDA、移动电话等时尚消费和商务类电子产品,对电池的供电时间要求越来越高,高功耗成为延长电池使用时间突出的制约因素。 CMOS数字电路的功耗主要由3部分组成:跳变功耗、短路功耗和静态漏电功耗。其中占系统功耗比例大于90%的为跳变功耗,也称动态功耗。对于SoC而言,所有的设计方法都是围绕着动态功耗来进行。如何从各个层次、各个方面尽量减少动态功耗,将是语音解码设计中的重点内容。 1 语音 解码器 的低功耗设计策略 SoC低功耗的设计应该从顶层到底层各个阶段进行优化设计的工作,主要运用各级的低功耗策略,通常在系统级、算法
[嵌入式]
wince6中用解码替换IIMAGING中的解码器
一直想用6410的jpg解码器替换wince的解码器,这几天终于有时间,弄了一下。过程不是太复杂,大致如下: 1.从wince自带的decoder例子开始,主要是修改renderImage部分。 2.注册表的配置,因为wince的例子没有注册表配置,所以这部分花了不少时间。 _LastCookie =dword:00000001 MIME Type = image/jpeg Filename Extension = *.jpg File Type Description = JPEG file DLLNAME = imgcodec Signature Mask =hex: ff,ff ;SigMask
[单片机]
Chips&Media,Inc.加入开放媒体联盟
首尔,韩国,2016年10月21日 - Chips&Media,Inc.,领先的视频编解码器IP提供商,今天宣布它已加入开放媒体联盟。开放媒体联盟是一个非盈利组织,致力于定义和开发媒体技术,以满足视频压缩和网络传输的开放标准的需求。 作为联盟的成员,Chips&Media将与行业领导者合作,寻求开放和免版税的AOMedia视频编解码器AV1。在过去十年中,Chips&Media基于先进的技术专长和作为视频IP行业领导者的全球经验,一直为SoC制造商提供一流的视频解决方案。Chips&Media的市场份额和商务策略将大大有助于新视频标准AV1的扩展。该联盟已将其AV1编解码器源代码作为开源项目公开提供,该小组欢迎更广泛的开发人员社
[嵌入式]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved