이 항목에서는Dynamic Ingest API동영상 콘텐츠를 업로드하고 관리합니다.
API 기능
Brightcove의 DI (Dynamic Ingest) API는 고객의 저장 위치에서 비디오 소스 파일을 다운로드하고 소스 파일의 지정된 변환을 생성하는 기능을 기반으로합니다. 동적 인제스트가 액세스할 수 있는 임시 위치에소스 파일을 업로드하는옵션도 있습니다. 이 플랫폼은 클라우드 중심이며 전 세계에 분산되어 있으며 최신 관행을 기반으로 동급 최고의 일관성과 속도를 제공합니다.
워크 플로 개요
미디어의 전체 트랜스코딩 및 저장에는 여러 시스템/기술이 사용됩니다. 그들은 다음과 같습니다:
- 콘텐츠 관리 시스템 (CMS) API : DI API에서 사용할 비디오 객체를 만듭니다.
- Zencoder : 비디오를 트랜스 코딩하여 여러 변환을 만듭니다.
- 아마존 S3 : 프로필 설정에 따라 마스터 및 변환을 저장소로 이동합니다.
- 카탈로그 : 비디오와 관련된 필수 정보를 저장합니다.
초기 트랜스코딩 후에는 미디어에서 다음과 같은 작업을 수행할 수 있습니다.
- 재 트랜스 코딩 : 마스터가 있을 때 새 변환 만들기 (마스터가 없는 경우 오류)
- 바꾸다 : 새 마스터를 가리 키거나 기존 마스터를 바꿉니다.
운영
DI API를 사용할 때 수집 프로필 읽기 및 계정에 수집 정보 쓰기와 같은 다양한 작업을 수행합니다. 다음은 DI 작업에 필요한 전체 작업 목록입니다.
- 비디오 클라우드/비디오/생성
- 비디오 클라우드/비디오/읽기
- 비디오-클라우드/비디오/업데이트
- 비디오 클라우드/인제스트 프로파일/프로파일/읽기
- 비디오 클라우드/인제스트 프로필/계정/읽기
- 비디오 클라우드/인제스트 프로파일/계정/쓰기
- 비디오 클라우드/인제스트 프로파일/프로파일/쓰기
- 비디오 클라우드/업로드-URL/읽기
클라이언트 자격 증명을 얻으려면 Studio를 사용하십시오. 관리 도구또는 다음 문서 중 하나를 참조하십시오.
모범 사례
유효한 소스 위치
Dynamic Ingest는 다음에서 소스 비디오 파일을 가져올 수 있습니다. HTTP / HTTPS 또는 S3-인증 유무
예:
- http://example.com/path/to/input.avi
- https://dl.dropboxusercontent.com/u/3641457/Bird_Titmouse.mp4
- s3 : //my-bucket/video.mp4
S3에 대한 참고 사항
비디오가 보호 된 S3 버킷에있는 경우 S3에서 동적 수집 사용파일에 액세스하기 위해 Dynamic Ingest에 대한 권한을 설정하는 방법에 대한 자세한 내용은
풀 기반 수집 사용의 장점은 더 간단한 워크 플로와 자신의 디지털 마스터 저장소가 있다는 것입니다. 이것이 당신을위한 옵션이 아니라면, 당신은 또한 사용할 수 있습니다소스 파일 업로드 Dynamic Ingest가 액세스 할 수있는 임시 위치에 비디오 및 기타 자산을 업로드합니다.
소스 파일 이름
브라이트코브로 전송될 때 모든 입력 URL은RFC 3986에따라 올바르게 인코딩되어야 합니다. 이것은예약 된 문자 URL의 경로에서 발견 된 비율이 인코딩됩니다 (공백이%20
), URL 쿼리에서 발견 된 예약 된 문자는 백분율로 인코딩됩니다 (공백은+
또는%20
, 및+
인코딩되는%2B
).
ㅏ사전 서명 S3 ( v2포함서명 , 만료과 AWSAccessKeyId , 및 v4포함 X-Amz- 알고리즘 , X-Amz- 자격 증명 , X-Amz-Date , X-Amz- 만료 , X-Amz-SignedHeaders , 및 X-Amz- 서명 ) 또는 GCS (포함서명 , 만료 , 및 GoogleAccessId ) URL은 이미 올바르게 인코딩되어 있어야하며그대로 사용 가능 .
비디오 수집
동영상 수집에 필요한 두 가지 API 호출이 있습니다.
- 를CMS API호출하여 Video Cloud 시스템에서 비디오 객체를 만들고 해당 ID를 가져옵니다.
- DI API를 호출하여 비디오 소스 파일의 URL을 제공하고수집 프로필사용될
기본 요청의 샘플 집합은 다음과 같습니다.
CMS API 요청
- HTTP 메소드
- 우편
- 요청 URL
- https://cms.api.brightcove.com/v1/accounts/{account_id}/videos
- 요청 본문
-
{ "name": "My new video" }
응답 데이터에는 동영상이 포함됩니다. id
, 다음 요청에서 사용됩니다.
API 요청 수집
- HTTP 메소드
- 우편
- 요청 URL
- https://ingest.api.brightcove.com/v1/accounts/{account_id}/videos/{video_id}/ingest-requests
- 요청 본문
-
{ "master": { "url": "http://host/master.mp4" }, "profile": "high-resolution" }
참조빠른 시작 API 호출에 대한 자세한 내용은작업 샘플 .
에 대한CMS API Video Cloud 시스템에서 비디오를 생성하려면 CMS API 개요 . 비디오name
필수이며 동영상 메타 데이터에 포함 된 이름 및 기타 문자열 (예 : description
) URI로 인코딩되어야합니다. .
샘플 자산
브라이트코브 학습 서비스는 동적 인제스트를 시작하는 데 사용할 수 있는 몇 가지 샘플 자산을 제공합니다. 이러한 자산에는 여러 언어로 된 짧은 비디오, 이미지 및 WebVTT 캡션이 포함됩니다.
비디오 교체
비디오를 새 버전이나 새 변환 세트로 바꾸려면Dynamic Ingest API전화는 그것과 똑같습니다새 동영상 수집 -유일한 차이점은 사전에 전화를 걸 필요가 없다는 것입니다. CMS API Video Cloud 시스템에서 비디오 개체를 만들고 이에 대한 ID를 가져옵니다. 지정된 URL의 소스 비디오 파일이 원래 수집된 파일과 동일한 경우 새 변환 세트를 가져오기만 하면 됩니다. 소스 파일이 새 것이면 기존 비디오를 교체하게 됩니다. 재코드 변환이 완료될 때까지 모든 동영상은 기존 변환으로 계속 재생됩니다.
참조여기에서 작업 샘플 .
비디오 재 트랜스 코딩
당신이 선택한 경우마스터 아카이브비디오를 통해Dynamic Ingest API또는 Studio 업로드 모듈을 사용하면 마스터에서 비디오를 다시 트랜스 코딩 할 수도 있습니다. 다시 인제스트 요청의 URL은 동일하지만 요청 본문에는 다음이 포함됩니다.
// request
POST /v1/accounts/{account_id}/videos/{video_id}/ingest-requests
// request body
{
"master": { "use_archived_master": true },
"profile": "videocloud-default-v1"
}
이미지
당신은 사용할 수 있습니다Dynamic Ingest API비디오에서 포스터 및 썸네일 이미지를 캡처하거나 자신의 이미지를 추가합니다. 자세한 내용은이미지 및 Dynamic Ingest API .
캡션 수집
WebVTT 캡션을 비디오에 추가하거나 Dynamic Ingest를 사용하여 기존 비디오에 업로드 할 수도 있습니다. 자세한 내용은 WebVTT 파일 수집 .
DRM 및 HLSe
Dynamic Ingest는 Brightcove에서 지원하는 DRM 유형을 사용하는 비디오를 처리합니다. HLSe도 지원됩니다.
변환 보관
기본적으로 모든 비디오 및 이미지 변환은 자동으로 보관됩니다. 변환 보관 기능을 끄려면 Brightcove 지원에 문의 . 참고디지털 마스터수집 프로파일에 지정된 경우 아카이브됩니다.
알림
하나 이상의 콜백 URL을 지정하여 수집 프로세스 결과 알림을받을 수 있습니다. 지정하는 URL은 POST 요청을 수락 할 수있는 앱용이어야합니다. 알림은 JSON 형식으로 전송됩니다.
알림 수신 및 해석에 대한 자세한 내용은알림 : 동적 수집 및 CMS API