Move ResumeOnce out of closure for Swift compile.
This commit is contained in:
parent
77ddc8b6a3
commit
4064406d20
1 changed files with 12 additions and 11 deletions
|
|
@ -4,6 +4,18 @@ import os.log
|
|||
|
||||
private let proxyLog = Logger(subsystem: "nl.vonas.mediacluster.ios", category: "ClearKeyProxy")
|
||||
|
||||
private final class ResumeOnce: @unchecked Sendable {
|
||||
private var done = false
|
||||
private let lock = NSLock()
|
||||
func run(_ body: () -> Void) {
|
||||
lock.lock()
|
||||
defer { lock.unlock() }
|
||||
guard !done else { return }
|
||||
done = true
|
||||
body()
|
||||
}
|
||||
}
|
||||
|
||||
/// Lokale HTTP-proxy: haalt DASH MPD/segmenten op, strip DRM-metadata, decrypt CENC met ClearKey.
|
||||
/// VLC speelt daarna plain DASH vanaf 127.0.0.1.
|
||||
final class ClearKeyDashProxy {
|
||||
|
|
@ -45,17 +57,6 @@ final class ClearKeyDashProxy {
|
|||
self.cryptoState = CencMp4Decryptor.SessionState()
|
||||
self.generation += 1
|
||||
|
||||
final class ResumeOnce: @unchecked Sendable {
|
||||
private var done = false
|
||||
private let lock = NSLock()
|
||||
func run(_ body: () -> Void) {
|
||||
lock.lock()
|
||||
defer { lock.unlock() }
|
||||
guard !done else { return }
|
||||
done = true
|
||||
body()
|
||||
}
|
||||
}
|
||||
let once = ResumeOnce()
|
||||
|
||||
do {
|
||||
|
|
|
|||
Loading…
Reference in a new issue