728x90
비디오(Video) 재생 App 구현하기
이번에는 아이폰 앱에서 비디오를 재생하는 앱을 만들어 보겠습니다.
애플 IOS에서 제공하는 AVPlayerViewController를 사용하여
1. 앱 내부에 저장되어있는 파일 / 2. 외부 링크 비디오 파일도 재생 가능합니다.
결과 화면
[ 앱 내부의 Video File ]
[ 앱 외부의 Video File ]
스토리 보드
ViewController.swift (메인화면 - Audio / Record)
//
// ViewController.swift
// MoviePlayer
//
// Created by HwangSeungyeon on 2020/09/15.
// Copyright © 2020 HwangSeungyeon. All rights reserved.
//
import UIKit
import AVKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBAction func btnPlayInternalMovie(_ sender: UIButton) {
// 내부파일 mp4
let filePath: String? = Bundle.main.path(forResource: "FastTyping", ofType: "mp4") // 비디오 파일명을 이용하여 저장된 앱 내부 파일 경로 받는다.
let url = NSURL(fileURLWithPath: filePath!) // 앱 내부의 파일명을 NSURL 형식으로 변경
playVideo(url: url) // 앞에서 얻은 url
}
@IBAction func btnPlayExternalMovie(_ sender: UIButton) {
// 외부 파일 mp4
// 내부 파일 실행과 실행 url만 다를뿐, 나머지는 동일
let url = NSURL(string: "https://dl.dropboxusercontent.com/s/e38auz050w2mvud/Fireworks.mp4")!
playVideo(url: url)
}
private func playVideo(url: NSURL) {
// 공통된 부분 비디오 재생 함수로 코드 재사용
let playerController = AVPlayerViewController() // AVPlayerViewController 인스턴스 생성
let player = AVPlayer(url: url as URL) // 앞에서 얻은 비디오 URL로 초기화된 AVPlayer의 인스턴스 생성
playerController.player = player // AVPlayerViewController 속성에 위 코드에서 생성한 AVPlayer 인스턴스 할당
self.present(playerController, animated: true) {
player.play() // 비디오 재생
}
}
}
전체 코드
출처 : Do it 스위프트로 앱 만들기
728x90
'Mobile Platform > IOS' 카테고리의 다른 글
[IOS] Do it (15) 코어 그래픽스 그림 그리기 App 구현 (0) | 2020.09.18 |
---|---|
[IOS] Do it (14) 카메라와 포토 라이브러리 App 구현 (0) | 2020.09.17 |
[IOS] Do it (12) 음악 재생 및 녹음 App 구현하기 (0) | 2020.09.15 |
[IOS] Do it (11) ToDo App 구현 - 테이블 뷰 컨트롤러 이용 (0) | 2020.09.03 |
[IOS] Do it(10) Navigation App 구현 - 뷰 전환과 정보 전달하기 (0) | 2020.08.21 |