常见NuPlayer错误log根因

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012188065/article/details/86598078

1、 NuPlayerRenderer中 onDrainAudioQueue(): audio sink is not ready

遇到情况是由于 AudioOutput::getPosition 返回err导致

1.1 可能是由于 sp<MediaPlayerBase::AudioSink> mAudioSink 中的 mTrack 为 null

当 NuPlayerDecoder 接收到底层codec解码的第一帧有效数据时,会通知NuPlayerRender去open AudioSink
才会去new 其 mTrack。
故NuPlayerDecoder 接收的第一帧数据有问题, AudioSink 压根没有打开,会由此错误,
应该排查
1、extractor 读出的一包数据是否有问题,size是否为0 (文件不规范,extractor校验比较严格时,会有此种情况)
2、codec解码首帧数据是否有报错

2.1 可能是Audio Bsp底层硬件打开慢,还未准备好,此种情况少见。

猜你喜欢

转载自blog.csdn.net/u012188065/article/details/86598078