개요
페이지가 로드될 때 브라이트코브 플레이어를 사용하여 비디오를 자동으로 재생하는 것은 간단한 문제가 아닙니다. 이것은 비디오 자동 재생이 없으려는 사용자에게 응답하는 브라우저 공급 업체에서 유출됩니다. 이 문서에서는 자동 재생에 영향을 주는 다양한 브라우저 및 브라이트코브 플레이어 구성에서 비디오의 현재 상태를 자세히 설명합니다.
우리는 세트가 있습니다사용 가능한 테스트 케이스 .
하단 라인
세부 사항없이 최선의 조언을 원한다면:
-
클라이언트 측 광고 없이 자동 재생
-
다음 단계는 클라이언트 측 광고가 없거나 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()
다시.
이 세 가지 값은 태그 속성에서 지원되지 않습니다!
우선순위
다음 목록에서는 자동 재생을 구성할 수 있는 모든 방법과 브라이트코브 플레이어의 초기화 프로세스에서 자동 재생의 우선 순위를 지정하는 방법에 대해 설명합니다.
-
비디오 요소 속성
HTML5 표준에 따라 다음 중 하나 일 수 있습니다.
true
(속성이 존재 함) 또는false
(속성이 존재하지 않습니다).쿼리 매개 변수 값 (다른 경우에만 iframe) 이 이기는 다른 속성과 달리 Video.js 에서 승리하기 때문에 특성이 이깁니다.
<video-js autoplay controls></video-js>
- URL 해시 또는 쿼리 문자열
대부분의 경우와 달리 자동 실행 쿼리 문자열 매개 변수 또는 URL 해시 매개 변수는 이전 버전과의 호환성을 위해 모든 유형의 임베드에 적용됩니다.
향후 주요 릴리스에서 인 페이지 삽입을 위해 제거해야합니다.
매개 변수 존재는 다음과 같습니다.
true
, 즉?autoplay&foo=bar
, 그러나 문자열 값이 지원됩니다. 예 :?autoplay=muted&foo=bar
자동 재생을 다음으로 설정할 수 없습니다.
false
쿼리 / 해시 매개 변수를 통해! -
videojs()
/bc()
옵션자동 재생 옵션은
bc()
함수. -
JSON 구성
옵션에서 자동 재생을 사용할 수 없는 경우 플레이어의 JSON 구성에서 전달된 값을 사용하십시오.
-
기본
마지막으로, 위의 어느 것도 적용되지 않으면 기본값으로
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
광고 플러그인이 재생을 시도하도록 허용합니다.