Gestion des pistes de texte à l'aide de l'API CMS

Dans cette rubrique, vous apprendrez à utiliser l'API CMS pour mettre à jour les pistes de texte WebVTT de vos vidéos.

Introduction

Que les pistes de texte soient ingérées (statiques ou dynamiques) ou distantes, vous pouvez utiliser un PATCH demande de mise à jour des métadonnées associées aux pistes de texte.

Remarques

Autorisation

Les requêtes à l'API CMS nécessitent un en-tête d'autorisation qui contient vos jetons d'accès. Pour plus de détails sur la façon d'obtenir les informations d'identification client et de les utiliser pour récupérer des jetons d'accès, consultez le Présentation de Brightcove OAuth.

Les opérations dont vous aurez besoin pour mettre à jour les métadonnées de la vidéo sont video-cloud/video/update ou video-cloud/video/all.

Syntaxe

Nous vous recommandons de faire d'abord la demande suivante pour obtenir la baie complète :


GET
https://cms.api.brightcove.com/v1/accounts/{account_id}/videos/{video_ID}

Mise à jour des pistes de texte

Lors de la mise à jour des pistes de texte, certains champs de Champs de pistes de texte peut être traité différemment selon son type.

Champs de piste de texte
Champ Type Pistes de texte à distance Pistes de texte ingéré statiques Pistes de texte ingéré dynamiques
id Chaîne Valeur LECTURE SEULE. Requis pour identifier le TT qui doit être mis à jour.
account_id Chaîne Les mises à jour de ce champ seront ignorées.
src Chaîne Obligatoire et limité à 255 caractères. Les mises à jour de ce champ seront ignorées.
srclang Chaîne Limité à 32 caractères.
label Chaîne Limité à 255 caractères.
kind Énumération Les valeurs valides sont :
  • subtitles
  • captions
  • descriptions
  • chapters
  • metadata
status énumération Valeurs valables (sensibles à la casse) :
  • published- des pistes de texte seront mises à la disposition des spectateurs
  • draft- les pistes de texte ne seront pas accessibles aux spectateurs
  • null- les pistes de texte (par défaut) seront mises à la disposition des spectateurs
mime_type Chaîne Limité à 32 caractères. Les mises à jour de ce champ seront ignorées.
asset_id Chaîne Valeur LECTURE SEULE. Champ non applicable pour ce type. Les mises à jour de ce champ seront ignorées.
in_band_metadata_track_dispatch_type Chaîne Champ non applicable pour ce type. Les mises à jour de ce champ seront ignorées.
sources baie Valeur LECTURE SEULE.
default Booléen true ou alors false. Le champ default pour les pistes de texte ingérées aura le même comportement pour les pistes de texte distantes et les pistes de texte ingérées. Vous ne pouvez pas ajouter plusieurs default=true aux pistes de texte avec différents srclang.  

Requête

Applicable aux pistes de texte distantes, statiques et dynamiques.


PATCH
https://cms.api.brightcove.com/v1/accounts/{account_id}/videos/{video_ID}

Demander des exemples de corps

Pistes de texte à distance

Le corps de la requête sera un objet JSON contenant un tableau de pistes de texte :

        
          {
  "text_tracks" : 
  [ 
    { 
      "id" : "1234-1234-1234"
      "src" :     "https://some.site.com/captions/bc_smart_ja.vtt",
      "srclang" : "ja", 
      "label" : "日本人", 
      "kind" : "captions", 
      "mime_type" : null, 
      "default" : true,
      "status": "published"
    }, 
    { 
      "id" : "5678-5678-5678"
      "src" : "https://some.site.com/captions/bc_smart_es.vtt",  
      "srclang" : "es", 
      "label" : "español", 
      "kind" : "descriptions",
      "mime_type" : null,
      "default" : false,
      "status": "published"
    } 
  ] 
}
        
      
Pistes de texte statiques

Le corps de la requête sera un objet JSON contenant un tableau de pistes de texte :

        
          {
  "text_tracks" : 
  [ 
    { 
      "id" : "1234-1234-1234"
      "srclang" : "ja", 
      "label" : "日本人", 
      "kind" : "captions", 
      "mime_type" : null, 
      "default" : true,
      "status": "published"
    }, 
    { 
      "id" : "5678-5678-5678"  
      "srclang" : "es", 
      "label" : "español", 
      "kind" : "descriptions",
      "mime_type" : null,
      "default" : false,
      "status": "published"
    } 
  ] 
}
        
      
Pistes de texte dynamiques

Le corps de la requête sera un objet JSON contenant un tableau de pistes de texte :

        
          {
  "text_tracks" : 
  [ 
    { 
      "id" : "1234-1234-1234"
      "srclang" : "ja", 
      "label" : "日本人", 
      "kind" : "captions", 
      "mime_type" : null, 
      "default" : true,
      "status": "published" 
    }, 
    { 
      "id" : "5678-5678-5678"  
      "srclang" : "es", 
      "label" : "español", 
      "kind" : "descriptions",
      "mime_type" : null,
      "default" : false,
      "status": "published" 
    } 
  ] 
}