8-3 player.c 参数使用错误 audio_buf_size

来源:8-22 一个真正的播放器(三)

iStream

2024-07-13

1.在player.c audio_buf_size 参数的意义是解码后的音频帧数据的大小
2.在 player.c 第 555 错误的用到 重采样分配空间的大小,这行需要新声明一个参数 不能用 audio_buf_size

3.会导致在计算音频时间时在某些时刻错误,本来是获取 , 音频帧数据的大小。却取获取到重采样分配空间的大小。

打印如下
重采样分配空间的大小 6560
音频帧数据的大小 4096

schedule_refresh_time= 99ms
sar = 0/1,aspect_ratio = 427/240,d_width/d_height = 854/480 pic_w/pic_h = 854/480 
开辟:6560  重采样分配空间的大小
解码:4096
开辟:6560
解码:4096
开辟:6560
解码:4096
开辟:6560
解码:4096
clock:4096  音频帧数据的大小
写回答

1回答

李超

2024-07-14

音频解码后,并不能直接给扬声器播放,因为扬声器有自己的参数,如果音频解码后的数据与扬声器数据参数不匹配,播放出的声音是有问题的,所以才需要对音频重采样。

0
0

经典再升级-FFmpeg5.0核心技术精讲,打造音视频播放器

学好FFmpeg核心技术,做高效,高薪,有竞争力的音视频工程师

2732 学习 · 814 问题

查看课程