尝试实现AVAudioplayer并获取播放音乐的一些计量数据,但仍然获得-160的值。 它看起来很容易使用,只需启用Meter然后在计时器下拾取数据,但到目前为止没有结果。
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]);
欢迎任何想法。
答案 0 :(得分:2)
你打电话给updateMeters
吗? peakPowerForChannel:
和averagePowerForChannel:
的文档都说:
要获取当前值[...],必须在调用此方法之前调用
updateMeters
方法。
答案 1 :(得分:1)
您如何知道网址的工作原理,最后的数据是正确的格式?你能听到扬声器传来的东西吗?
你是以某种方式制作两个playerAV对象,一个是正确的URL播放,另一个是坏网址,什么都不播放,是计时器在调用NSLog()时看到的那个?