How can I fade-out the sound played by MPMusicPlay

2019-02-19 19:44发布

I'd like to fade-out the sound played by MPMusicPlayerController over a particular time period? How can I do this?

1条回答
来,给爷笑一个
2楼-- · 2019-02-19 20:09

There is no fade functionality so you have to implement it yourself. Loop until volume is 0, and add a delay for each step. If you want all this to happen 2 seconds into the future, put the code on a block:

MPMusicPlayerController *iPod = [MPMusicPlayerController iPodMusicPlayer];

int64_t delay = 2LL * NSEC_PER_SEC;
dispatch_after(dispatch_time(DISPATCH_TIME_NOW,delay), dispatch_get_current_queue(), ^{
    while (iPod.volume>.1){
        iPod.volume -= .1;
        [NSThread sleepForTimeInterval:0.1];
    }
});
查看更多
登录 后发表回答