다음을 통해 공유


자산

Asset 엔터티에는 디지털 파일(비디오, 오디오, 이미지, 미리 보기 컬렉션, 텍스트 트랙 및 닫힌 캡션 파일 포함)과 이러한 파일에 대한 메타데이터가 포함되어 있습니다. 디지털 파일은 자산에 업로드한 후 Media Services 인코딩 및 스트리밍 워크플로에서 사용할 수 있습니다.

자산을 인코딩하는 경우 출력 자산은 인코딩 작업 완료 시 생성됩니다. 위에서 언급한 파일 중 출력 자산에는 입력 자산 및 출력 자산을 설명하는 XML 메타데이터 파일이 포함됩니다. 자세한 내용은 입력 메타데이터출력 메타데이터 문서를 참조하세요.

Media Services의 자산에 적용되는 특성은 다음과 같습니다.

  • 자산은 단일 시청각 프레젠테이션을 나타내는 논리 단위입니다.

  • 자산에는 일 대 다 미디어 파일 컬렉션이 포함되어 있습니다.

  • 자산의 파일은 단일 Blob 저장소 컨테이너에 있습니다.

자산의 몇 가지 예는 다음과 같습니다: 전체 영화, TV 쇼, 특정 편집; 영화, TV 프로그램, 애니메이션, 카메라 ISO 파일 또는 이벤트의 클립 영화 예고편 또는 홍보 동영상 광고; 오디오 파일, 라디오 쇼, 팟캐스트 또는 사운드 파일

Media Services의 자산에는 다음 특성이 적용되지 않습니다.

  • 저장소 컨테이너 단순화

  • 동일한 프레젠테이션의 여러 버전을 구성 및 저장하기 위한 폴더

  • 여러 시청각 프레젠테이션의 일괄 처리를 Azure 미디어 인코더에 제출하기 위한 폴더

예를 들어 자산 하나에 동영상, 동영상의 예고편, 광고 및 동일한 동영상의 국제 편집 버전은 저장하면 안 됩니다.

이 항목에서는 Asset 엔터티에 대해 간략하게 설명하는 동시에 미디어 서비스 REST API를 사용하여 다양한 작업을 실행하는 방법도 보여 줍니다.

중요

Media Services에서 엔터티에 액세스할 때는 HTTP 요청에서 구체적인 헤더 필드와 값을 설정해야 합니다.
자세한 내용은 Media Services REST API 개발 설정 및 Media Services REST API를 사용하여 Media Services에 연결을 참조하세요.

Asset 엔터티 속성

속성 형식 설명
Id

읽기 전용입니다. 만들 때 Media Services에서 설정합니다.
문자열 고유 식별자입니다.
State

읽기 전용입니다. 미디어 서비스에 의해 설정됩니다.
Edm.Int32 자산 상태를 설명하는 열거 값입니다. 값은 다음과 같습니다.

- 초기화 = 0
- 게시됨 = 1 경고:Publish 작업이 더 이상 사용되지 않습니다. 자산이 Published 상태인지 여부를 확인하는 코드를 제거합니다.
- 삭제됨 = 2

삭제되기 전까지 자산은 항상 초기화 상태입니다.
Created

읽기 전용입니다. 만들 때 Media Services에서 설정합니다.
Edm.DateTime 이 값은 생성 시 Media Services에 의해 설정됩니다.
LastModified

읽기 전용입니다. 미디어 서비스에 의해 설정됩니다.
Edm.DateTime 이 값은 속성이 변경된 후 Media Services에 의해 업데이트됩니다.
AlternateId

선택 사항입니다.
Edm.String 다른 콘텐츠 관리 시스템의 ID에 해당하는 대체 ID 값입니다. 최대 길이는 4000입니다.
Name

선택 사항입니다.
Edm.String 자산의 이름입니다. 최대 길이는 512입니다.
Options

필수 요소. 엔터티가 만들어진 후에는 업데이트할 수 없습니다.
Edm.Int32 자산을 만들 수 있는 암호화 옵션에 대해 설명하는 열거 값입니다. 유효한 값은 다음 목록 값의 조합이 아니라 이 목록의 값 중 하나입니다.

- 없음 = 0: 자산 만들기 옵션을 지정하지 않습니다.
- StorageEncrypted = 1: 자산을 만들 때 업로드 및 스토리지를 위해 자산의 파일을 암호화해야 한다고 지정합니다.
- CommonEncryptionProtected = 2: 일반적인 암호화 방법(예: PlayReady)을 사용하여 자산의 파일이 보호되도록 지정합니다.
- EnvelopeEncryptionProtected = 4
Uri

읽기 전용입니다. 미디어 서비스에 의해 설정됩니다.
Edm.String 지정된 자산의 Blob Storage 컨테이너 URI입니다.
Locators

읽기 전용입니다. 미디어 서비스에 의해 설정됩니다.
Locator 엔터티 집합 반환된 엔터티 집합에는 지정된 자산에 연결된 모든 Locator 엔터티가 포함됩니다.
ContentKeys

선택 사항입니다.
ContentKey 엔터티 집합 반환된 엔터티 집합에는 지정된 자산에 연결된 모든 ContentKey 엔터티가 포함됩니다.
Files

읽기 전용입니다. 미디어 서비스에 의해 설정됩니다.
File 엔터티 집합 반환된 엔터티 집합에는 지정된 자산에 연결된 모든 File 엔터티가 포함됩니다.
ParentAssets

선택 사항입니다.
ParentAssets 엔터티 집합 반환된 엔터티 집합에는 지정된 자산에 연결된 모든 ParentAssets 엔터티가 포함됩니다.
StorageAccountName

선택 사항입니다. 엔터티가 만들어진 후에는 업데이트할 수 없습니다.
Edm.String 자산의 Blob 컨테이너가 포함된 저장소 계정 이름입니다.

만들 때 지정하지 않으면 Media Services에서 기본 스토리지 계정 이름을 설정합니다.
StorageAccount

읽기 전용입니다. 미디어 서비스에 의해 설정됩니다.
StorageAccount 엔터티 집합 반환된 엔터티 집합에는 지정된 자산에 연결된 모든 StorageAccount 엔터티가 포함됩니다.
DeliveryPolicies AssetDeliveryPolicy 엔터티 집합 반환된 엔터티 집합에는 자산과 관련된 배달 정책이 포함됩니다.
FormatOption Edm.Int32 자산을 만들 수 있는 다양한 형식 옵션을 지정합니다. 허용되는 값은 0(기본값) - 자산 형식 옵션을 지정하지 않습니다. 1 - 자산의 형식이 AdaptiveStreaming이 되도록 지정합니다.

자산 만들기

자산은 POST HTTP 요청을 통해 속성 값을 지정하여 만들 수 있습니다.

메서드 요청 URI HTTP 버전
POST <https:// accountname.restv2>.<location.media.azure.net/api/Assets> HTTP/1.1

샘플 요청

최신 x-ms-version:을 얻으려면 Media Services REST를 참조하세요.

POST https://<accountname>.restv2.<location>.media.azure.net/api/Assets HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization:  Bearer <token value>  
Host: media.windows.net  
Content-Length: 27  
Expect: 100-continue  
  
{ "Name" : "NewJSONAsset" }  

자산 나열

자산은 GET HTTP 요청을 사용하여 검색할 수 있습니다.

메서드 요청 URI HTTP 버전
GET <https:// accountname.restv2>.<location.media.azure.net/api/Assets> HTTP/1.1
메서드 요청 URI HTTP 버전
GET <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid') HTTP/1.1

샘플 요청

최신 x-ms-version:을 얻으려면 Media Services REST를 참조하세요.

GET https://<accountname>.restv2.<location>.media.azure.net/api/Assets('nb:cid:UUID:fccb8cd9-7afa-4365-a36e-d5d68409bb64') HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  
Content-Length: 0  
  

자산 업데이트

자산은 MERGE HTTP 요청 및 변경하려는 특정 속성을 사용하여 업데이트할 수 있습니다.

메서드 요청 URI HTTP 버전
MERGE <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid') HTTP/1.1

샘플 요청

최신 x-ms-version:을 얻으려면 Media Services REST를 참조하세요.

MERGE https://<accountname>.restv2.<location>.media.azure.net/api/Assets('nb:cid:UUID:80782407-3f87-4e60-a43e-5e4454232f60') HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  
Content-Length: 21  
Expect: 100-continue  
  
{"Name" : "NewName" }  

자산 삭제

자산은 자산 ID 값을 참조하여 삭제할 수 있습니다. 자산이 삭제되면 Microsoft Azure Media Services 모든 로케이터가 삭제됩니다. 자산에 원본 로케이터가 있는 경우 이러한 로케이터도 해지되고 삭제됩니다. ContentKey에 대한 모든 링크가 삭제되고 다른 자산에 연결되지 않은 모든 ContentKey가 삭제됩니다.

메서드 요청 URI HTTP 버전
DELETE <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid') HTTP/1.1

샘플 요청

최신 x-ms-version:을 얻으려면 Media Services REST를 참조하세요.

DELETE https://<accountname>.restv2.<location>.media.azure.net/api/Assets('nb:cid:UUID:fccb8cd9-7afa-4365-a36e-d5d68409bb64') HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  
Content-Length: 0  
  

자산 게시

참고

Publish 작업이 더 이상 사용되지 않습니다. 최신 Media Services 릴리스부터 를 Publish 사용하면 안 됩니다.

코드에서 Publish를 사용할 경우 다음 고려 사항에 주의하세요.

  1. Publish 작업은 자산과 연결된 로케이터를 삭제하지 않습니다. Publish를 호출하면 코드에서 로케이터를 명시적으로 삭제해야 합니다.
  2. Publish 작업은 자산 상태를 Published으로 설정하지 않습니다. 자산이 Published 상태인지 여부를 확인하는 코드를 제거합니다. 현재 자산은 Initialized 또는 Deleted 상태만 있을 수 있습니다.

자산에 콘텐츠 키 연결

HTTP POST 요청으로 자산 ID를 참조하여 ContentKey 를 자산에 연결할 수 있습니다. ContentKey의 URI가 요청 본문에 포함되어야 합니다. 자산의 CreationOptions에서 지정된 유형과 일치하는 ContentKey 유형만 연결할 수 있습니다. 예를 들어 자산에 StorageEncrypted(1)로 설정된 옵션이 있는 경우 ContentKey는 StorageEncryption(1) 유형이어야 합니다.

메서드 요청 URI HTTP 버전
POST <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('Asset Id')/$links/ContentKeys HTTP/1.1

샘플 요청

최신 x-ms-version:을 얻으려면 Media Services REST를 참조하세요.

POST https://<accountname>.restv2.<location>.media.azure.net/api/Assets('nb:cid:UUID:3ac4c50a-09c1-4ea3-b39c-c336d97f5a13')/$links/ContentKeys HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  
Content-Length: 121  
Expect: 100-continue  
  
{ "uri": "https://&lt;accountname&gt;.restv2.&lt;location&gt;.media.azure.net/api/ContentKeys('nb%3Akid%3AUUID%3A5db89211-c9d9-404b-a6bc-3e6b91c7a214')"}  
  

HTTP DELETE 요청에서 자산 ID 및 ContentKey ID를 참조하여 자산에서 ContentKey 링크를 제거할 수 있습니다. ContentKey가 다른 자산에 연결되어 있지 않은 경우 ContentKey는 삭제됩니다.

메서드 요청 URI HTTP 버전
DELETE <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('Asset Id')/$links/ContentKeys('ContentKey Id') HTTP/1.1

샘플 요청

최신 x-ms-version:을 얻으려면 Media Services REST를 참조하세요.

DELETE https://<accountname>.restv2.<location>.media.azure.net/api/Assets('nb:cid:UUID:3ac4c50a-09c1-4ea3-b39c-c336d97f5a13')/$links/ContentKeys('nb:kid:UUID:5db89211-c9d9-404b-a6bc-3e6b91c7a214') HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  
Content-Length: 0  
  

참고 항목

AccessPolicy
ContentKey
AssetFile
작업
JobTemplate
로케이터
MediaProcessor
Task
TaskTemplate
Media Services REST API를 사용하여 자산 수집
할당량 및 제한 사항