[ios] 미디어 파일의 재생 위치 제어

iOS 애플리케이션에서는 AVFoundation 프레임워크를 사용하여 미디어 파일의 재생을 제어할 수 있습니다. 미디어 파일을 재생할 때 특정 위치에서 시작하거나 정지하는 방법에 대해 알아보겠습니다.

미디어 파일 재생 장치 생성

먼저, AVPlayer 인스턴스를 생성하고 해당 인스턴스를 사용하여 미디어 파일을 재생합니다.

import AVFoundation

// 미디어 파일 URL
let mediaURL = URL(fileURLWithPath: "path_to_your_media_file")

// AVPlayer 인스턴스 생성
let player = AVPlayer(url: mediaURL)

재생 위치 제어

재생 위치 설정

특정 시간으로 이동하여 미디어 파일을 재생하려면 seek(to:) 메서드를 사용합니다.

let timeToSeek = CMTime(seconds: 30, preferredTimescale: 1)
player.seek(to: timeToSeek)

위 예제에서는 미디어 파일의 30초 지점으로 이동하여 재생을 시작합니다.

현재 재생 위치 확인

현재 재생 중인 미디어 파일의 위치를 확인하려면 currentItem 속성의 currentTime() 메서드를 사용합니다.

let currentTime = player.currentItem?.currentTime()

currentTime에는 현재 재생 중인 미디어 파일의 시간 정보가 포함됩니다.

재생 위치 감시

특정 이벤트에 대한 알림을 받거나 재생 위치를 실시간으로 감시하려면 addPeriodicTimeObserver(forInterval:queue:using:) 메서드를 사용합니다.

let timeObserver = player.addPeriodicTimeObserver(forInterval: CMTime(seconds: 1, preferredTimescale: 1), queue: DispatchQueue.main) { time in
    // 재생 위치 변경 시 처리할 작업
}

위 예제에서는 1초 간격으로 재생 위치를 감시하고, 변화가 있을 때마다 지정된 작업을 수행합니다.

결론

AVFoundation을 사용하여 iOS 애플리케이션에서 미디어 파일의 재생 위치를 제어하는 방법에 대해 알아보았습니다. 이를 통해 사용자 경험을 향상시키고 미디어 콘텐츠를 보다 효과적으로 관리할 수 있습니다.

참고 문헌: