저는 Apple TV에서 일하고 있습니다. 내 UIViewController 내 UIView있다. 내 UIView의 하위보기로 AVPlayerViewController를 추가하고 있습니다. UIView의 프레임은 CGRect (x : 50, y : 50, width : 1344, height : 756)입니다. AVPlayerViewController 프레임을 UIView의 프레임과 동일하게 설정합니다.뷰 안의 AVPlayerViewController가 재생 컨트롤을 표시하지 않습니다.
동영상의 프레임에서는 문제가 없지만 일시 중지, 재생, 전달 등의 컨트롤은 숨겨져 작동하지 않습니다. 하지만 프레임을 CGRect (x : 0, y : 0, width : 1920, height : 1080)로 설정하면 컨트롤이 표시되고 작동합니다.
내 코드는 다음과 당과 같습니다
let url = URL(string: "https://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4")
let item = AVPlayerItem(url: url!)
self.player = AVPlayer(playerItem: item)
self.avplayerController = AVPlayerViewController()
self.avplayerController.player = self.player
self.avplayerController.view.frame = videoPreviewLayer.frame
self.avplayerController.showsPlaybackControls = true
self.avplayerController.requiresLinearPlayback = true
self.addChildViewController(self.avplayerController)
self.view.addSubview(self.avplayerController.view)
self.avpController.player?.play()
도와주세요.
안녕하세요 감사합니다. 공간이 전체 화면보다 작을 때 avplayer에 대한 컨트롤을 표시 할 수있는 방법일까요? – Ruchi
@Ruchi 예, AVPlayer 속성의 정보를 가져와 AVPlayer의 인스턴스를 통해 사용자 지정보기를 추가 할 수는 있지만 네이티브 AVPlayerViewController를 사용할 수는 없습니다. –
확인. 이를 위해 제 3 자 라이브러리 또는 프레임 워크를 알고 있습니까? 나는 수색했으나 하나를 얻을 수 없었다. – Ruchi