linux编译lame,lame mp3 源码 分析

#2013_10_10   星期四   add by greshem

H:\portage\media-sound\lame\lame-3.99.5.chm::/S/91.html#L436

main              436 frontend/main.c int main(int argc, char *argv[])

464 lame_init(); /* initialize libmp3lame */

612 lame_main(lame_t gf, int argc, char **argv)

lame_set_write_id3tag_automatic(gf, 0);

lame_init_params(gf);

lame_get_decode_only(gf)) {

lame_decoder(gf, outf, inPath, outPath);

lame_encoder(gf, outf, 0, inPath, outPath);

lame_encoder_loop(gf, outf, nogap, inPath, outPath);

lame_get_id3v2_tag(gf, 0, 0);

lame_get_id3v2_tag(gf, id3v2tag, id3v2_size);

get_audio(gf, Buffer);

lame_encode_buffer_int(gf, Buffer[0], Buffer[1], iread,

lame_encode_buffer_template(gfp, pcm_l, pcm_r, nsamples, mp3buf, mp3buf_size, pcm_int_type, 1, norm);

lame_copy_inbuffer(gfc, buffer_l, buffer_l, nsamples, pcm_type, aa, norm);

lame_encode_buffer_sample_t(gfc, nsamples, mp3buf, mp3buf_size);

lame_encode_mp3_frame(gfc, mfbuf[0], mfbuf[1], mp3buf, buf_size);

#重点流程 一共 5个步骤, 存 数值计算

lame_encode_flush(gf, mp3buffer, sizeof(mp3buffer)); /* may return one more mp3 frame , 收尾工作*/

write_xing_frame(gf, outf, id3v2_size);

parse_nogap_filenames(nogapout, nogap_inPath[i], outPath, nogapdir);

init_files(gf, nogap_inPath[i], outPath);

lame_init_bitstream(gf);

lame_set_nogap_total(gf, max_nogap);

lame_set_nogap_currentindex(gf, i);

lame_encoder(gf, outf, use_flush_nogap, nogap_inPath[i], outPath);

阅读(1488) | 评论(0) | 转发(0) |

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值