intel iyuv codec支持opus codec吗

图像和流媒体(132)
因为工作的原因,用到了源自国外的opus开源库,opus相关的资料比较少,自己用了一段时间,把相关东西整理记录下
首先需要在opus官网上下载opus相关的源码资料
http://www.opus-codec.org/
在第二行downloads里面可以看到全部的源码下载
这里我们需要下载
之前笔者犯了一个错误,就是直接用opus_demo文件对MP3和wav格式的音频进行编码,结果导致出错
在README里面我们可以看到
input and output are little-endian signed 16-bit PCM files or opus
bitstreams with simple opus_demo proprietary framing.
所以更换了pcm格式的文件,我们便可以进行编码
编码的命令为:
./opus_demo -e voip 000 xxx.pcm xxx.opus
之后便生成你参数指定的opus文件
其中-e指的事编码,voip是编码格式,还有audio和restricted-lowdelay两种格式,48000是采样率,2是指双通道,128000是比特率,随后是输入文件和输出文件
这些输入./opus_demo --help都会有提示
随后我们可以对生成的opus文件解码
./opus_demo -d 000 xxx.opus xxx.pcm
之后会解码生成pcm文件
我们可以将编解码前后的文件波形进行对比
源文件波形
编解码后波形
效果还是相当可喜的
当然,如果想直接将wav,flac格式的音频文件,编码成可播放的opus文件
需要使用opus_tools
同样是./configure make && install之后
./opus_enc xxx.wav xxx.opus命令
生成的opus文件便可以播放啦
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:2316422次
积分:20454
积分:20454
排名:第316名
原创:75篇
转载:1071篇
评论:288条
(2)(9)(22)(18)(25)(67)(31)(32)(27)(56)(13)(12)(8)(33)(32)(36)(12)(34)(42)(30)(17)(11)(3)(5)(11)(18)(17)(13)(17)(7)(6)(27)(19)(47)(1)(19)(11)(2)(1)(25)(20)(10)(6)(2)(8)(3)(10)(9)(6)(4)(15)(7)(2)(7)(8)(50)(14)(11)(26)(20)(4)(1)(5)(14)(12)(4)(4)(3)(2)(4)(2)(4)(1)(1)(1)(3)(2)(11)(3)(8)(15)(2)(1)查看: 21129|回复: 21
[原创]AAC终结者——新一代音频格式霸主Opus完全使用指南!!
& &继Beta版支持Opus音频格式后,Foobar.14正式版已经放出,我认为,Opus格式已经成熟,是时候让更多的人认识这个AAC终结者了。
& &一、Opus格式简介:
Opus是一款开源、免费、自由度高的有损音频编解码器,融合了Skype的SILK和XVID的CELT 技术,拥有比AAC、OGG等其它有损格式更大的压缩率。它已经被标准化互联网组织IETF认证通过,是AAC后新一代的编码格式,目前处在开放阶段就已经获得foobar、Skype、Firefox等的大力支持和推广,并且为HTML5标准加入了一股重要力量。
官方网站:, 内有源代码下载。
Opus的前身是celt编码器。在当今的有损音频格式争夺上,拥有众多不同编码器的AAC格式打败了同样颇有潜力的mpc、ogg等格式,而在Opus格式诞生后,情况似乎不同了,Opus单单是在目前的开发阶段就已经取得了技术上诸多的优势。通过诸多的对比测试,低码率下Opsu完胜曾经优势明显的HE AAC,中码率就已经可以媲敌码率高出30%左右的AAC格式,而高码率下更接近原始音频。
Opus的优势可以参看官方的测试对比: 以及著名的hydrogenaudio论坛的公开测试:
&&三、播放
Opus格式音频可以使用gstreamer, libavcodec,Foobar2000,Firefox(15 Beta或更新)等播放,推荐Foobar.14 beta 1或者更新的版本播放。我这样的Firefox高度依赖者用Firefox播放也很爽,只是不能控制音量。
四、编码(含教程)
编码毫无疑问是重头戏,同AAC一样,Opus支持vbr cbr cvbr三种编码模式,vbr当然依旧是编码效率最高的模式。不同于Itunes AAC动不动就是20Kbps的码率估算差值,Opus的VBR码率控制的非常出色,平均码率和估算值一般只有4Kbps以内。
Opus的码率支持6 kbps到510 kbps,采样率支持8 kHz到48 kHz(这点和qtaac相似,但都比不上Nero aac最高的96kHz,不过一般的CD级别的足够了)最大支持255声道……
值得注意的是,普通的CD级音频所用的44.1kHz采样率通过Opus编码后会重采样到48kHz,至于为什么这么做上有解释,下面的测试环节同样证明重采样到48kHz并无任何坏处。
有国外的网站出了一个相当详细的转换教程,不过适用于自定义编码需要输入命令行(用熟练了推荐命令行,非常方便)。附上命令行参数:
Usage: opusenc [options] input_file output_file.opus
Encodes input_file using Opus. It can read the WAV, AIFF, or raw files.
General options:
-h, --help& &&&This help
-v, --version& &Version information
--quiet& && &Quiet mode
input_file can be:
filename.wav& &file
-& && && &stdin
output_file can be:
filename.opus& &compressed file
-& && && &stdout
Encoding options:
--speech& && &Optimize for speech
--music& && &Optimize for music
--bitrate n.nnn&&Encoding bitrate in kbit/sec (6-256 per channel)
--vbr& && & Use variable bitrate encoding (default)
--cvbr& && & Use constrained variable bitrate encoding
--hard-cbr& &&&Use hard constant bitrate encoding
--comp n& && &Encoding complexity (0-10, default: 10)
--framesize n& &Maximum frame size in milliseconds (2.5, 5, 10, 20, 40, 60, default: 20)
--expect-loss& &Percentage packet loss to expect (default: 0)
--downmix-mono& &Downmix to mono
--downmix-stereo&&Downmix to stereo (if &2 channels)
--max-delay n& &Maximum container delay in milliseconds (0-1000, default: 1000)
Diagnostic options:
--save-range file Saves check values for every frame to a file
--set-ctl-int x=y Pass the encoder control x with value y (advanced)
& && && &&&Preface with s: to direct the ctl to multistream s
& && && &&&This may be used multiple times
--uncoupled& & Use one mono stream per channel
Metadata options:
--comment& &&&Add the given string as an extra comment This may be used multiple times
--artist& && &Author of this track
--title& && &Title for this track
Input options:
--raw& && & Raw input
--raw-bits n& & Set bits/sample for raw input (default: 16)
--raw-rate n& & Set sampling rate for raw input (default: 48000)
--raw-chan n& & Set number of channels for raw input (default: 2)
--raw-endianness n 1 for bigendian, 0 for little (defaults to 0)
--ignorelength& &Always ignore the datalength in Wave headers&&新版的Foobar已经有了更简单的可视化转换界面,下面就分步骤详细讲解:
1、从下载最新版的Windows平台的opus工具包。
2、解压工具包,将其中的opusenc.exe程序放置到Foobar根目录下。
3、打开Foobar,打开转换器设置界面,在“输出格式”中打开“新建”。
4、在“编码器”中选择“Opus”,“比特率”选项中选择合适的码率(无损转换Opus推荐选择256,下面的对比测试中会解释的),“比特率管理”中用默认的VBR即可,“调整”选项中最好选择“音乐”
5、点击确定,你就可以在“选择输出格式”中看到“Opus”啦,然后转换即可。
五、对比测试
测试条件(都是些低端但有口碑的设备,见笑了):
声&&卡——乐之邦 茉莉
耳&&机——拜亚动力DT235
操作系统——Windows 7 Ultimate 32bit SP1
播放软件——Foobar.14a Final
音&&源——无损音轨:
&& Coldplay - Viva La Vida《Greatest Hits》16Bit/44.1KHz
&& Coldplay - Yellow《Greatest Hits》16Bit/44.1KHz
Coldplay - Clocks《Greatest Hits》16Bit/44.1KHz
Vivaldi - 4 Seasons Spring Allegro《Gala Stradivarius Concert》16Bit/44.1KHz
Gamma Ray - My Temple《Majesty》16Bit/44.1KHz
Eric Clapton - Wonderful Tonight《Slowhand》(Stereo SACD) 24bit/88.2KHz
Hans Zimmer & James Newton Howard - Why So Serious《The Dark Knight OST》24bit/96kHz
所选曲目有流行、古典、民谣、金属等,覆盖范围较广。
&&测试方法——
&&44.1KHz采样的音源直接用Foobar转换成VBR模式的苹果Quciktime aac(简称qtaac)和opus,高于48KHz的音源SSRC重采样到16Bit/48KHz的Wave,再用生成的Wave用Foobar转换成VBR模式的qtaac和opus,进行盲听测试。
测试结果——
&&从听感来讲,256K的Opus让我虎躯一震,它蕴含的音频素质超过了我的预期,低频上同qtaac对比好不少,与Lame编码的MP3格式刻意下潜的低频不同,Opus饱满丰盈的低频与无损差别甚微,中频扎实,既没有Nero稍稍的刻意渲染也无削弱感,高频没有qtaac稍稍毛刺那样的感觉,干净利落,一句话概括,opus的特点就是扎实,还原度非常优秀。
频谱对比:
Opus 音乐优化——
Opus 默认——
对众多的频谱党来说,这才是他们关心的环节。我再次(也不知多少次)强调:频谱和听感是完全不同甚至多数时候是完全相反的!!无损的频谱好看,那是因为有充足的码率,对于码率有限的有损音频来说,频谱几乎是一无是处!!!同编码器、同码率的有损音频,频谱越好看听感其实越差,与其将码率用于人耳难以分辨的20KHz以上远远不如省下码率用在20KHz以下!
现在我还是要将无损、qtaac和Opus的频谱做对比,是用来解释为什么Opus的声音素质要强于qtaac,同时也能看到Opus令我极为惊讶的超强表现!!
频谱图赏析:
1、同码率下qtaac的范围到了22KHz,Opus到20KHz,Opus的实际听感更好。
2、Opus的音乐模式编码和默认模式编码的频谱看不出有丝毫的不同,但是用hash工具又能得出两个文件并不一样。
3、仔细对比一下,Opus的频谱图就像是无损的频谱图等比缩放到20KHz以内,强悍到令人震惊啊!!我捣鼓有损音频格式也有些年头了,还真是第一次见到和无损音频如此接近的频谱图,其它有损格式即使码开到最高,频谱图也有很大的改变。
再把无损转化为48K 80K 128K 192K 224K 288K 320K 512K,分析频谱图(不贴图了,所有原图可以在下面的链接中下载)+盲听可以得到三点结论:
1、频谱范围全在0-20KHz之间,可以说从频谱上看不出音质好坏。
2、从我的设备上讲192K以上的编码想要听出差别已经相当难了。
3、320K以下的编码在频谱上有些异同,而320K以上几乎没有异同了。
结论:码率选择最好在192K-320K之间,所以256K很合适。
&&再看看这两张频谱图,你能想像的到有一张是40K的码率一张是512K码率的吗?频谱党们开开眼界吧。
&&更多的频谱对比原图下载链接:
六、结束语
不可否认,在AAC已经很难有进步的现在,Opus格式的发展潜力是巨大的,虽然现在还处在开发阶段,目前很多移动设备和解码工具并不支持,但目前的形势相当乐观,无论是技术的先进性还是foobar、Skype、Firefox等的大力支持和推广,都昭示着新一代的音频格式Opus很有可能在未来替代AAC成为音频格式霸主。
移动设备支持也很重要啊
flac党无视 飘过
版排的不错,关键还是得看市场化推广力度是否得力,aac就是个例子,musepack就是个悲剧,叫好不叫座,快废了。
很多不错的格式都因为普及问题而从人们的视野中消失
有了无损,已经把有损基本淘汰了
有不尽相同的文章 估计都是楼主原创的 最好结合一下嘛
一面世就自个称王称霸的大多没好下场。呵呵
闪存芯片的容量大幅度提升,价格大幅度下降,无损已经基本没有门槛了,有损的容量小的优点已经很不明显。
霸主应该是WAV吧?
说什么无损嘛,好源的音质又有多少。
用512kbps最高码率vbr压,容量比mpc 最高码率 文件容量 大很多,约40%。
難得看到有人作跟我一樣的測試
還在同一天 看來也是因為foobar2000的關係吧 XD
& 仔细对比一下,Opus的频谱图就像是无损的频谱图等比缩放到20KHz以内
這邊的推測跟我推論的大致上相同
64kbps 的頻譜圖
但是有個重點沒提到
他不僅是失損格式,還會加 filter 進去 生出一些本來就沒有的聲音(echo,noise...)
進行所謂的&還原&,在低流量 這是好事
高流量的話就是個很大的問號了
聽不聽的出來是一回事 跟其他格式差距多少(或者已經不是原來的音樂) 那是另一回事
他的優點官方已經給了很大的暗示
16~32kbps 的wideband、super wideband 品質還可以
未來有可能應用在網路廣播、演講錄音,或者數位電視上
一般使用者環境不一定會取代的掉現有格式
自己實際上的測試
就演講而言16kbps~32kbps 真的已經很好了
圖是放在Google 上,如果看不到在留言
--quiet --bitrate 256 - %d
Fill the fields with the following values:
Encoder file: opusenc.exe
Extension: opus
Parameters: --quiet --bitrate 64 - %d
Format is: lossy
Highest BPS mode supported: 32
Encoder name: Opus
Bitrate (kbps): 64
AAC最高32Bit,這個最高能支持多少
RMAA测了一下,256kbps的失真比320kbps的lame mp3要大。主要是IMD非常高,而且不知道为什么相位失真非常大,头一次见到这样的有损编码器。
谁还玩有损啊,浪费时间
因為他是22kHz scale down 到 20kHz (再用sample rate 48kHz 重新採樣)
因此全部音階都有相位差,然後再加上他自己還添加 echo 跟一些noise
如果跟其他 lossy 格式相比,聲音應該是會稍微低沉 悶 (我個人是不太喜歡opus 聽起來的感覺)
引用第18楼ramiel于 16:13发表的 :
谁还玩有损啊,浪费时间不算是浪費時間,至少在廣播 或者錄音方面非常有用
mp3 在廣播上要有合格的音質 那需要128kbps 以上
ogg,aac 則是96kbps 以上
但是opus 則可降到 64kbps 或者更低,32kbps 恐怕也可以
opus 概念上是不錯是很好嘗試
如果他可以不要scale down 那就更好了
) 粤公网安备 98号
Powered by

我要回帖

更多关于 intel hm55支持的cpu 的文章

 

随机推荐