[swift] Swift에서 비디오 재생 시 자동 재생/일시 정지 설정하기

iOS 앱을 개발할 때, 비디오를 재생하는 기능을 구현해야 하는 경우가 있습니다. 사용자가 앱을 열었을 때 비디오가 자동으로 재생되어야 하는 경우도 있고, 사용자의 조작에 따라 일시정지하거나 다시 재생되어야 하는 경우도 있습니다.

AVPlayer 사용하기

Swift에서 비디오를 재생하기 위해서는 AVPlayer를 사용할 수 있습니다. AVPlayer는 비디오 및 오디오 미디어를 재생하기 위한 객체로, 다양한 컨트롤 기능을 제공합니다.

import AVKit

// 비디오 파일 URL
let videoURL = URL(fileURLWithPath: "video.mp4")

// AVPlayer 생성
let player = AVPlayer(url: videoURL)

// AVPlayerViewController에 AVPlayer 설정
let playerViewController = AVPlayerViewController()
playerViewController.player = player

// 화면에 플레이어 뷰 컨트롤러 표시
present(playerViewController, animated: true) {
    player.play()
}

위의 코드는 AVPlayer를 사용하여 비디오를 재생하고, 화면에 플레이어를 표시하는 예시입니다.

자동 재생 및 일시정지 설정

AVPlayer를 사용하여 비디오를 재생할 때, 자동으로 재생되게 설정하거나 일시정지하는 방법은 간단합니다.

자동 재생 설정

player.automaticallyWaitsToMinimizeStalling = false
player.play()

위의 코드에서 automaticallyWaitsToMinimizeStalling 속성을 false로 설정함으로써, 비디오가 버퍼링되는 동안 자동으로 일시정지되지 않도록 설정할 수 있습니다.

일시정지 및 다시 재생

일시정지 또는 다시 재생은 playpause 메소드를 호출하여 간단히 처리할 수 있습니다.

// 비디오 재생
player.play()

// 비디오 일시정지
player.pause()

결론

Swift에서 AVPlayer를 사용하여 비디오를 재생하고, 자동 재생 또는 일시정지하는 방법에 대해 알아보았습니다. 이를 응용하여 사용자 경험에 맞게 비디오를 제어하는 기능을 구현할 수 있을 것입니다.

참고 자료