Speex之四--编码器/解码器命令行

来源:互联网 发布:linux 安装monaco 编辑:程序博客网 时间:2024/06/07 05:48

Speex的基本描述包括一个命令行编码器和解码器. 那些工具产生和读包装在OGG容器的Speex文件.虽然它是可以封装Speex在任意容器的,但Ogg被推荐为文件的容器的.本段描述如何为Ogg的Speex文件使用命令行工具

4.1 speexenc
Speexenc单元是通过裸PCM或wave文件被使用于创建Speex文件. 可使用下面命令:
speexenc [操作] input_file output_file 
值input_file和output_file分别对应stdin和stdout

有效的设置:
–narrowband(-n) 告诉Speex视输入信号为窄带(8kHz),这是默认的
–wideband (-w) 告诉Speex视输入信号为宽带(16khz)
–ultra-wideband (-u) 告诉Speex视输入信号为超宽带(32khz)
–quality n 设置编码质量(0-10),默认为8
–bitrate n 编码比特率(使用比特率小于等于n)
–vbr 开启VBR(可变比特率),默认关闭
–abr n 开启ABR(平均比特率)在n kbps,默认关闭
–vad 开启VAD(语音活动性检测),默认关闭
–dtx 开启DTX(间断性传输),默认关闭
–nframes n 打包n帧到每一个ogg包中(这节省了空间)
–comp n 设置编码速度/质量权衡.n的值越高,编码越慢(默认为3)
-V 冗长的操作,打印当前使用的比特率
–help (-h) 打印帮助
–version (-v) 打印版本信息

Speex内容:
–comment 增加被给的字符串作为额外内容.这可以会被使用多次.
–author 作者
–title  题目

裸输入设置:
–rate n 裸输入的采样率
–stereo 认为裸输为立体声的
–le 裸输入是小端的
–be 裸输入是大端的
–8bit 裸输入是8位无符号的
–16bit 裸输入是16位有符号的


4.2 speexdec
Speex解码单位被使用于解码Speex文件. 使用被使用能过调用:
speexdec [操作] speex文件 [输出文件]
当没有指定输出文件,文件将通过声卡播放.

有效设置是:
–enh 开启post-filter(默认)
–no-enh 关闭post-filter
–force-nb 强制使用窄带解码
–force-wb 强制使用宽带解码
–force-uwb 强制使用超宽带解码
–mono 强制使用单声道解码
–stereo 强制使用立体声解码
–rate n 强制使用nHz采样率解码
–packet-loss 模拟n%的随机丢包
–V 冗长的操作,打印当前使用的比特率 
–help (-h) 打印帮助

–version (-v) 打印版本信息