问题描述
通过av_frame_alloc()申请完avframe的内存后,需调用av_frame_get_buff()为frame->data分配内存。在调用avframe_get_buffer()这个接口之前需要设置音视频的参数。
音频:采样格式,采样个数,通道数。
- avframe中存放的是原始数据,采样个数从哪里来?
- 打开编码器的时候,licbavodec会设置音频的采样个数frame_size,可以通过这个值设置avframe中的采样个数nb_samples嘛?
总结
AAC:
4096:一帧的原始数据量是指两个通道的总字节数。
88200:44100*2= 1s 编了多少个字节。
88200/4096 = 1s 编了多少帧
所以av_read_frame是,pkt.size是21.5帧的总长度。av_read_frame是1s读取一次。