4 命令行编码器/解码器
Speex最基本的是命令行编码器(speexenc)和解码器(speexdec)。这些工具产生并读取封装在Ogg容器内的Speex文件。尽管能在任意容器内封装Speex,但Ogg是文件命令行容器。这一部分介绍如何在Ogg中为Speex文件使用命令行工具。
4.1 speexenc
speexenc的作用是从未加工的PCM文件或wave文件生成Speex文件。可通过如下调用:
speexenc [options] input_file output_file
input_file或output_file的‘-’值分别对应标准输入和标准输出。有效的选项有:
-narrowband(-n) 告诉Speex默认将输入视为窄带(8kHz)
-wideband(-n) 告诉Speex将输入视为宽带(16kHz)
-ultra-wideband(-u) 告诉Speex将输入视为超宽带(32kHz)
-quality n 设置编码质量(0-10),默认为8
-bitrate n 编码比特率(比特率将小于等于n)
-vbr n 启用VBR(可变比特率),默认禁用
-abr n 启用ABR(平均比特率)为n kbps,默认禁用
-vad 启用VAD(声音活动检测),默认禁用
-dtx 启用DTX(断续传输),默认禁用
-nrames n 每个Ogg数据包包含n帧(这在低比特率时能节省空间)
-comp n 设置编码速度和质量的折中,n值越大,编码速度越慢(默认为3)
-V 详细的操作,输出所使用的比特率
-help(-h) 输出帮助
-version(-v) 输出版本信息
Speex注释
-comment 增加给定的字符串为额外的注释,这可能花费几倍时间
-author 声道作者
-title 声道标题
原始输入选项
-rate n 原始输入的采样率
-stereo