MP3 Encoding
* 编码MP3文件必须按如下顺序使用LAME API
1.
[Optional] 如果对lame版本感兴趣,使用
get_lame_version()获得。
2.
[Optional] 设置lame的输出函数errorf(),debugf(),msgf()。
3.
[Required] lame_global_flags*
lame_init()初始化编码器。编码器的初始设置会输出[J-Stereo, 44.1khz, 128kbps, CBR ,quality 5]规格的MP3文件。使用一些的set/get方法调整参数,控制蔬菜MP3文件的质量和大小。
4.
[Required]
lame_init_params()根据编码器的现有设置初始化编码器内部的设置。函数的返回值表明执行的结果。
5.
[Required] 使用
lame_encode_buffer()将输入的PCM数据编码成MP3数据。
6.
[Required] 使用
lame_encode_flush()将mp3buffer中的MP3数据输出。
7.
[Required] 使用
lame_mp3_tags_fid()将VBR/INFO tags封装到一个MP3 Frame中,写到文件开头。如果输出流没有办法回溯,那么必须在第3步设置
lame_set_bWriteVbrTag(gfp,0),
这一步调用
lame_mp3_tags_fid(lame_global_flags *,FILE* fid)将fid参数=NULL。这样的话那个开头的信息帧(MP3 FRAME)的所有字节都是0。
8.
[Required] 释放所有内部参数使用的空间。
lame_close()。