티스토리 뷰

Xcode(버전11.3)를 AVPlayerViewController 비디오(동영상) 재생 앱을 만든다:)

 

 

 

- 프로젝트 이미지, 동영상 추가

새로운 'Resources' 폴더를 만들고, 사용할 이미지와 동영상 파일을 추가한다.

 

 

 

- 스토리보드 화면 구성

1) Label, Button을 추가하여 위와 같이 배치한다.

'앱 내부 비디오 재생' Label

Button

'외부 링크 비디오 재생' Label

button

 

 

 

- 스토리보드 화면 구성

2) Button 이미지 넣기

Button -> Attributes Inspector -> Image -> 'movie1_img.png'(사용할 이미지) 선택하고 사이즈를 조절한다.

 

 

 

스토리보드 화면 구성이 완성된 모습

 

 

 

- 액션 함수 추가

Button -> 'btnPlayInternalMovie'

Button -> 'btnPlayExternalMovie'

 

 

 

전체 소스 보기

//
//  ViewController.swift
//  day191226_MoviePlayer
//
//  Created by 무니 on 2019/12/26.
//  Copyright © 2019 com.mooni. 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) {
        
        // 비디오 파일명을 사용하여 비디오가 저장된 앱 내부의 파일 경로를 받아옴
        let filePath:String? = Bundle.main.path(forResource: "movie1", ofType: "mov")
        // 앱 내부의 파일명을 NSURL 형식으로 변경
        let url = NSURL(fileURLWithPath: filePath!)
        
        playVideo(url: url) // 앞에서 얻은 url을 사용하여 비디오를 재생
    }
    
    @IBAction func btnPlayExternalMovie(_ sender: UIButton) {
        
        // 외부에 링크된 주소를 NSURL 형식으로 변경
        let url = NSURL(string: "https://dl.dropboxusercontent.com/s/e38auz050w2mvud/Fileworks.mp4")!

        playVideo(url: url) // 앞에서 얻은 url을 사용하여 비디오를 재생
    }
    
    private func playVideo(url: NSURL){
        
        // AVPlayerController의 인스턴스 생성
        let playerController = AVPlayerViewController()
        // 비디오 URL로 초기화된 AVPlayer의 인스턴스 생성
        let player = AVPlayer(url: url as URL)
        // AVPlayerViewController의 player 속성에 위에서 생성한 AVPlayer 인스턴스를 할당
        playerController.player = player

        self.present(playerController, animated: true){
            player.play() // 비디오 재생
        }
        
    }
}

내가 가지고 있는 영상으로 '외부 링크 비디오 재생'에 사용하지 못해 다른 링크로 대체 했다..ㅜㅜ

 

 

 

시뮬레이터 결과 화면

[iOS/swift] AVPlayerViewController 비디오 재생 앱 - 앱 내부 비디오 재생 화면
[iOS/swift] AVPlayerViewController 비디오 재생 앱 - 외부 링크 비디오 재생 화면

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함