Objective c AVAudioPlayer仪表值仍然为-160

Objective c AVAudioPlayer仪表值仍然为-160,objective-c,avaudioplayer,metering,Objective C,Avaudioplayer,Metering,尝试实现AVAudioplayer并获得播放音乐的一些计量数据,但仍然得到值-160。 它看起来很容易使用,只需启用仪表,然后在计时器下拾取数据,但到目前为止还没有结果 playerAV = [[AVAudioPlayer alloc] initWithContentsOfURL:outURL error:nil]; playerAV.delegate = self; playerAV.meteringEnabled = YES; [play

尝试实现AVAudioplayer并获得播放音乐的一些计量数据,但仍然得到值-160。 它看起来很容易使用,只需启用仪表,然后在计时器下拾取数据,但到目前为止还没有结果

playerAV = [[AVAudioPlayer alloc] initWithContentsOfURL:outURL error:nil]; playerAV.delegate = self; playerAV.meteringEnabled = YES; [playerAV prepareToPlay]; [playerAV play]; NSLog(@"Peak left: %f Avg right: %f", [playerAV peakPowerForChannel:0],[playerAV averagePowerForChannel:1]); playerAV=[[AVAudioPlayer alloc]initWithContentsOfURL:outURL错误:nil]; playerAV.delegate=self; playerAV.meteringEnabled=是; [玩家准备游戏]; [playerAV play]; NSLog(@“左峰值:%f平均右峰值:%f”,[playerAV峰值功率或频道:0],[playerAV平均功率或频道:1]); 欢迎有任何想法。

你打电话来吗?和的文档都说:

要获取当前[…]值,必须在调用此方法之前调用
updateMeters
方法


您如何知道url的工作原理,以及它末尾的数据是正确的格式?你能听到扬声器里传来的声音吗

您是否以某种方式创建了两个playerAV对象,一个使用正确的URL播放,另一个使用错误的URL不播放任何内容,并且是计时器在调用NSLog()时看到的对象