tvOS용 네이티브 SDK를 사용한 애플 TV UI 컨트롤

이 항목에서는 tvOS용 브라이트코브 플레이어 SDK에서 제공하는 재생 컨트롤에 대해 알아봅니다.

개요

TVOS 용 Brightcove Native SDK를 사용하여 Apple TV 앱을 빌드하면 사용자가 비디오 콘텐츠를 탐색하고, 비디오의 종횡비를 변경하고, 비디오 정보를 가져오고, 자막 및 오디오 설정을 관리 할 수있는 일련의 재생 컨트롤이 제공됩니다.

tvOS용 브라이트코브 네이티브 SDK에서 제공하는 컨트롤에는 다음이 포함됩니다.

  • 시계 시간도 표시 할 수있는 진행률 표시 줄
  • 비디오 정보, 자막 및 오디오를위한 상단 탭 바
  • 상단 탭 표시 줄에 사용자 정의보기 및 컨트롤을 추가하는 기능

사용되는 컨트롤 및 제스처는 AVKit 인터페이스에있는 것과 유사하므로 사용자에게 친숙합니다.

Brightcove SSAI (Server-Side Ad Insertion)를 사용하면 광고 재생 중에 사용자 정의 모양을 볼 수 있습니다.

네이티브 SDK 사용에 대한 자세한 내용은 tvOS용 브라이트코브 플레이어 SDK 개요문서를 참조하십시오.

지원되는 버전

Apple TV UI 컨트롤은 다음 버전에서 사용할 수 있습니다.

디바이스 OS 버전

tvOS 9 이상

네이티브 SDK 버전

iOS용 브라이트코브 네이티브 SDK 버전 6.3.0 이상

시리 리모컨

Siri Remote를 사용하면 Apple TV를 제어 할 수 있습니다. 다음은이를 사용할 수있는 몇 가지 방법입니다.

  • Siri에게보고 싶은 것을 찾도록 요청하십시오.
  • 터치 표면을 사용하여 화면 주위를 이동하고, 스 와이프하고, 항목을 강조 표시하고 선택합니다.
  • 제어 버튼을 눌러 콘텐츠를 빠르게 재생 / 일시 중지하고, 볼륨을 조절하고, 홈 및 메뉴 화면으로 이동합니다.
시리 리모컨
시리 리모컨

자세한 내용은 Apple의 Apple TV에서 Siri 리모컨사용하기문서를 참조하십시오.

재생 컨트롤

Apple Siri Remote에서 제스처 및 버튼 누르기를 사용하여 재생을 제어합니다. 다음은 앱에서 사용할 수있는 몇 가지 작업입니다. 자세한 내용은 다음을 참조하십시오.

진행률 표시줄

Apple Siri Remote 트랙 패드를 한 번 탭하면 진행률 표시 줄이 표시되거나 숨겨집니다. 재생이 일시 중지되면 왼쪽 및 오른쪽으로 이동하면 비디오를 앞뒤로 탐색합니다.

스크러빙의 경우 사용자는 클릭 한 상태에서 왼쪽 또는 오른쪽으로 이동하여 비디오를 빨리 감거나 되 감을 수 있습니다.

동영상이 재생되는 동안 사용자는 Siri Remote 트랙패드의 왼쪽 1/4을 두 번 클릭하여 10초 뒤로 이동하거나 트랙패드의 오른쪽 1/4을 두 번 클릭하여 10초 앞으로 이동할 수 있습니다.

진행률 표시줄
진행률 표시줄

비디오 종횡비

Apple Siri Remote 트랙 패드를 두 번 탭하면 세 가지 표준 비디오 종횡비가 순환됩니다.

  • 종횡비를 준수하는 레터 박스 (전체 비디오 표시)
  • 종횡비가 존중 된 전체 화면 (비디오가 잘릴 수 있음)
  • 전체 화면에 맞게 확대 된보기 (가로 세로 비율 무시)

상단 탭 바

Apple Siri Remote 트랙 패드에서 아래로 스 와이프하면 상단 메뉴가 표시되고 진행률보기가 숨겨집니다. 표시되면 위로 스 와이프하면 상단 메뉴가 숨겨집니다.

탭 표시 줄에는 다음과 같은 기본 항목이 있습니다.

  • 정보
  • 자막
  • 오디오

각 탭 표시 줄 항목과 관련된 텍스트 레이블을 수정하거나 탭 표시 줄에서 사용자 정의보기를 만들 수 있습니다.

정보

정보상단 메뉴 항목을 선택하면 현재 로드된 비디오와 관련된 제목, 설명 및 길이가 표시됩니다. 이 데이터는 Playback API의 동영상 메타 데이터에서 검색되지만 동영상이로드 될 때 고유 한 텍스트를 설정할 수 있습니다.

정보 탭 표시줄 항목
정보 탭 표시줄 항목

자막

자막상단 메뉴 항목을 선택하면 비디오와 관련된 자막을 표시하는 옵션이 표시됩니다. 여기에서 재생 중에 표시 할 자막 / 캡션을 관리 할 수 있습니다.

자막 탭 막대 항목
자막 탭 막대 항목

오디오

오디오상단 메뉴 항목을 선택하면 비디오 재생 중에 사용할 수 있는 오디오 옵션이 표시됩니다.

오디오 탭 표시줄 항목
오디오 탭 표시줄 항목

사용자 정의

tvOS용 브라이트코브 네이티브 SDK를 사용하면 탭 바에 원하는 뷰를 쉽게 추가할 수 있습니다. 뷰에는 필요한 모든 표준 UIKit 뷰 또는 컨트롤이 포함될 수 있습니다.

사용자 정의 탭 표시줄 보기
사용자 정의 탭 표시줄 보기

SSAI를 사용한 광고

콘텐츠 재생 외에도 Brightcove SSAI (Server-Side Ad Insertion)를 사용할 때 광고 모드를 추가했습니다. 이 모드에는 다음 기능이 포함됩니다.

  • 사용자가 과거의 광고를 스크러빙하지 못하도록하는 기능
  • 광고 시간에 남은 시간 및 광고에 대한 피드백 표시
SSAI의 광고
SSAI의 광고

샘플

Apple TV 컨트롤을 경험하고 사용자 정의 탭 막대 항목보기를 만드는 방법을 보려면 다음 코드 샘플을 확인하십시오.

라이브 / 라이브 DVR

Apple TV 앱으로 작업 할 때 tvOS 용 Brightcove Native SDK는 라이브 및 DVR 라이브 스트림을 모두 지원합니다. DVR 라이브를 통해 사용자는 다음을 수행 할 수 있습니다.

  • 진행률 표시 줄을 사용하여 과거 순간을 찾습니다.
  • 현재 라이브 순간으로 돌아가 실시간으로 콘텐츠를 시청하세요.

재생 구현

Apple TV 앱에서 라이브 또는 라이브 DVR 스트림을 재생하려면 다음을 수행하십시오.

  1. 기본 Apple TV 샘플 코드부터 시작해보세요. Xcode에서 프로젝트를 열고 ViewController.swift파일을 엽니다.
  2. 에서createTVPlayerView()기능, 설정playerType어느 쪽이든live또는liveDVR .

    playerView = BCOVTVPlayerView(options: options)
    if (playerView != nil) {
    playerView!.frame = self.videoContainerView.bounds
    playerView!.playerType = BCOVTVPlayerType.liveDVR;
    self.videoContainerView.addSubview(playerView!)
    }
  3. viewDidLoad()함수를 찾으세요.
  4. createSampleTabBarItemView()함수 호출은 선택 사항이며 탭 표시줄에서 사용자 지정 보기를 만드는 방법을 보여 줍니다. 이 예에서는이 함수에 대한 호출을 주석 처리합니다.
  5. requestContentFromPlaybackService()함수 호출에 주석을 답니다.
  6. viewDidLoad()함수에서 닫는 괄호 앞에 다음을 수행하는 코드를 추가합니다.

    override func viewDidLoad()
    {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
    
    createTVPlayerView()
    
    //        createSampleTabBarItemView()
    
    // Create and configure the playback controller
    playbackController.delegate = self
    playbackController.isAutoAdvance = true
    playbackController.isAutoPlay = true
    
    // Link the playback controller to the Player View
    playerView?.playbackController = playbackController
    
    //        requestContentFromPlaybackService()
    
    // live stream
    let url = URL(string: "your live stream url")
    
    let video: BCOVVideo = BCOVVideo(hlsSourceURL:url )
    self.playbackController.setVideos([video] as NSArray)
    }
    • 라이브 또는 라이브 DVR 스트림의 URL 문자열을 정의합니다.
    • 이전 단계의 라이브 또는 라이브 DVR 스트림 URL을 사용하여BCOVVideo객체를 생성합니다.
    • setVideos()함수를 호출하여 자동으로 재생을 시작하도록 설정된playbackController의 재생 대기열에 실시간 스트림을 추가합니다.

라이브 스트림 표시기

tvOS용 Native SDK에서 제공하는 진행률 표시줄은 실시간 스트림의 경우 채워지지 않습니다. 진행률 표시 줄 아래의 표시기는 스트림이 라이브 중일 때와 일시 중지 된 때를 사용자에게 알려줍니다.

라이브 스트림
라이브 스트림

라이브 DVR 진행률 표시 줄

진행률 표시 줄 아래의 표시기는 스트림이 라이브 중일 때와 일시 중지 된 때를 사용자에게 알려줍니다.

실시간 스트림을 시청하는 동안 진행률 표시 줄이 완전히 채워집니다. 스트림에서 이전 시간을 찾는 것은 다음과 유사합니다.

라이브 DVR 스트림
라이브 DVR 스트림