used better names

This commit is contained in:
Alex Kim
2026-01-10 02:56:28 +11:00
parent d1fdea76e8
commit 2ead569fb7
2 changed files with 18 additions and 18 deletions

View File

@@ -4,17 +4,17 @@ import CoreMedia
import CoreVideo
import AVFoundation
protocol MPVSoftwareRendererDelegate: AnyObject {
func renderer(_ renderer: MPVSoftwareRenderer, didUpdatePosition position: Double, duration: Double)
func renderer(_ renderer: MPVSoftwareRenderer, didChangePause isPaused: Bool)
func renderer(_ renderer: MPVSoftwareRenderer, didChangeLoading isLoading: Bool)
func renderer(_ renderer: MPVSoftwareRenderer, didBecomeReadyToSeek: Bool)
func renderer(_ renderer: MPVSoftwareRenderer, didBecomeTracksReady: Bool)
protocol MPVLayerRendererDelegate: AnyObject {
func renderer(_ renderer: MPVLayerRenderer, didUpdatePosition position: Double, duration: Double)
func renderer(_ renderer: MPVLayerRenderer, didChangePause isPaused: Bool)
func renderer(_ renderer: MPVLayerRenderer, didChangeLoading isLoading: Bool)
func renderer(_ renderer: MPVLayerRenderer, didBecomeReadyToSeek: Bool)
func renderer(_ renderer: MPVLayerRenderer, didBecomeTracksReady: Bool)
}
/// MPV player using vo_avfoundation for video output.
/// This renders video directly to AVSampleBufferDisplayLayer for PiP support.
final class MPVSoftwareRenderer {
final class MPVLayerRenderer {
enum RendererError: Error {
case mpvCreationFailed
case mpvInitialization(Int32)
@@ -36,7 +36,7 @@ final class MPVSoftwareRenderer {
private var isRunning = false
private var isStopping = false
weak var delegate: MPVSoftwareRendererDelegate?
weak var delegate: MPVLayerRendererDelegate?
// Thread-safe state for playback
private var _cachedDuration: Double = 0
@@ -132,7 +132,7 @@ final class MPVSoftwareRenderer {
// Setup wakeup callback
mpv_set_wakeup_callback(handle, { ctx in
guard let ctx = ctx else { return }
let instance = Unmanaged<MPVSoftwareRenderer>.fromOpaque(ctx).takeUnretainedValue()
let instance = Unmanaged<MPVLayerRenderer>.fromOpaque(ctx).takeUnretainedValue()
instance.processEvents()
}, Unmanaged.passUnretained(self).toOpaque())

View File

@@ -38,7 +38,7 @@ struct VideoLoadConfig {
// to apply the proper styling (e.g. border radius and shadows).
class MpvPlayerView: ExpoView {
private let displayLayer = AVSampleBufferDisplayLayer()
private var renderer: MPVSoftwareRenderer?
private var renderer: MPVLayerRenderer?
private var videoContainer: UIView!
private var pipController: PiPController?
@@ -83,7 +83,7 @@ class MpvPlayerView: ExpoView {
videoContainer.bottomAnchor.constraint(equalTo: bottomAnchor)
])
renderer = MPVSoftwareRenderer(displayLayer: displayLayer)
renderer = MPVLayerRenderer(displayLayer: displayLayer)
renderer?.delegate = self
// Setup PiP
@@ -276,10 +276,10 @@ class MpvPlayerView: ExpoView {
}
}
// MARK: - MPVSoftwareRendererDelegate
// MARK: - MPVLayerRendererDelegate
extension MpvPlayerView: MPVSoftwareRendererDelegate {
func renderer(_: MPVSoftwareRenderer, didUpdatePosition position: Double, duration: Double) {
extension MpvPlayerView: MPVLayerRendererDelegate {
func renderer(_: MPVLayerRenderer, didUpdatePosition position: Double, duration: Double) {
cachedPosition = position
cachedDuration = duration
@@ -298,7 +298,7 @@ extension MpvPlayerView: MPVSoftwareRendererDelegate {
}
}
func renderer(_: MPVSoftwareRenderer, didChangePause isPaused: Bool) {
func renderer(_: MPVLayerRenderer, didChangePause isPaused: Bool) {
DispatchQueue.main.async { [weak self] in
guard let self else { return }
// Don't update intendedPlayState here - it's only set by user actions (play/pause)
@@ -314,7 +314,7 @@ extension MpvPlayerView: MPVSoftwareRendererDelegate {
}
}
func renderer(_: MPVSoftwareRenderer, didChangeLoading isLoading: Bool) {
func renderer(_: MPVLayerRenderer, didChangeLoading isLoading: Bool) {
DispatchQueue.main.async { [weak self] in
guard let self else { return }
self.onPlaybackStateChange([
@@ -323,7 +323,7 @@ extension MpvPlayerView: MPVSoftwareRendererDelegate {
}
}
func renderer(_: MPVSoftwareRenderer, didBecomeReadyToSeek: Bool) {
func renderer(_: MPVLayerRenderer, didBecomeReadyToSeek: Bool) {
DispatchQueue.main.async { [weak self] in
guard let self else { return }
self.onPlaybackStateChange([
@@ -332,7 +332,7 @@ extension MpvPlayerView: MPVSoftwareRendererDelegate {
}
}
func renderer(_: MPVSoftwareRenderer, didBecomeTracksReady: Bool) {
func renderer(_: MPVLayerRenderer, didBecomeTracksReady: Bool) {
DispatchQueue.main.async { [weak self] in
guard let self else { return }
self.onTracksReady([:])