标题：音频流
连续音频流分类的研究背景
简介一直以来，音频数据本身仅仅是一连串非语义符号表示的不透明二进制流，缺乏对声音类型结构化组织和高层语义的描述，给音频信号的深入处理和分析工作带来了诸多困难，使自动语音识别（Automatic Speech Recognition，ASR）和基于内容的音频检索（Content-Based Audio Retrieval，CBAR）等应用受到了极大限制。如何从连续音频流信号中提取音频类型的结构化信息，将其按语音、音乐和环境音等不同的声学类型切分成类别单一的音频片段，标注出各音频片段的分界点位置和类型信息，即连续音频流分类，是解决音频信息深度处理、分析和检索等问题的关键技术和基础前提，同时也是辅助视频信号自动切分和分类的强有力的工具，有着广泛的应用前景。分类技术利用连续音频流分类技术可以为ASR提供单一的语音片段,是现有语音识别系统走向实际应用的先决条件之一。现有的连续语音识别系统对输入语音信号的要求近乎苛刻，一般不仅不能包含诸如音乐、环境音等其它种类的声音，而且要有较高的信噪比。ASR则要求对现实生活中的音频流如广播新闻,影视、会议、演讲等录音进行自动转录（Transcribe），生成包含语义内容、位置和其它信息的“抄本”（Transcription）。我们知道,以上列举出的这些音频流通常由语音和其它类型的声音连接而成，如果不对其预先分段并去除非语音部分,必定会对语音识别系统的性能产生严重的影响。音频类型结构化信息连续音频流分类给出的音频类型结构化信息，是建立音频数据库索引、实现底层结构单元向高层语义结构单元关联的基础。CBAR技术通常要分析音频流的结构和语义，从不同类型的音频信号中提取高层语义信息,如对语音部分抽取关键词,建立它们的结构化的组织和索引，使“无序”的音频流变得“有序”，以便于用户的检索和浏览。可见，如果不知道音频流的所包含的声音类别和及其位置信息,高层语义的提取根本无从谈起。相关介绍连续音频流分类技术可以作为视频镜头自动分割和分类的有效的辅助工具。由于受技术发展的限制,单独依靠现有的图像和视频处理技术还不能使计算机“理解”视频的内容,视频镜头切分精确度也不高，不能对故事单元进行基于内容的分类。如果利用连续音频流分类技术将视频流所对应的音频进行切分,利用较实用的语音识别技术对其中的语音部分进行语音识别，利用已经比较成熟的全文检索技术对语音识别结果进行处理,提取文本摘要，则可以较好地解决这些问题。音视频编辑领域的知识和一些基本规则告诉我们,如果视频流所对应的音频类型没有发生变化，其对应的视频可以不进行分割处理。因此通过对音频流恰当的切分，可以大大提高视频的分割效率和准确率。
此外,连续流音频流分类技术还可以用在音频内容理解（Audio Content Understanding）、音频监测（Audio Surveillance）和音频场景分析（Audio Scene Analysis）等领域。总之，音频数据自身的特点和现有技术的制约，使得对音频流的进一步处理受到了限制，而连续音频流分类技术可以很好解决这一问题，为音频流结构化和音频信息深度分析和利用提供了坚实的基础。
常见音频流格式和播放器
流格式媒体传输的定义流媒体就是指在网络上使用流式传输技术的连续时基媒体，是通过网络传输的音频、视频或多媒体文件。关键是流式传输技术，流式传输现在主要指通过网络传送媒体(如视频、音频)的技术总称，其特定含义为通过网络将影音节目传送到PC单机。
实现流式传输分两种方法:实时流式传输方式(Realtime streaming)和顺序流式传输方式(progressive streaming)。流格式音频的常用格式现在网络上常见的流格式音频的格式主要有美国Realnetwork公司的*.RA格式和微软公司的*.WMA格式,另外还有一个多用于专业领域的美国苹果公司*.MOV格式，在这三种格式中,MOV格式的音质是最好的，特别是MIDI方面,支持GS和GM两种音色，播放效果要明显的强于Windows media player，下面就给大家详细的介绍这几种格式的特点：
RealAudio格式
这是美国RealNetwork公司的一个元老级的产品，也是目前网上最流行的流式媒体技术。许多Internet的音乐台、视频点播站点都采用它。RealMedia其中包含RealAudio(声音文件)、RealVideo(视频文件)和RealFlash(矢量动画)这三类文件。
QuickTime格式
QuickTime与RealMedia一样，完合兼容于苹果机与PC机。在同样网速和文件大小的情况下，它的音像品质是最好的。它由三个不同部分所组成：QuickTime Movie(电影)文件格式，QuickTime媒体抽象层、QuickTime内置媒体服务系统。
Windows Media Audio格式
WMA(Windows Media Audio)是来自于微软的重量级选手,它的前身是微软公司的Netshow，后台强硬,也是为数众多Windows使用者最为熟悉的，它的核心技术是ASF(Advanced Streaming Format,高级流格式)。ASF格式支持任意的压缩/解压缩编码方式，并可以使用任何一种底层网络传输协议，具有很大的灵活性，比较MPEG之类的压缩标准增加了控制命令脚本的功能，它以减少数据流量但保持文件质量的方法来实现流式多媒体内容发布。
现在网络上风行的FLASH虽然是矢量动画技术，可是它一样的可以包含声音信息,也支持流式传输，高品质FLASH的SWF格式文件声音更加出众，而且文件体积更小，现在也有使用这种技术做的音乐网站,在欣赏的时候需要你安装一个FLASH的插件,以现在的网络速度而言，区区几百KB的FLASH插件一会儿的工夫就可以安装完成,然后你就可以欣赏SWF格式的音乐了。流媒体传输协议在浏览器中，我们常见的地址是以http://和ftp://开头的。Web服务器也可以通过http协议来处理流式媒体文件,然而Web服务器本身的设计并不能有效率地传送串流媒体档案。
串流媒体必须占用一个不间断地封包串流,而且会长时间地与服务器保持连线状态，如果有太多访客同时上线观看,效能便会大打折扣。为了解决这个问题，流格式媒体文件有它自己的一套协议。
1、即时串流通讯协议(Real Time Streaming Protocol，RTSP)：是RealNetworks公司协助建立的一个用来传送串流媒体的开放网页标准。虽然它必须使用一种称为RealServer的特殊服务器,然而RTSP能够提升流式媒体影片的品质,改善传送效率以及提供更佳的高流量处理功能。如果你的ISP具备了RealServer服务,那么建议你使用RealServer而不要使用Web服务器来传送串流媒体档案。
2、MMS(Media Server protocol,MMS):这是微软定义的一种流格式传输协议。
3、实时传输协议(Theater Server protocol,RTP):这是用于Internet上针对多媒体数据流的一种传输协议。RTP被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步，通俗的说也就是网络上的WEB服务器。
4、资源预订协议(ResourceReserveProtocol,RSVP),由于音频和视频数据流比传统数据对网络的延时更敏感，要在网络中传输高质量的音频、视频信息，除带宽要求之外,还需其他更多的条件。RSVP是正在开发的Internet上的资源预订协议，使用RSVP预留一部分网络资源(即带宽)。
这些协议代替了http和ftp，而是像mms://61.139.25.41/quake，以MMS或RTSP等开头。各种格式的播放器以上三种格式各有各的播放器,它们分别是RealPlayer、QuickTime Player和Windows Media Player。
1、RealPlayer
Real格式具有很高的压缩比和良好的压缩传输能力，特别适合网络上播放或是在线直播方式，在视频流媒体格式中RM格式是素质最差的，可是文件也是最小的，低速网用户(非ADSL和宽带网用户)也可以很轻松地在线欣赏视频节目。RealPlay播放器使用也非常方便，系统的资源占用在其他二者之间，是低配置用户的最好选择。凭着ReaNetworks公司优秀的技术，它已占领了半数以上的网上流式视音频点播市场。
2、QuickTime Player
QuickTime Player可以通过Internet提供实时的数字化信息流、工作流与文件回放功能。QuickTime文件的素质极高,缺点是文件个头比较大，当然,高清晰、高质量的画面往往就意味着更大尺寸的文件,更多的传输时间。正因如此，在网络上QuickTime只能用做一些多媒体广告、产品演示、高清晰度影片等需要高清晰表现画面的视频节目上。在网络速度不流畅的地方观看起来有些吃力，而且QuickTime Player的系统资源占用较高,要求你的机器配置较好才能胜任,最好是拥有快速CPU和更大容量的内存的高性能电脑。
现在QuickTime PLAYER的最新版本是5.0，注意，QuickTime Player播放器可不是免费的,大家可以到苹果公司的主页上去下载。
3、Windows Media Player
WMA的播放器使用Windows自带的Windows Media Player就可以了，WMA格式音乐的一大特点不需要额外的播放器，你在“开始-程序-附件-娱乐”中就可以找到它的身影。其制作、发布和播放软件也与Windows NT/2000/9x集成在一起，更加强大的是Windows Media增加了版权保护功能,可以限制播放时间、播放次数甚至于操作系统等,这对于被盗版搅得焦头乱额的音像出版商们可是一大福音。WindowsMedia文件比起RealMedia文件大些,在线播放状态下比QuichTime可以获得更快、更流畅的效果。
音频流函数
音频流函数是用来用来播放大到不能放在常规 SAMPLE 结构里的数字音乐用的， 也因为这些文件太大而你想每次载入需要数据的一部分，或者是你想做些聪明的活, 比如产生飞行的波形。
AUDIOSTREAM *play_audio_stream(int len，bits，stereo，freq，vol，pan)；
这个函数创建一个新的音频流然后开始播放。 长度是每个传输缓冲(采样声音的) 的大小, 它至少要有 2K: 大点的缓冲更经济些, 需要更少的更新, 但是在你提供数据和它实际播放之间，有更多的等待。 bits 参数必须是 8 或 16， freq 是数据的采样频率, vol 和 pan 值使用和常规采样声音播放例程相同的 0-255 范围. 如果一但开始播放了，你想调整音调，音量，或音频流的 pan 值， 你可以使用常规的 voice_*() 函数, 以 stream->voice 作为参数。采样声音数据永远是无符号格式，立体声波形由交替左/右采样组成。
void stop_audio_stream(AUDIOSTREAM *stream);
当一个音频流不再需要时撤销它.
void *get_audio_stream_buffer(AUDIOSTREAM *stream);
当音频流正在播放时, 你必须以有规律的间隙调用这个函数 来提供采样声音数据的下一个缓冲 (缓冲区越小, 它就必须被更频繁的调用). 如果返回 NULL, 音频流还有许多要播放, 因此你不必去做什么。 如果返回了值, 它就是下一个缓冲将被播放的位置, 你应当将合适数量的采样声音 (无论你在创建流时指定了多少) 载入到 那个地址, 比如你使用 fread() 从磁盘文件里载入。 在用数据填充完缓冲区后, 调用 free_audio_stream_buffer() 来只是新的数据已经有效了. 注意这个函数不能在时钟句柄里调用。
void free_audio_stream_buffer(AUDIOSTREAM *stream);
在 get_audio_stream_buffer() 后调用这个函数, 返回一个非 NULL 地址, 来知识你已经载入一块新的采样声音到那个地址, 数据现在准备被播放了。
ST的数字音频流
在2007年拉斯维加斯国际消费电子展(CES)期间,意法半导体(ST)现场演示了采用蓝牙接口、红外线接口和Sound Terminal技术的实际便携应用。Sound Terminal未来产品包括集成这些接口和其它接口的ASSP(专用标准产品)。
“Sound Terminal”是ST提出的一个数字音频流概念,其目的是把高音质、低功耗和低制造成本带到人气很旺的高速增长的应用领域,如平板电视机、无线产品和个人音响系统。单封装解决方案的高集成度,结合从声源到扬声器的纯数字流处理能力,为设计低成本、高效能、外观紧凑的音响系统提供了可能。
Sound Terminal产品家族的初期产品包括一系列高音质音频的单片系统,例如:已经上市的用于大功率(20-80W)、中等功率(10-20W)和小功率(低于 1.5W) 的STA326和STA323 ,这些产品单片集成了数字音频处理器、数字放大器控制器和一个DDX数字功率输出级。 STA326的功率输出可以驱动2个30W声道或1个60W的声道,通过数字控制,很容易把该产品配置成几个不同的输出模式;该产品有多种处理和均衡选项,包括每声道最多4个可编程28位二阶滤波器和低/高音控制。各种听音条件预设模式可以缩短软件开发时间,简化产品设计过程。
因为是全数字流,放大链中的信号处理无需模数转换器,所以这是一个保证整体音频质量的低成本解决方案,信噪比(SNR)高达100dB,宽动态范围。Sound Terminal芯片原型已经开发成功,采用ST具有自主知识产权的数字调制技术(FFX)的放大器是一个以便携为目标应用的产品实例,该芯片的放大效率高达94%,在当前市场上居最高水平;能够为便携系统提供“不发热的音频功率”,有助于大幅度延长电池使用时间,而且还大幅度降低了散热器的尺寸,为先进的产品设计提供了可能。
内置数字处理功能特别有助于提高音质,按照特定的音频应用定制功能;例如,随着平板电视机设计变得更薄,扬声器变得更小,机箱声学特性越来越不理想,修正音频信号是十分重要的。
此外,数字流技术非常适合与采用散射红外线、蓝牙无线2.0EDR(增强数据速率)、WiFi和UWB(超级宽带)技术的无线扬声器和无线耳机的音频接口整合。