Recurso

La entidad Asset contiene archivos digitales (como vídeos, audio, imágenes, colecciones de miniaturas, pistas de texto y subtítulos) y metadatos de estos archivos. Una vez que los archivos digitales se cargan en un recurso, se pueden utilizar en los flujos de trabajo de codificación y streaming en Media Services.

Cuando se codifica un activo, se produce un activo de salida tras la finalización del trabajo de codificación. Entre los archivos mencionados anteriormente, el recurso de salida contiene archivos de metadatos XML que describen el recurso de entrada y el recurso de salida. Para más información, consulte los artículos Input Metadata (Metadatos de entrada) y Output Metadata (Metadatos de salida).

Las siguientes características se aplican a un recurso de Media Services:

  • Un Asset es una unidad lógica que representa una única presentación audiovisual.

  • Un Asset contiene una colección de uno o varios archivos multimedia.

  • Los archivos de un Asset se encuentran en un único contenedor de almacenamiento blobs.

Algunos ejemplos de un recurso son: una película completa, un programa de TV, una edición específica; un clip de una película, un programa de TV, una animación, un archivo ISO de cámara o un evento; un tráiler de películas o vídeo promocional; un anuncio; un archivo de audio, un programa de radio, un podcast o un archivo de sonido.

Las características siguientes NO se aplican a un recurso de Media Services:

  • Un simple contenedor de almacenamiento

  • Una carpeta para organizar y almacenar varias versiones de la misma presentación

  • Una carpeta para enviar el procesamiento por lotes de varias presentaciones audiovisuales a Azure Media Encoder

Por ejemplo, no debe almacenar una película, su tráiler, un anuncio y una versión de edición internacional de la misma película en un único Asset.

En este tema encontrará un resumen de la entidad Asset y una demostración de cómo ejecutar distintas operaciones con la API de REST de Media Services.

Importante

Al obtener acceso a las entidades de Media Services, debe establecer los campos de encabezado específicos y los valores en las solicitudes HTTP.
Para obtener más información, consulte Configuración del desarrollo de la API de REST de Media Services y Conexión a Media Services con la API de REST de Media Services.

Propiedades de la entidad Asset

Propiedad Tipo Descripción
Id

Solo lectura. Se establece por Media Services en el momento de la creación.
String Identificador único.
State

Solo lectura. Establecido por Servicios multimedia.
Edm.Int32 Valor de enumeración que describe el estado del recurso. Los valores válidos son:

- Inicializado = 0
- Publicado = 1 Advertencia: la Publish acción ha quedado en desuso. Quite el código que comprueba si un recurso tiene el estado Published.
- Eliminado = 2

Un recurso siempre se encuentra en un estado inicializado hasta que se elimina.
Created

Solo lectura. Se establece por Media Services en el momento de la creación.
Edm.DateTime Media Services establece este valor en el momento de la creación.
LastModified

Solo lectura. Establecido por Servicios multimedia.
Edm.DateTime Media Services actualiza este valor después de realizar cualquier cambio de propiedad.
AlternateId

Opcional.
Edm.String Valor de identificador alternativo que se corresponde con un identificador de otro sistema de administración de contenido. La longitud máxima es 4000.
Name

Opcional.
Edm.String Nombre descriptivo del recurso. La longitud máxima es 512.
Options

Necesario. No se puede actualizar después de la creación de la entidad.
Edm.Int32 Valor de enumeración que describe las opciones de cifrado con las que se puede crear un Asset. A continuación se incluyen los valores válidos, que no se pueden combinar:

- None = 0: no especifica ninguna opción de creación de recursos.
- StorageEncrypted = 1: especifica que los archivos de un recurso se deben cifrar para cargar y almacenar al crear el recurso.
- CommonEncryptionProtected = 2: especifica que los archivos de un recurso están protegidos mediante un método de cifrado común (como PlayReady).
- EnvelopeEncryptionProtected = 4
Uri

Solo lectura. Establecido por Servicios multimedia.
Edm.String URI del contenedor de Blob Storage del recurso especificado.
Locators

Solo lectura. Establecido por Servicios multimedia.
Conjunto de entidades Locator El conjunto de entidades devuelto contiene todas las entidades Locator vinculadas al Asset especificado.
ContentKeys

Opcional.
Conjunto de entidades ContentKey El conjunto de entidades devuelto contiene todas las entidades ContentKey vinculadas al Asset especificado.
Files

Solo lectura. Establecido por Servicios multimedia.
Conjunto de entidades File El conjunto de entidades devuelto contiene todas las entidades File vinculadas al Asset especificado.
ParentAssets

Opcional.
Conjunto de entidades de recursos principales El conjunto de entidades devuelto contiene todas las entidades del recurso principal vinculadas al recurso especificado.
StorageAccountName

Opcional. No se puede actualizar después de la creación de la entidad.
Edm.String Nombre de la cuenta de almacenamiento que contiene el contenedor blob del recurso.

Si no se especifica en el momento de la creación, Media Services establece el nombre de la cuenta de almacenamiento predeterminada.
StorageAccount

Solo lectura. Establecido por Servicios multimedia.
Conjunto de entidades StorageAccount El conjunto de entidades devuelto contiene todas las entidades StorageAccount vinculadas al recurso especificado.
DeliveryPolicies Conjunto de entidades AssetDeliveryPolicy El conjunto de entidades devuelto contiene directivas de entrega asociadas al activo.
FormatOption Edm.Int32 Especifica diferentes opciones de formato con las que se puede crear un recurso. Los valores permitidos son: 0 (valor predeterminado): no especifica ninguna opción de formato de recurso; 1: especifica que el formato de un recurso será AdaptiveStreaming.

Creación de un recurso

Para crear Assets, puede usar una solicitud HTTP POST y especificar valores de propiedad.

Método URI de solicitud Versión HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Assets> HTTP/1.1

Solicitud de ejemplo

Para obtener la versión más reciente x-ms-version:, consulte REST de Media Services.

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" }  

Lista de Assets

Para recuperar Assets, use una solicitud HTTP GET.

Método URI de solicitud Versión HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/Assets> HTTP/1.1
Método URI de solicitud Versión HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid') HTTP/1.1

Solicitud de ejemplo

Para obtener la versión más reciente x-ms-version:, consulte REST de Media Services.

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  
  

Actualización de Assets

Para actualizar Assets, use una solicitud HTTP MERGE y las propiedades específicas que desee cambiar.

Método URI de solicitud Versión HTTP
MERGE <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid') HTTP/1.1

Solicitud de ejemplo

Para obtener la versión más reciente x-ms-version:, consulte REST de Media Services.

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" }  

Eliminación de un recurso

Para eliminar Assets, puede hacer referencia al valor de identificador de Asset. Cuando se elimina un recurso, Microsoft Azure Media Services eliminan todos sus localizadores. Si el recurso tenía localizadores de origen, estos localizadores también se revocarán y eliminarán. Todos los vínculos a ContentKeys se eliminarán, así como cualquier ContentKey que no esté vinculada a otros recursos.

Método URI de solicitud Versión HTTP
Delete <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid') HTTP/1.1

Solicitud de ejemplo

Para obtener la versión más reciente x-ms-version:, consulte REST de Media Services.

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  
  

Publicación de Assets

Nota

La acción Publish está en desuso. A partir de la versión más reciente de Media Services, Publish no se debe usar.

Si el código usa Publish, tenga en cuenta las consideraciones siguientes:

  1. La acción Publish no elimina los localizadores asociados al recurso. Debe eliminar los localizadores del código explícitamente después de llamar a Publish.
  2. La acción Publish no define el estado del recurso como Published. Quite el código que comprueba si un recurso tiene el estado Published. Actualmente, un recurso solo puede tener el estado Initialized o Deleted.

Vinculación de ContentKeys a Assets

Puede vincular una contentKey a un recurso haciendo referencia al identificador de recurso con una solicitud HTTP POST. Debe incluir el URI de ContentKey en el cuerpo de la solicitud. Solo puede vincular un tipo de ContentKey que coincida con el tipo especificado en la sección CreationOptions del recurso. Por ejemplo, si el Asset tiene opciones definidas como StorageEncrypted(1), el tipo de ContentKey debe ser StorageEncryption(1).

Método URI de solicitud Versión HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('Asset Id')/$links/ContentKeys HTTP/1.1

Solicitud de ejemplo

Para obtener la versión más reciente x-ms-version:, consulte REST de Media Services.

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')"}  
  

Puede quitar vínculos ContentKey de un recurso haciendo referencia al identificador del recurso y al identificador contentKey en una solicitud HTTP DELETE. Si ContentKey no está vinculada a ningún otro recurso, se eliminará.

Método URI de solicitud Versión HTTP
Delete <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('Asset Id')/$links/ContentKeys('ContentKey Id') HTTP/1.1

Solicitud de ejemplo

Para obtener la versión más reciente x-ms-version:, consulte REST de Media Services.

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  
  

Consulte también

AccessPolicy
ContentKey
AssetFile
Trabajo
JobTemplate
Localizador
MediaProcessor
Task
TaskTemplate
Introducción de activos con la API de REST de Servicios multimedia
Cuotas y limitaciones