- 博客(116)
- 资源 (2)
- 收藏
- 关注
原创 WAV格式封装PCM
最近要对IPTV的框架进行重新整合,中间有一段需要对PCM进行包装成WAV文件,看了一下WAV的封装说明,把要点记录下来,希望对其他人有帮助:WAV格式主要有以下框架unsigned char ucWAVHeader[] ={ // RIFF WAVE Chunk 0x52, 0x49, 0x46, 0x46, // "RIFF" 0x30, 0x00,
2010-03-10 14:55:00
2901
2
原创 图像放缩算法
最近要对图像进行放缩研究,网上有不少的例子,但是都不是很全面,亲自写了一个,直接上代码 这个图像放缩主要是针对YUV 4:2:0进行的, 图像的大小也是整16的倍数,自己压缩的流。 现在基本图像放缩算法主要有三种: 1:最近邻域法,就是取坐标反向变换后最接近的点。 优点:速度快 缺点:画质不好 2:双线性差值,利用坐标反向面换后坐标的周围点,然后根据距离关
2010-03-09 15:24:00
2552
2
转载 AMR nb and wb
全称Adaptive Multi-Rate,自适应多速率编码,主要用于移动设备的音频,压缩比比较大,但相对其他的压缩格式质量比较差,由于多用于人声,通话,效果还是很不错的。一、分类1. AMR: 又称为AMR-NB,相对于下面的WB而言,语音带宽范围:300-3400Hz,8KHz抽样2. AMR-WB:AMR WideBand, 语音带宽范围: 50-700
2010-02-04 16:26:00
22646
转载 MTK 软件工程的配置 了解
MTK 软件工程的配置说明 请下载我的资源《MTK软件工程和配置简介.doc》本文详解MTK的编译过程,并会根据我的理解来更新。阅读上文对本文的一些文件和术语会有很好的帮助。导读: Comp.mak 完成模块编译连接,生成bin Gsm2.mak 主编译文件,完成clean,remake,new等工作 XXX_GPRS.mak 客户私有的配置,根据客
2010-01-25 15:39:00
1692
原创 工作三个月,纪念一下!
离开第一家公司到现在整整三个月,紧张的工作,快速的生活节奏,没有一丁点时间回想以前。 大脑休息了,回家的步伐靠站了,剩下只有睡觉了。 上海生活节奏快,以前也听说过,不过没有真正看到,那飞奔的步伐,急匆的人流,只有当你被淹没的哪一刻,你才能真正体会到上海的生活节奏。地铁交通方便,速度快,耽搁少,地铁地铁上看看书,发发短信,打个电话放松一下,和大家一样,我对地铁这样理解。但是真正上班了才知道
2009-12-12 16:57:00
939
原创 MAC OS 异常处理 《二》
在MAC OS 异常处理 《一》中谈到了关于异常处理的几种方法,但是都存在缺陷,实际应用性能根据操作系统和执行环境的变化大打折扣。表面的异常处理方法和系统提供的都不够用,没办法,只有想到利用Low Lever的Kernel方法来实现这个异常。 需要注意的是Low Lever的方法可能会根据系统版本不同发生变化,一般不建议初级用户使用。但是在测试过MAC OS(10.4) tiger and
2009-03-18 11:20:00
1137
原创 海尔上网本
朋友买了海尔的上网本,我也凑个热闹,看了看,觉得磨具做的挺不错的。 虽然对海尔的笔记本了解不多,但是从外观上看得出,海尔还是下了一定的功夫。下面是自己拍摄的一些图片: 先来一张开箱图: 真正的东西在里面,呵呵 其它话不多说了,上图: 键盘细节: 开机: 右侧接口: 左侧接口:
2009-02-06 14:36:00
2209
原创 MAC OS 异常处理 《一》
最近在MAC系统上碰到一个很头痛的问题,异常捕获。关于这个问题在windows,linux,unix上也存在,先就说说Windows上的吧:windows上把异常分为2类, 一类就是C++的异常处理,简单来说就是通过自己Throw出来的异常,这种异常一般是被程序员发现和抛出,操作比较简单。 另一类就是系统异常,windows下称结构化异常,这类异常主要是访问对象不存在,执行指令不支持,内存错
2009-02-04 10:44:00
2329
转载 LINUX 下异常信号
一些标准的信号 我们介绍一些标准信号的名称以及它们代表的事件。每一个信号名称是一个代表正整数的宏,但是你不要试图去推测宏代表的具体数值,而是直接使用名称。这是因为这个数值会随不同的系统或同样系统的不同版本而不同,但是名称还算是标准化和统一的。 这些名称定义在signal.h中。 int NSIG是一个定义的宏,它描述了定义的信号的数量。由于信号的数值是从0开始连续分配的,所
2008-11-20 15:11:00
1573
转载 检测MPEG码流所需的基础知识
作者:北京广播 来源:广播电视与制作MPEG-2标准因其多层次的图像质量和传输速度、具有可分级性、灵活性和广泛的适应性,已成为DVB、HDTV信源编码的公认标准。近年来,除传输外,在电视中心的采集、制作和播出系统中以及多媒体领域里,也得到了广泛的应用。 MPEG数字视频编码技术,是基于视频序列在空间和时间上的像素之间的相关特性这一原理的。利用帧内离散余弦变换编码技术,发
2008-11-13 14:08:00
1061
原创 区域数字电视标准
区域数字电视标准, 仅供参考, 以区域实际播放为主:地区 频率 台标 高清/标清 视频格式 北京 666CCTV-1标清 MPEG-2CCTV-2标清 MPEG-2CCTV-少儿 标清
2008-10-16 13:16:00
1151
原创 十一回家
毕业快要两年了,一直没有回家,趁着十一的大好时光带着女友回了一趟家,感觉家乡变化很大,到县城的时候已经晚上8点多了,打的回家的时候差点开过头了。 在家里呆了没几天,匆匆几眼,已经能够发现家乡的变化了。在国家政策下以前的地方有一部分已经不再种植农产了,改为种树,呵呵,绿化有经济。村里新盖的房子都很不错,有点苏北这边人盖房的气魄,不像以前我们盖房子能盖平房都是很
2008-10-06 11:38:00
683
原创 离别
好久不能上优快云了,今天突然登陆成功,心中一份窃喜,呵呵 在公司工作也一年多了,同事关系处理的也很好,大家在一起互帮互助,当然,我学习的比较多。 前两天突然听到同事要回总部去,以后可能不会有在一起工作的机会,想起来也比较难过,毕竟在一起一年多了,而且那么熟悉。 祝愿他们在以后的工作中顺顺利利,平安是福。
2008-08-20 13:18:00
570
原创 stack overflow问题
最近碰到一个问题,在调试H.264解码包的时候碰到stack overflow的问题,很奇怪,因为library以前测试基本ok的,最近要将他从DirectShow下整理出来,其间做了一下封装,出现问题表示如下: 调用函数pDecoder->OnPicture();出现以下对话框: 第一反应就是会不会是指针指向出错,结果Debug调试,察看指针指向,发
2008-07-29 09:56:00
1005
原创 Spin lock 介绍
今天看了有关spin lock的介绍,跟以往的线程同步的互斥量有很大的区别: 一般的互斥量在lock之前会去侦测一次当前锁是否被其它线程所持有,如果有则请求线程等待,直到锁被持有线程释放后,有系统唤醒等待的线程,这个过程势必会导致线程的切换,现场的保留等,消耗CPU,并且反映比较慢。 相反,spin lock在lock的时候去侦测
2008-07-24 15:39:00
1048
原创 H.264学习
最近结束了对MPEG2的优化和后期Deinterlace算法的处理优化,这部分理论上已经结束。后期计划学习h.264方面的知识,在这方面我还是个新手,东西都不怎么理解,希望从今天开始有志同道合的朋友可以跟我一起学习讨论,我的MSN:wang.higher@hotmail.com希望能够共同勉励,共同进步。
2008-07-15 14:37:00
706
原创 Com对象创建过程
最近看关于DirectShow下面的filter方面的知识,看到有关Com创建的系统封装过程,总结了一下,希望有帮助:这次主要说一下CoCreateInstance()函数的系统调用关系。客户端调用CoCreateInstance()函数后主要做了一下东西:1:首先系统里面定义了一个IClassFactory 类工程接口指针的对象 IClassFactory * pIClassFact
2008-07-02 10:58:00
1072
转载 GCC中SIMD指令的应用方法
GCC中SIMD指令的应用方法 Abstract:X86架构上的多媒体应用开发,如果能够使用SIMD指令进行优化, 性能将大大提高。目前,IA-32的SIMD指令包括MMX,SSE,SSE2等几级。 在GCC的开发环境中,有几种使用SIMD指令的方式,本文逐一介绍。Keywords: 优化,GCC, SIMD,MMX,SSE X86的SIMD指令 ...sim
2008-05-06 15:36:00
1213
原创 图像处理 算法
浮雕算法: R=(R-r)+NumberB=(B-b)+NumberG=(G-g)+Number模糊算法:取一个像素块(3*3或5*5或7*7),求出像素块总的R、G、B值,然后取平均值做当前像素点的R、G、B值。锐化算法:R=R+(R-r)+NumberB=B+(B-b)+NumberG=G+(G-g)+Number其中R,G,B是像素对应的RGB值,
2008-04-03 16:18:00
840
原创 XCODE下对UNICODE的显示支持
对于不同系统文字乱码的情况的分析:主要是因为每个地区都使用自己的编码标准,虽然相同的二进制码,但在不同的语言系统中对应的字符却不一样。如何解决全球字符统一的问题呢? UNICODE就是为此而诞生的。 现在我就谈一下MAC平台下XCODE对UNICODE的显示支持。MAC操作系统从X系列后就开始支持UNICODE的显示了。如何在XCODE中对UNIC
2008-03-06 10:42:00
4413
转载 ASCII 字元表
ASCII 字元表ASCII 碼大致可以分作三部分組成。第一部分由 00H 到 1FH 共 32 個,一般用來通訊或作為控制之用,有些字元可顯示於螢幕,有些則無法顯示在螢幕上,但能看到其效果(例如換行字元、歸位字元)。如下表: 第二部分是由 20H 到 7FH 共 96 個,這 95 個字元是用來表示阿拉伯數字、英文字母大小寫和底線、括號等符號,都可以顯示在螢幕上。如下表:
2008-03-04 10:32:00
819
转载 C语言文件操作函数(ANSI)
在ANSI C中,对文件的操作分为两种方式,即流式文件操作和I/O文件操作,下面就分别介绍之。一、流式文件操作 这种方式的文件操作有一个重要的结构FILE,FILE在stdio.h中定义如下:typedef struct {int level; /* fill/empty level of buffer */unsigned flags; /* File status fla
2008-03-03 11:27:00
1660
转载 数字电视标准ATSC,DVB的比较
感谢 作者:杨 力 李 利摘要:本文从视频、音频、地面广播、卫星电视、有线电视、交互式数据业务等方面对两大数字电视标准ATSC和DVB进行了全面的比较。 1 前言 伴随信息时代的到来,广播电视事业,特别是有线电视得到了迅速发展。 有线电视的发展有两个明显的特点: 一是光纤化,光纤通信技术的发展(DWDM、光复用技术和光交换技术的出现及光设备的价格不断下降)和用户对带宽的需求越来越高使
2008-02-15 12:42:00
3206
转载 wav文件格式分析详解
wav文件格式分析详解作者:曹京 ---(感谢作者) 地址:http://blog.youkuaiyun.com/bluesoal/archive/2006/07/17/932395.aspx 一、综述 WAVE文件作为多媒体中使用的声波文件格式之一,它是以RIFF格式为标准的。RIFF是英文Reso
2008-01-16 15:37:00
793
转载 MMX指令集(详解)
EMMS MMX状态置空:将FP特征字置空(全1),使后续浮点指令可以使用浮点寄存器,其他MMX指令自动置FP为全0.本指令应在所有MMX例程结束和调用可含有FP指令的例程时使用,以清除MMX状态. MOVD mm,r/m32MOVD r/m32,
2007-12-17 20:01:00
16400
转载 Linux 汇编语言开发指南(AT&T)
汇编语言的优点是速度快,可以直接对硬件进行操作,这对诸如图形处理等关键应用是非常重要的。Linux 是一个用 C 语言开发的操作系统,这使得很多程序员开始忘记在 Linux 中还可以直接使用汇编这一底层语言来优化程序的性能。本文为那些在Linux 平台上编写汇编代码的程序员提供指南,介绍 Linux 汇编语言的语法格式和开发工具,并辅以具体的例子讲述如何开发实用的Linux 汇编程序。
2007-12-06 16:54:00
1664
原创 数字电视标准
现在数字电视主要分为以下几个标准:1:DVB-S (Digital Video Broadcasting -Satellite) 2:DVB-C (Digital Video Broadcasting -Cable)3:DVB-T (Digital Video Broadcasting -Terrestrial)4:DVB-H
2007-12-06 11:22:00
818
转载 CPUID 指令介绍3
CPUID参数及返回值列表: EAX= 0000_0000h 输入 EAX=0000_0000h 得到CPUID指令所支持的最大值和厂家的名称字符串 输出 EAX=xxxx_xxxxh 得到CPUID指令所支持的最大值 #1 EBX-EDX-ECX 厂家的名称字符串 #2 GenuineIntel Intel 处理器 UMC UMC UMC UMC 处理器 AuthenticAMD AMD 处理器
2007-11-29 15:50:00
1818
转载 CPUID指令介绍2
1、什么是cpuid指令 CPUID指令是intel IA32架构下获得CPU信息的汇编指令,可以得到CPU类型,型号,制造商信息,商标信息,序列号,缓存等一系列CPU相关的东西。2、cpuid指令的使用 cpuid使用eax作为输入参数,eax,ebx,ecx,edx作为输出参数,举个例子: __asm { mov eax, 1 cpuid ... }
2007-11-29 15:12:00
1463
转载 CPUID指令介绍
CPUID指令 1. CPUID指令代码: 0a20f 例: { CPUID MACRO dw 0a20fh ENDM } 2. CPUID有效检测 如果程序可以改变EFLAGE(扩展标志字)的第21位,那么CPUID有效, 否则无效。 注:对于Cyrix的CPU,在打开其内部CPUID标志位之前,用此方法
2007-11-29 14:33:00
1749
原创 InterLockedIncrement and InterLockedDecrement
最近做的东西和相关的多线程访问相关,看到相关InterLockedIncrement and InterLockedDecrement的介绍比较少,我就简单总结一下:InterLockedIncrement and InterLockedDecrement实现数的原子性加减。什么是原子性的加减呢?举个例子:如果一个变量 Long value =0;首先说一下正常情况下的加减操作:
2007-11-09 11:44:00
2590
2
转载 GCC中汇编格式
gcc采用的是AT&T的汇编格式,MS采用Intel的格式. 一 基本语法 语法上主要有以下几个不同. ★ 寄存器命名原则 AT&T: %eax Intel: eax ★ 源/目的操作数顺序 AT&T: movl %eax,%ebx Intel: mov ebx,eax ★ 常数/立即数的格式 AT&T: movl $_value,%ebx Intel: mov ea
2007-11-07 11:27:00
1769
转载 GCC中使用SIMD
©2004本文最初由IBM developerWorks中国网站发表,其网址是http://www-900.ibm.com/developerworks/cn,文章链接为这里。 Abstract:X86架构上的多媒体应用开发,如果能够使用SIMD指令进行优化, 性能将大大提高。目前,IA-32的SIMD指令包括MMX,SSE,SSE2等几级。 在GCC的开发环境中,有几种使用SIMD指令的方式
2007-11-07 11:22:00
2626
转载 Linux进程通信-使用信号量
一、相关知识 信号量:一个整数; 大于或等于0时代表可供并发进程使用的资源实体数; 小于0时代表正在等待使用临界区的进程数; 用于互斥的信号量初始值应大于0; 只能通过P、V原语操作而改变; 信号量元素组成: 1、表示信号量元素的值; 2、最后操作信号量元素的进程ID 3、等待信号量元素值+1的进程数; 4、等待信号量元素值为0的进程数; 二、主要函数 1.1 创建信号量 in
2007-11-06 11:35:00
2377
1
转载 从 Windows 移植到 UNIX 环境
从 Windows 移植到 UNIX 环境大多数基于 Microsoft® Windows® 的项目都是使用 Microsoft Visual Studio® 构建的,这是一种复杂的集成开发环境 (IDE),它可以为开发人员实现几乎整个构建过程的自动化。此外,Windows 开发人员使用了 Windows 平台特定的应用程序程序接口 (API)、头文件和语言扩展。大多数类 UNIX® 系统,如
2007-11-05 11:21:00
989
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人