AVPictureInPictureController, setPlaying playing: Bool) {} public func pictureInPictureControllerTimeRangeForPlayback(_ pictureInPictureController: AVPictureInPictureController) -> CMTimeRange { .init( start: .indefinite, // 30ʹηοτ duration: .init(seconds: 60 * 60 * 24 * 30, preferredTimescale: .init(1)) ) } public func pictureInPictureControllerIsPlaybackPaused(_ pictureInPictureController: AVPictureInPictureController) -> Bool { false // ˒canStartPictureInPictureAutomaticallyFromInline = true ʢόοΫάϥϯυભҠ࣌ʹࣗಈͰPiP͕։࢝͢ΔʣͷͨΊʹfalseʹ͢Δ } public func pictureInPictureController(_ pictureInPictureController: AVPictureInPictureController, didTransitionToRenderSize newRenderSize: CMVideoDimensions) {} public func pictureInPictureController(_ pictureInPictureController: AVPictureInPictureController, skipByInterval skipInterval: CMTime) async {} } AVPictureInPictureSampleBufferPlaybackDelegateͷίʔυ