지원 고객 지원 문의 | 시스템 상태 시스템 상태
페이지 내용

    API 포함

    이 항목은 Embed API 사용시기와 방법을 결정하는 데 도움이됩니다. 플레이어 구성 API와 Embed API 사용 중에서 선택하는 것은 중요한 결정이며이 문서의 내용이 이러한 결정을 안내합니다.

    임베디드 API를 사용하는 이유는 무엇입니까?

    삽입 API를 사용하면 특정 플레이어의 여러 인스턴스를 만들 수 있습니다. 이 플레이어 / 인스턴스 관계를 생각하는 좋은 방법은 부모 / 자식 관계입니다. 싱글 플레이어는 상위 플레이어이고 삽입 API로 생성 된 플레이어는 상위 플레이어의 하위 플레이어입니다. 상위 플레이어는 플레이어에게 원하는 속성의 대부분을 가지고 있으며, 삽입 API를 사용하여 여러 하위 플레이어에서 속성의 하위 집합을 맞춤 설정할 수 있습니다. 예를 들어 다른 미디어를로드하거나 다른 하위 플레이어에 다른 플러그인과 스타일을 사용할 수 있습니다.

    다음 다이어그램은 기능을 명확히하는 데 도움이됩니다. 부모 아래는 왼쪽에, 두 명의 자식 플레이어가 오른쪽에 표시됩니다. 다음 사항을 준수하십시오.

    • 포스터는 두 아이에게 물려받습니다.
    • 재생 버튼의 모양은 맨 위 자식에서 상속되고 맨 아래 자식에서 재정의됩니다.
    • 맨 위 자식은 속성 (이 경우 부모에게없는 오버레이)을 추가합니다.
    1차 하위 구성요소 추가 특성
    1차 하위 구성요소 추가 특성

    이 부모 / 자식 관계의 또 다른 강력한 특징은 상속이 계속되고 있다는 것입니다. 다음 다이어그램은 상위에 할당 된 새 포스터를 보여 주며 두 하위 모두 해당 구성 변경을 상속합니다.

    하위 항목은 변경 내용 상속
    하위 항목은 변경 내용 상속

    임베드 API를 사용하지 않아야하는 경우

    사용 사례에 필요한 경우 내장 API를 사용해야하는 몇 가지 이유가 있지만 일반 플레이어를 고수해야하는 몇 가지 좋은 이유도 있습니다. 다음은 몇 가지입니다.

    • 어린이 플레이어는 Video Cloud Studio를 사용하여 편집 할 수 없습니다. 플레이어 관리 API를 통해서만 하위 플레이어를 편집 할 수 있습니다. Video Cloud Studio에서 하위 플레이어의 상위 플레이어를 편집 할 수 있지만 상위 플레이어에 대한 변경 사항은 모든 하위 플레이어에 영향을줍니다.
    • 상위 플레이어와 연결된 하위 플레이어가 많은 경우 상위 플레이어를 게시하는 데 시간이 오래 걸릴 수 있습니다. 각 하위 플레이어는 개별적으로 게시되며 30 개 이상의 하위 플레이어가있는 경우 하위 플레이어 게시에 약간의 지연이 발생할 수 있습니다. 이것은 동시에 30 명의 일반 플레이어를 게시하는 것과 똑같은 경우입니다.

    위의 이유를 고려할 때 일반 플레이어를 사용하여 시작한 다음 어린이 플레이어가 필요하다고 판단되면 삽입을 시도하는 것이 합리적 일 수 있습니다.

    비디오 태그 데이터 포함

    부모와 자식 플레이어에는 표기상의 차이가 있습니다. 표준 인 페이지 소스 플레이어 코드는 다음 형식으로 표시됩니다.

        <video-js
          data-account="1507807800001"
          data-player="HiAdwRZ7kK"
          data-embed="default"
          controls=""
          data-application-id=""
          class="vjs-fluid"></video-js>

    그만큼data-embed속성은 플레이어가 부모인지 자식인지를 결정합니다. 값이default , 플레이어는 부모입니다. 플레이어가 어린이 인 경우data-embed속성에는 상위 플레이어의 ID가 포함됩니다. 그 예는 다음과 같습니다.

    그만큼data-embed속성은 플레이어가 부모인지 자식인지를 결정합니다. 값이default , 플레이어는 부모입니다. 플레이어가 어린이 인 경우data-embed속성에는 상위 플레이어의 ID가 포함됩니다. 그 예는 다음과 같습니다.

        <video-js
          data-account="1507807800001"
          data-player="HiAdwRZ7kK"
          data-embed="NURK56ZSV"
          data-application-id=""
          class="video-js" controls></video-js>

    참고data-player , 즉 플레이어 ID는 동일하지만data-embed변경되었습니다default어린이 플레이어의 ID에.

    하위 플레이어 URL

    부모 플레이어와 자식 플레이어를 어떻게 구별합니까? URL이 다릅니다. 예를 들어 상위 플레이어의 URL은 다음과 같습니다.

        //players.brightcove.net/1507807800001/HiAdwRZ7kK_default/index.min.js

    포함 API를 사용하여 하위 플레이어를 만든 후 다음과 같이 하위 플레이어의 ID가 상위 URL에 추가됩니다.

        //players.brightcove.net/1507807800001/HiAdwRZ7kK_NURK56ZSV/index.min.js

    부모 / 자식 사용 사례

    여러 비디오 플레이어를 사용한다고 가정합니다. 종종 플레이어의 공통된 기능은 거의 동일하지만 특별한 경우에 맞게 플레이어를 조정하려는 경우가 있습니다. 플레이어 구성 API를 사용하여 여러 플레이어를 만들 수 있습니다. POSTPATCH하지만 이로 인해 심각한 유지 관리 문제가 발생할 수 있습니다. 예를 들어 모든 플레이어의 포스터를 변경하고 싶다고 가정 해 보겠습니다. 이것은 사용을 의미합니다PATCH모든 다른 플레이어에게. 반면에 어린이 플레이어를 만들었다면PATCH부모 플레이어와 모든 자식 플레이어가 자동으로 새 포스터를 갖게됩니다.

    생성 과정

    당신이 한 경우단계별 : 플레이어 관리 curl 문을 사용하여 HTTP 메서드를 Player Management API에 전달하는 과정을 살펴 보았습니다. 여기서도 동일한 접근 방식이 사용됩니다.

    플레이어를 만들려면 플레이어 구성 API와 함께 다음과 같은 몇 가지 HTTP 메서드를 사용했을 가능성이 큽니다.

    • 사용하여 플레이어 만들기POST ...에 https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players
    • A를 사용하여 플레이어 업데이트PATCH ...에 https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/configuration
    • 업데이트 된 플레이어를POST ...에 https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/publish

    임베드 API를 사용하는 어린이 플레이어에도 유사한 접근 방식이 사용됩니다. 매우 높은 수준에서 다음을 수행합니다.

    • 사용하여 어린이 플레이어 만들기POST ...에 https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/ 삽입 . 참고: 임베드 API로 생성 된 하위 플레이어는 생성시 자체 게시하므로 하위 플레이어 생성시 게시 할 필요가 없으며 하위 플레이어 업데이트에만 게시됩니다.
    • 다음을 사용하여 자식 플레이어를 업데이트합니다. PATCH ...에 https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/ embeds / $ EMBED_ID / configuration
    • 다음을 사용하여 자식 플레이어 게시POST ...에 https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/ 삽입 / $ EMBED_ID / 게시

    다음 내용은 프로세스를 자세히 설명합니다.

    어린이 플레이어 만들기

    자식 플레이어를 만들려면 HTTP를 사용합니다. POST방법은 다음과 같습니다.

        curl /
        --header "Content-Type: application/json" /
        --user $EMAIL /
        --request POST /
        --data '{
        "media": {
        "sources": [
          {
            "src":"http://solutions.brightcove.com/bcls/assets/videos/BirdsOfAFeather.mp4",
            "type":"video/mp4"
          }
        ],
        "poster": {
          "highres":"http://solutions.brightcove.com/bcls/assets/images/BirdsOfAFeather.jpg"
        }
        }
          }' /
        https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/embeds

    하위 플레이어 생성에 대한 응답의 예는 다음과 같습니다.

        {
            "id": "be864624-8d85-4dfc-8fe6-4e9dd4c70417",
            "url": "http://players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c_be864624-8d85-4dfc-8fe6-4e9dd4c70417/index.html",
            "embed_code": "<iframe src='//players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c_be864624-8d85-4dfc-8fe6-4e9dd4c70417/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>",
            "embed_in_page": "http://players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c_be864624-8d85-4dfc-8fe6-4e9dd4c70417/in_page.embed",
            "preview_url": "http://preview-players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c/be864624-8d85-4dfc-8fe6-4e9dd4c70417/index.html",
            "preview_embed_code": "<iframe src='//preview-players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c/be864624-8d85-4dfc-8fe6-4e9dd4c70417/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>"
        }

    참고: 자식 플레이어는 생성시 자체 게시하므로 생성 후 자식 플레이어를 게시 할 필요가 없습니다. 하위 플레이어가 변경된 경우 여전히 게시해야합니다. PATCH방법. 이 시점에서 미리보기 정보는 게시 된 자식 플레이어를 만드는 즉시 사용할 수 있으므로 도움이되지 않습니다.

    이제 다음을 사용할 수 있습니다. url결과를 볼 수 있습니다. 아래 예에서 하위 플레이어는 단계별로 생성 된 상위 플레이어에 추가되었습니다. 플레이어 관리 . 새 포스터와 동영상이 표시되지만 상위 플레이어의 오버레이 플러그인은 여전히 존재합니다.

    부모의 오버레이가 있는 하위 플레이어
    부모의 오버레이가 있는 하위 플레이어

    하위 플레이어 업데이트

    자식 플레이어를 업데이트하려면 HTTP를 사용합니다. PATCH방법. 다음 curl 문은poster특성. 설정 한 것으로 가정합니다. $EMBED_ID환경 변수를 적절하게 :

        curl
        --header "Content-Type: application/json"
        --user $EMAIL
        --request PATCH
        --data '{
        "media": {
        "poster": {
          "highres":"http://solutions.brightcove.com/bcls/assets/images/Water-Splashing.jpg"
        }
        }
          }'
        https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/embeds/$EMBED_ID/configuration
        

    응답은 두 가지 모두에 대한 미리보기 정보를 제공합니다. preview_urlpreview_embed_code암호:

        {
            "preview_url": "http://preview-players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c/be864624-8d85-4dfc-8fe6-4e9dd4c70417/index.html",
            "preview_embed_code": "<iframe src='//preview-players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c/be864624-8d85-4dfc-8fe6-4e9dd4c70417/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>"
        }

    어린이 플레이어 게시

    자식 플레이어가 변경되면 게시해야합니다. 확인하십시오$EMBED_ID환경 변수가 설정되면 새로 변경된 자식 플레이어를 게시 할 수 있습니다.

        curl
        --header "Content-Type: application/json"
        --user $EMAIL
        --request POST
        https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/embeds/$EMBED_ID/publish

    응답은 플레이어 게시와 매우 유사하게 하위 플레이어를 사용하는 데 필요한 필수 정보를 제공합니다.

        {
            "id": "be864624-8d85-4dfc-8fe6-4e9dd4c70417",
            "url": "http://players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c_be864624-8d85-4dfc-8fe6-4e9dd4c70417/index.html",
            "embed_code": "<iframe src='//players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c_be864624-8d85-4dfc-8fe6-4e9dd4c70417/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>",
            "embed_in_page": "http://players.brightcove.net/1507807800001/668c5107-a80c-4940-8c17-279c01ce101c_be864624-8d85-4dfc-8fe6-4e9dd4c70417/in_page.embed"
        }

    자녀 정보 표시

    HTTP를 사용할 수 있습니다. GET하위 플레이어에 대한 정보를 검색하는 메서드입니다. curl 문 예는 다음과 같습니다.

        curl
          --header "Content-Type: application/json"
          --user $EMAIL
          --request GET
          https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/embeds

    상당히 많은 양의 JSON 데이터가 반환됩니다.

    어린이 플레이어 삭제

    다음을 사용하여 하위 플레이어를 삭제할 수도 있습니다. DELETE방법. 다음은 자식 플레이어를 삭제하는 curl 문 예입니다.

        curl
        --header "Content-Type: application/json"
        --user $EMAIL
        --request DELETE
        https://players.api.brightcove.com/v2/accounts/$ACCOUNT_ID/players/$PLAYER_ID/embeds/$EMBED_ID

    물론 이것은 부모 플레이어가 아닌 자식 플레이어에만 영향을 미칩니다.