From 50a5853728ecc8f2dde96641bfea55de8d890a11 Mon Sep 17 00:00:00 2001 From: kingslay Date: Sat, 18 Nov 2023 22:47:41 +0800 Subject: [PATCH] fix #644 --- Demo/demo-iOS/demo-iOS.xcodeproj/project.pbxproj | 8 ++++---- Demo/demo-tvOS/demo-tvOS.xcodeproj/project.pbxproj | 8 ++++---- Sources/KSPlayer/AVPlayer/KSOptions.swift | 2 +- Sources/KSPlayer/MEPlayer/AudioEnginePlayer.swift | 8 ++++---- Tests/KSPlayerTests/{ => Resources}/test.m3u | 0 5 files changed, 13 insertions(+), 13 deletions(-) rename Tests/KSPlayerTests/{ => Resources}/test.m3u (100%) diff --git a/Demo/demo-iOS/demo-iOS.xcodeproj/project.pbxproj b/Demo/demo-iOS/demo-iOS.xcodeproj/project.pbxproj index 46ae548ca..09263466f 100644 --- a/Demo/demo-iOS/demo-iOS.xcodeproj/project.pbxproj +++ b/Demo/demo-iOS/demo-iOS.xcodeproj/project.pbxproj @@ -16,7 +16,7 @@ AC3E54AC24B9E815002B6B1B /* Localized.strings in Resources */ = {isa = PBXBuildFile; fileRef = AC3E491D24B98CEB002B6B1B /* Localized.strings */; }; AC458DE621DF830F00BD4CF9 /* AudioViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC458DE521DF830F00BD4CF9 /* AudioViewController.swift */; }; AC68AA322AD3FA320061A4CA /* MEPlayerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC68AA312AD3FA310061A4CA /* MEPlayerViewController.swift */; }; - ACCB7FF32B05F7C700273BAA /* test.m3u in Resources */ = {isa = PBXBuildFile; fileRef = ACCB7FF22B05F7C700273BAA /* test.m3u */; }; + AC78D5DA2B09056B00A28998 /* test.m3u in Resources */ = {isa = PBXBuildFile; fileRef = AC78D5D92B09056B00A28998 /* test.m3u */; }; ACE8052D2A83B92800690A9B /* RootViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACE8052C2A83B92800690A9B /* RootViewController.swift */; }; /* End PBXBuildFile section */ @@ -36,8 +36,8 @@ AC3E498E24B9CB5E002B6B1B /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = LaunchScreen.storyboard; sourceTree = ""; }; AC458DE521DF830F00BD4CF9 /* AudioViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioViewController.swift; sourceTree = ""; }; AC68AA312AD3FA310061A4CA /* MEPlayerViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MEPlayerViewController.swift; sourceTree = ""; }; + AC78D5D92B09056B00A28998 /* test.m3u */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = test.m3u; path = ../../../Tests/KSPlayerTests/Resources/test.m3u; sourceTree = ""; }; AC7E04DB2414DA5E00B0F540 /* libxml2.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libxml2.tbd; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/lib/libxml2.tbd; sourceTree = DEVELOPER_DIR; }; - ACCB7FF22B05F7C700273BAA /* test.m3u */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = test.m3u; path = ../../../Tests/KSPlayerTests/test.m3u; sourceTree = ""; }; ACE8052C2A83B92800690A9B /* RootViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RootViewController.swift; sourceTree = ""; }; /* End PBXFileReference section */ @@ -90,7 +90,7 @@ AC08619420B69AB400D801FC /* DetailViewController.swift */, AC08619520B69AB400D801FC /* MasterViewController.swift */, AC458DE521DF830F00BD4CF9 /* AudioViewController.swift */, - ACCB7FF22B05F7C700273BAA /* test.m3u */, + AC78D5D92B09056B00A28998 /* test.m3u */, AC3E498E24B9CB5E002B6B1B /* LaunchScreen.storyboard */, AC08615520B69A4500D801FC /* Assets.xcassets */, AC08615A20B69A4500D801FC /* Info.plist */, @@ -176,7 +176,7 @@ AC3E54AC24B9E815002B6B1B /* Localized.strings in Resources */, AC3E54AB24B9E810002B6B1B /* LaunchScreen.storyboard in Resources */, AC08615620B69A4500D801FC /* Assets.xcassets in Resources */, - ACCB7FF32B05F7C700273BAA /* test.m3u in Resources */, + AC78D5DA2B09056B00A28998 /* test.m3u in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Demo/demo-tvOS/demo-tvOS.xcodeproj/project.pbxproj b/Demo/demo-tvOS/demo-tvOS.xcodeproj/project.pbxproj index 889b13176..b9a577c5f 100644 --- a/Demo/demo-tvOS/demo-tvOS.xcodeproj/project.pbxproj +++ b/Demo/demo-tvOS/demo-tvOS.xcodeproj/project.pbxproj @@ -13,9 +13,9 @@ AC3A420323D32DFE00B666A4 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC3A41FF23D32DFE00B666A4 /* AppDelegate.swift */; }; AC3A420423D32DFE00B666A4 /* DetailViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC3A420023D32DFE00B666A4 /* DetailViewController.swift */; }; AC3A420523D32DFE00B666A4 /* AudioViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC3A420123D32DFE00B666A4 /* AudioViewController.swift */; }; + AC78D5DC2B09057900A28998 /* test.m3u in Resources */ = {isa = PBXBuildFile; fileRef = AC78D5DB2B09057900A28998 /* test.m3u */; }; AC80333224BA1B54002B3D40 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AC80333124BA1B54002B3D40 /* Main.storyboard */; }; ACBBA9802A8503F400D262FC /* RootViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACBBA97F2A8503F400D262FC /* RootViewController.swift */; }; - ACCB7FF52B05F7E300273BAA /* test.m3u in Resources */ = {isa = PBXBuildFile; fileRef = ACCB7FF42B05F7E300273BAA /* test.m3u */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -29,9 +29,9 @@ AC3A41FF23D32DFE00B666A4 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = AppDelegate.swift; path = "../../demo-iOS/demo-iOS/AppDelegate.swift"; sourceTree = ""; }; AC3A420023D32DFE00B666A4 /* DetailViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = DetailViewController.swift; path = "../../demo-iOS/demo-iOS/DetailViewController.swift"; sourceTree = ""; }; AC3A420123D32DFE00B666A4 /* AudioViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = AudioViewController.swift; path = "../../demo-iOS/demo-iOS/AudioViewController.swift"; sourceTree = ""; }; + AC78D5DB2B09057900A28998 /* test.m3u */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = test.m3u; path = ../../../Tests/KSPlayerTests/Resources/test.m3u; sourceTree = ""; }; AC80333124BA1B54002B3D40 /* Main.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = Main.storyboard; sourceTree = ""; }; ACBBA97F2A8503F400D262FC /* RootViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = RootViewController.swift; path = "../../demo-iOS/demo-iOS/RootViewController.swift"; sourceTree = ""; }; - ACCB7FF42B05F7E300273BAA /* test.m3u */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = test.m3u; path = ../../../Tests/KSPlayerTests/test.m3u; sourceTree = ""; }; D4B47B55C1204959E7C6D995 /* Pods-demo-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-demo-tvOS.release.xcconfig"; path = "../Pods/Target Support Files/Pods-demo-tvOS/Pods-demo-tvOS.release.xcconfig"; sourceTree = ""; }; F227C20AECAAE8524D2F0F1D /* Pods_demo_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_demo_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ @@ -74,7 +74,7 @@ AC3A420123D32DFE00B666A4 /* AudioViewController.swift */, AC3A420023D32DFE00B666A4 /* DetailViewController.swift */, AC3A41FE23D32DFD00B666A4 /* MasterViewController.swift */, - ACCB7FF42B05F7E300273BAA /* test.m3u */, + AC78D5DB2B09057900A28998 /* test.m3u */, AC08611E20B69A1C00D801FC /* Assets.xcassets */, AC80333124BA1B54002B3D40 /* Main.storyboard */, AC08612020B69A1C00D801FC /* Info.plist */, @@ -164,7 +164,7 @@ buildActionMask = 2147483647; files = ( AC80333224BA1B54002B3D40 /* Main.storyboard in Resources */, - ACCB7FF52B05F7E300273BAA /* test.m3u in Resources */, + AC78D5DC2B09057900A28998 /* test.m3u in Resources */, AC08611F20B69A1C00D801FC /* Assets.xcassets in Resources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/Sources/KSPlayer/AVPlayer/KSOptions.swift b/Sources/KSPlayer/AVPlayer/KSOptions.swift index 193280cab..05d9b5f96 100644 --- a/Sources/KSPlayer/AVPlayer/KSOptions.swift +++ b/Sources/KSPlayer/AVPlayer/KSOptions.swift @@ -324,7 +324,7 @@ open class KSOptions { if KSOptions.displayCriteriaFormatDescriptionEnabled, #available(tvOS 17.0, *) { displayManager.preferredDisplayCriteria = AVDisplayCriteria(refreshRate: refreshRate, formatDescription: formatDescription) } else { - let dynamicRange = isDovi ? .dolbyVision : formatDescription.dynamicRange +// let dynamicRange = isDovi ? .dolbyVision : formatDescription.dynamicRange // displayManager.preferredDisplayCriteria = AVDisplayCriteria(refreshRate: refreshRate, videoDynamicRange: dynamicRange.rawValue) } } diff --git a/Sources/KSPlayer/MEPlayer/AudioEnginePlayer.swift b/Sources/KSPlayer/MEPlayer/AudioEnginePlayer.swift index 0f2a282d3..d1c8a110b 100644 --- a/Sources/KSPlayer/MEPlayer/AudioEnginePlayer.swift +++ b/Sources/KSPlayer/MEPlayer/AudioEnginePlayer.swift @@ -194,10 +194,10 @@ public class AudioEnginePlayer: AudioOutput { engine.connect(nodes: nodes, format: audioFormat) engine.prepare() if isRunning { - do { - try engine.start() - } catch { - KSLog(error) + try? engine.start() + // 从多声道切换到2声道马上调用start会不生效。需要异步主线程才可以 + DispatchQueue.main.async { [weak self] in + self?.play(time: 0) } } } diff --git a/Tests/KSPlayerTests/test.m3u b/Tests/KSPlayerTests/Resources/test.m3u similarity index 100% rename from Tests/KSPlayerTests/test.m3u rename to Tests/KSPlayerTests/Resources/test.m3u