자동 실행 고려 사항

이 항목에서는 페이지로드 시 비디오 자동 재생과 관련된 문제에 대해 알아봅니다.

개요

페이지가 로드될 때 브라이트코브 플레이어를 사용하여 비디오를 자동으로 재생하는 것은 간단한 문제가 아닙니다. 이것은 비디오 자동 재생이 없으려는 사용자에게 응답하는 브라우저 공급 업체에서 유출됩니다. 이 문서에서는 자동 재생에 영향을 주는 다양한 브라우저 및 브라이트코브 플레이어 구성에서 비디오의 현재 상태를 자세히 설명합니다.

우리는 세트가 있습니다사용 가능한 테스트 케이스 .

하단 라인

세부 사항없이 최선의 조언을 원한다면:

클라이언트 측 광고 없이 자동 재생

다음 단계는 클라이언트 측 광고가 없거나 SSAI를 사용하는 플레이어에게 자동 재생을 성공적으로 수행할 수 있는 최상의 기회를 제공합니다.

  • 세트autoplay ...에"any"
  • 세트playsinline ...에true (iPhone 용)

클라이언트 측 광고로 자동 실행

자동 재생 설정은 사용 중인 IMA 플러그인의 버전 또는 FreeWheel을 사용 중인 경우에 따라 다릅니다.

IMA3(최신)

다음 단계는 클라이언트측 광고(IMA3 플러그인 v4)가 있는 플레이어에서 성공적인 자동 재생을 위한 최상의 기회를 제공합니다.

  • 세트autoplay ...에"any"
  • 세트playsinline ...에true (iPhone 용)
  • 플레이어의 JSON 구성을 통해 광고 플러그인을 구성합니다. 아니사이드 로딩 또는 커스텀 번들링을 통해

IMA3 v3 또는 프리휠

다음 단계는 클라이언트 측 광고(IMA3 v3 또는 FreeWheel)가 있는 플레이어에서 성공적인 자동 재생을 위한 최상의 기회를 제공합니다.

  • 세트autoplay ...에true
  • 세트playsinline ...에true (iPhone 용)
  • 플레이어의 JSON 구성을 통해 광고 플러그인을 구성합니다. 아니사이드 로딩 또는 커스텀 번들링을 통해

자동 실행 구성

브라이트코브 플레이어는 자동 재생을 위한 5가지 값을 지원합니다. HTML5 사양에서 자동 재생은 부울 속성입니다. true ) 또는 꺼짐 ( false ). 브라이트코브 플레이어에서 다음과 같은 세 가지 특별한 값을 사용할 수 있습니다.

  • play : 그러면 Brightcove Player가play()소스가 설정되었을 때.
  • muted : 그러면 Brightcove Player가 플레이어를 음소거하고play() .
  • any : 그러면 Brightcove Player가play() . 실패하면 플레이어를 음소거하고play()다시.

이 세 가지 값은 태그 속성에서 지원되지 않습니다!

우선순위

다음 목록에서는 자동 재생을 구성할 수 있는 모든 방법과 브라이트코브 플레이어의 초기화 프로세스에서 자동 재생의 우선 순위를 지정하는 방법에 대해 설명합니다.

  1. 비디오 요소 속성

    HTML5 표준에 따라 다음 중 하나 일 수 있습니다. true (속성이 존재 함) 또는false (속성이 존재하지 않습니다).

    쿼리 매개 변수 값 (다른 경우에만 iframe) 이 이기는 다른 속성과 달리 Video.js 에서 승리하기 때문에 특성이 이깁니다.

    <video-js autoplay controls></video-js>
  2. URL 해시 또는 쿼리 문자열

    대부분의 경우와 달리 자동 실행 쿼리 문자열 매개 변수 또는 URL 해시 매개 변수는 이전 버전과의 호환성을 위해 모든 유형의 임베드에 적용됩니다.

    향후 주요 릴리스에서 인 페이지 삽입을 위해 제거해야합니다.

    매개 변수 존재는 다음과 같습니다. true , 즉?autoplay&foo=bar , 그러나 문자열 값이 지원됩니다. 예 : ?autoplay=muted&foo=bar

    자동 재생을 다음으로 설정할 수 없습니다. false쿼리 / 해시 매개 변수를 통해!

  3. videojs() / bc()옵션

    자동 재생 옵션은bc()함수.

  4. JSON 구성

    옵션에서 자동 재생을 사용할 수 없는 경우 플레이어의 JSON 구성에서 전달된 값을 사용하십시오.

  5. 기본

    마지막으로, 위의 어느 것도 적용되지 않으면 기본값으로false .

브라우저 설정 및 정책

최근 몇 년 동안 브라우저의 일관성이 높아졌지만 다음 섹션에는 각 주요 브라우저의 사용 가능한 설정 및/또는 정책이 요약되어 있습니다.

사파리 (맥 OS)

macOS의 Safari에는 다음과 같은 설정이 있습니다.

  • 모든 자동 재생 허용
  • 소리로 미디어 중지 (기본)
  • 자동 재생 안 함

또한 이러한 설정은 사이트별로 변경할 수 있습니다.

사파리 (iOS 및 아이패도스)

iOS 및 iPados의 Safari에는 사용자 연결 자동 재생 설정이 없지만 다음 정책을 구현합니다.

  • 음소거 된 자동 재생은 항상 작동합니다.
  • 사운드로 자동 재생하려면 사용자 제스처가 필요합니다.
  • iPhone에서는playsinline속성은 모든 경우에 필수입니다.

읽다이 WebKit 블로그 게시물자세한 내용은.

Chrome

Chrome에는 사용자 연결 자동 재생 설정이 없지만 다음 정책을 구현합니다.

  • 음소거된 자동 재생은 항상 작동해야 하지만 이는 항상 브라우저에 달려 있습니다. 우리는 그렇지 않은 몇 가지 엣지 케이스를 만났지만 우리는 그것들을 통제할 수 없습니다.
  • 소리와 함께 자동 재생하려면 사용자 제스처 또는 충분히 높은 MEI(데스크톱에서)가 필요합니다.

읽다이 Chrome 블로그 게시물자세한 내용은.

Firefox

Firefox는 전역 및 웹 사이트마다 다음과 같은 설정을 제공합니다.

  • 오디오 및 비디오 허용
  • 오디오 차단 (기본)
  • 오디오 및 비디오 차단

Edge

기본적으로 Edge에는 다음과 같은 설정이 있습니다.

  • 허용하다 (기본)
  • 제한

그러나edge://flags/#edge-autoplay-user-setting-block-option , Edge (Legacy)에서 사용할 수 있었던 자동 재생 차단 옵션을 복원 할 수 있습니다.

모서리 (기존)

모서리 (레거시) 에는 다음과 같은 설정이 있습니다.

  • 허용
  • 제한
  • 블록

[제한] 옵션은 뮤트된 자동 재생 또는 사용자 제스처가 필요하다는 점에서 다른 브라우저와 유사합니다.

알려진 문제

페이지 내 소스 및 프로그래밍 방식 자동 실행

페이지 내 소스 (예: <source>요소를 통해) 를 사용하고 호출할 때 알려진 문제가play()있습니다.

이것은 Firefox에서 볼 수 있지만 다른 브라우저에서도 존재할 수 있습니다.

이는 Brightcove 고객에게 일반적인 사용 사례가 아닙니다. 플레이어 생성 후 Video Cloud 소스가로드되기 때문에이 문제가 발생하지 않습니다.

대신, 당신은canplay호출하기 전에 실행할 이벤트play() . 또는 구성autoplay: true사용자 설정 / 기본 설정에 따라 예상대로 작동합니다.

아이마3/프리휠

프리롤 누락 또는 결함

전화를 시도하는 경우play()이러한 플러그인을 사용하면 자동 재생이 실패하고 재생 버튼을 클릭해도 프리 롤이 재생되지 않는 경우가 있습니다.

FreeWheel을 사용하면 프리 롤 재생에 대한보고도있었습니다. 뒤에큰 재생 버튼.

권장 사항

이러한 플러그인을 사용할 때 자동 재생을 활성화하는 권장 방법은 다음과 같습니다.

  • 플러그인을 플레이어에 묶습니다 (예: Studio를 통해). 사이드 로딩 (인 페이지)은 권장되지 않습니다. .
  • 특수 자동 실행 값을 사용하지 마십시오. 자동 재생 설정true광고 플러그인이 재생을 시도하도록 허용합니다.