<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type='text/xsl' href='http://huaiqj.spaces.live.com/mmm2008-05-17_13.22/rsspretty.aspx?rssquery=en-US;http%3a%2f%2fhuaiqj.spaces.live.com%2fcategory%2fmultimedia%2ffeed.rss' version='1.0'?><rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:msn="http://schemas.microsoft.com/msn/spaces/2005/rss" xmlns:live="http://schemas.microsoft.com/live/spaces/2006/rss" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>千江有水千江月: multimedia</title><description /><link>http://huaiqj.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;_c=BlogPart&amp;partqs=catmultimedia</link><language>en-US</language><pubDate>Wed, 05 Mar 2008 02:50:44 GMT</pubDate><lastBuildDate>Wed, 05 Mar 2008 02:50:44 GMT</lastBuildDate><generator>Microsoft Spaces v1.1</generator><docs>http://www.rssboard.org/rss-specification</docs><ttl>60</ttl><cf:parentRSS>http://huaiqj.spaces.live.com/blog/feed.rss</cf:parentRSS><live:type>blogcategory</live:type><live:identity><live:id>8413779123887205283</live:id><live:alias>huaiqj</live:alias></live:identity><cf:listinfo><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="typelabel" label="Type" /><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="tag" label="Tag" /><cf:group element="category" label="Category" /><cf:sort element="pubDate" label="Date" data-type="date" default="true" /><cf:sort element="title" label="Title" data-type="string" /><cf:sort ns="http://purl.org/rss/1.0/modules/slash/" element="comments" label="Comments" data-type="number" /></cf:listinfo><item><title>mpeg audio</title><link>http://huaiqj.spaces.live.com/Blog/cns!74C3BF88F9E4EBA3!129.entry</link><description>&lt;div&gt;以前的笔记。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;MPEG audio包含两个标准ISO/IEC 11172-3和13818-3，前者是mpeg1也就是通常说的vcd的，后一个是mpeg2也即DVD。两者原理都相同，直观上的区别是采样率后者正好是前者的一半。同样一段数据，采样率越低得到的数据量越少，因此要得到相同甚至更好的音质，MPEG2 audio采用的声学模型完全不同。&lt;/div&gt;
&lt;div&gt;mpeg audio有三种采样率32，44.1和48，对应mpeg2的采样率为16，22.05和24。从低到高依次称为layer1，2，3。因此通常说的mp3也就是mpeg audio layer 3。记录的声道有四种模式：mono，dual，stereo和joint。根据两声道的数据特点，把两个声道的组合起来传输。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;mpeg audio的主要原理是利用人耳的掩模特性，也就是相邻频段的tone会被能量很强的tone掩盖住，人耳只能识别这个频段的能量最高的tone，因此audio压缩的流程是通过FFT变换生成32个subband，然后对每个子带通过声学心理模型进行量化，然后进行MDCT分析，modified  discrete cosine transform。解码反向。mp3相对来说还是比较简单，时间比较久了，很多内容一时都相不起来了。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;下面这段是比较mpeg1 audio和mpeg2 audio的差别&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Header information within the first 32 bits of the ISO/IEC 11172-3 audio frame.
&lt;li&gt;Cyclic Redundancy Check (CRC), consisting of 16 bits, just after the header information (optional)
&lt;li&gt;Audio data, for Layer II consisting of bit allocation (BAL), scalefactor select information (SCFSI), scalefactors (SCF), and the subband samples.
&lt;li&gt;Ancillary data. Due to the large number of different applications which will use the ISO/IEC 11172-3 Standard, the length and usage of this field are not specified.
&lt;li&gt;IS decoding and scalefactor definition changed&lt;/ul&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;mp3 之后又出现aac，以及aac+，最大的差别是引入了ps和sbr。AAC编码已经成了3gpp的主要音频编码标准年之一。关于aac编码倒是值得仔细review下。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;参考资料：&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;ISO/IEC 13818-3 Generic Coding of Moving Pictures and Associated Audio
&lt;li&gt;ISO/IEC 11172-3 Coding of Moving Pictures and Associated Audio 
&lt;li&gt;A Tutorial on MPEG/Audio Compression: IEEE Multimedia Journal, Summer 1995 issue
&lt;li&gt;Digital Audio Compression: Digital Technical Journal Vol. 5 No. 2, Spring 1993
&lt;li&gt;&lt;a href="http://www.mpeg.org/"&gt;http://www.mpeg.org/&lt;/a&gt; &lt;br&gt;&lt;/ol&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=8413779123887205283&amp;page=RSS%3a+mpeg+audio&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=huaiqj.spaces.live.com&amp;amp;GT1=huaiqj"&gt;</description><comments>http://huaiqj.spaces.live.com/Blog/cns!74C3BF88F9E4EBA3!129.entry#comment</comments><guid isPermaLink="true">http://huaiqj.spaces.live.com/Blog/cns!74C3BF88F9E4EBA3!129.entry</guid><pubDate>Sat, 18 Nov 2006 17:55:55 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://huaiqj.spaces.live.com/blog/cns!74C3BF88F9E4EBA3!129/comments/feed.rss</wfw:commentRss><wfw:comment>http://huaiqj.spaces.live.com/Blog/cns!74C3BF88F9E4EBA3!129.entry#comment</wfw:comment><dcterms:modified>2006-11-18T17:55:55Z</dcterms:modified></item><item><title>video algorithms</title><link>http://huaiqj.spaces.live.com/Blog/cns!74C3BF88F9E4EBA3!126.entry</link><description>&lt;div&gt;最近写了好几篇关于无线通讯，尤其是蓝牙的文章，被人误以为我对蓝牙有什么企图。澄清下，我对蓝牙确实有企图，不仅限于蓝牙，还包括其他无线通讯技术，IP通讯，多媒体以及其他我关注的技术。找个spaces写下来就是免得每次看完感兴趣的技术只是成为PPT，在某个文件夹里孤零零的躺着，至少强迫自己总结下，还可以持续跟踪着，不断更新，看技术的发展，还有自己逐步的理解，等于是思想的轨迹。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;重新整理以前研究过的视频资料陆续贴上来，先写把视频算法的发展，以后计划还要整理mpeg-4，264，wmv；音频包括mp3，aac；还有嵌入式系统和芯片及实现的一些想法，尤其最后一部分当时和WH、BF讨论过很多，不少还成了专利。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;流行的视频算法其实不多，基本按时间顺序整理从261一直到264（以前叫26L，之后又叫AVC，也代表了这个算法的发展历史）&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;H.261：ITU-T在ISDN时代提出来的，大概一帧65kbits，数据率就是帧率*64kbps，帧率通常不超过30fps，主要应用场合也就是ISDN video phone;&lt;/div&gt;
&lt;div&gt;MPEG-1:ISO标准11172-2（-3是对应的audio标准mp3），码率在1.2Mbps，典型应用当然是vcd，专业说起来是cdrom存储；&lt;/div&gt;
&lt;div&gt;MPEG-2：ISO标准13818-2（-3同样是audio标准，仍然是mp3，不过版本不同，采样率也不一样），码率在4-80Mbps，惊人呵，因为设计的应用是SDTB和HDTV，后来主要成为DVD的存储格式；&lt;/div&gt;
&lt;div&gt;H.263：ITU-T标准，码率小于64kbps，h263的产生是为了IP视频会议，因此在早期视频电话和视频会议上基本是主流算法，甚至在目前很多基于IP的可视电话上，h263还是标准算法之一，从算法本身来讲它和之后产生的MPEG-4没有太大区别；&lt;/div&gt;
&lt;div&gt;MPEG-4：ISO标准14496-2（对应的audio标准是aac-lc），码率从24-1024kbps，因为加入了error-resilliance，适用于无线信道传输，这个几乎成为了目前流媒体的主要格式，因为apple的quick-time以及微软早期的mediaplayer版本，还有real用的都是mpeg4；mpeg4的演变比较传奇，微软在发布mpeg4 v1 v2之后，源代码被一批人搞出来，起了名字叫divx，在网上提供免费代码opensource，搞着搞着，越来越多人加入，他们发现了里面的商业价值，于是从opensource计划里专门分出一个商业化版本，两个版分别用URL  .com和.org来区分，早期的divx两个版本还是相差不多，满满从3.0开始，商业版越来越快，整个计划的商业气味也越来越浓，如今divx的播放器也是相当流行的，不过在那个时候一起参加opensource计划人开始不爽，因为他们是免费付出，divx的人去用来转换为商业利益，于是xvid粉墨登场。&lt;/div&gt;
&lt;div&gt;H.263v2：ITU-T用来和ISO的MPEG-4竞争的算法，和H.263的差别好像是多了de-block filter；&lt;/div&gt;
&lt;div&gt;H.264：最早是由ITU-T提出来的，那时版本称为H.26L，之后和ISO组织的AVC合并，这个一直定位的是将来的视频算法，这个将来的含义是264的编解码芯片一直没有出现（指的不是DSP方案），而且264主要针对的是数字电视标准和新一代的DVD储存标准，这些都还未进入市场。264足够复杂，为芯片面积和功耗考虑，只能实现最基本层baseline profile；&lt;/div&gt;
&lt;div&gt;除了这两大标准组织发布的视频算法，微软的wmv9应该已经批准成为国际标准，它的许可费用比起mpeg-4以及264相当有诱惑力，而且有微软的操作系统支持，前景还是可以看好的，目前一些multiformat的芯片，都会把wmv9列作支持的算法之一；国内的avs和微软的算法一样都是和264很类似，为了降低264编解码的复杂度，消减了一些tool，后果当然就是dB下降。目前看来还是h264的编码效率最高了。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;上面列的这些算法，基本原理都是相同的，利用视频流的数据冗余，冗余包括空间冗余（同一帧内具有相关性），时间冗余（前后帧也有相关性）以及统计冗余，采用预测和纠正的方式来压缩图像数据。 用文字来描述就是每次获取一帧图像，先经过余弦变换，消除统计冗余，然后在同一帧内进行预测，预测是指从前一个像素来推断下一个像素的值，于是这个推断的方法（向量）以及推断后的差值被保留，这样只要记录很少数据就能保存一帧数据，这样还不够。之前说到帧与帧之间有很大关联性，30fps，这一刻的图像和1/30秒之后图像应该只是很少变化，因此同样根据前一帧来推断下一帧的值（运动矢量），因此以后的帧我们只需要记住运动矢量，以及和实际图像的差值（残值）就可以实现基本的视频压缩算法。不同算法的差别就在于预测的帧数，预测的方向，以及用于预测的算法工具。而对硬件实现的挑战则在于需要大量的存储单元，以及预测方式是把所有可能的方向都计算出来，误差最小的作为预测值，带来大量的运算复杂度，通常做优化也就是根据经验减少预测的数目。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=8413779123887205283&amp;page=RSS%3a+video+algorithms&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=huaiqj.spaces.live.com&amp;amp;GT1=huaiqj"&gt;</description><comments>http://huaiqj.spaces.live.com/Blog/cns!74C3BF88F9E4EBA3!126.entry#comment</comments><guid isPermaLink="true">http://huaiqj.spaces.live.com/Blog/cns!74C3BF88F9E4EBA3!126.entry</guid><pubDate>Tue, 14 Nov 2006 17:45:29 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://huaiqj.spaces.live.com/blog/cns!74C3BF88F9E4EBA3!126/comments/feed.rss</wfw:commentRss><wfw:comment>http://huaiqj.spaces.live.com/Blog/cns!74C3BF88F9E4EBA3!126.entry#comment</wfw:comment><dcterms:modified>2006-11-14T17:45:29Z</dcterms:modified></item></channel></rss>