@@ -886,7 +886,9 @@
- (void)freePlayer {
if (_mergePlayer) {
- [self.mergePlayer freePlayer];
+ dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
+ [self.mergePlayer freePlayer];
+ });
}
if (_videoView) {
[self.videoView freePlayer];
@@ -458,12 +458,7 @@
[self stopPlay];
- [self.audioEngine stop];
- // 停止并清理定时器
- if (_timer) {
- [_timer invalidate];
- _timer = nil;
- }
+ [self.audioEngine.mainMixerNode removeTapOnBus:0];
- (void)startTimer {
@@ -571,6 +566,11 @@
- (void)dealloc {
NSLog(@"---- KSMergeEnginePlayer dealloc");
+ // 停止并清理定时器
+ if (_timer) {
+ [_timer invalidate];
+ _timer = nil;
+ }
[[NSNotificationCenter defaultCenter] removeObserver:self];