AI Metadata Optimizer

In this topic, you will learn how to utilize the Brightcove AI Metadata Optimizer.

Introduction

Brightcove Metadata Optimizer

The Brightcove AI Metadata Optimizer automatically generates video metadata using text tracks, audio, and visual analysis. This helps ensure your content is discoverable, consistent, and aligned with your publishing standards.

You can access the Metadata Optimizer through three main entry points in the Video Cloud UI:

  • During video upload
  • In the Video Details page
  • Via bulk selection in the Media module

Setting up the Metadata Optimizer

Enabling the Advanced Optimizer

By default, the standard optimizer uses text tracks to suggest metadata. The Advanced Optimizer analyzes both audio and visuals to generate richer metadata.

To enable the Advanced Optimizer by default:

  1. In the Admin module, select Video Fields → Metadata Generation.

  2. Select Enable Advanced Metadata Optimizer (with visual analysis).

  3. Click Save

Additional configurations on this page:

Setting the Default Metadata Language

Metadata is generated in English by default, but this can be changed in the Admin module.

Metadata Generated at Upload or Bulk Selection

Choose whether the optimizer generates all metadata fields (title, description, tags) or only selected ones.

You can also enable a review step to verify metadata before publishing. This becomes the default behavior for:

  • All ingested videos
  • All bulk metadata optimizer calls

Default behavior for metadata generation

Control whether metadata generation is enabled by default for new uploads. This sets the default state on the Upload page; you can still override it per upload.

  • On by default: Metadata will be generated automatically whenever you upload content unless you disable it on the Upload page.
  • Off by default: Metadata will not be generated unless you manually enable it on the Upload page.

Configuring Tag Architecture

Define custom tag rules to align metadata with your organization's taxonomy.

For each rule, specify a tag and describe the condition under which it should apply.

Defining Metadata Style

Set character limits for each metadata field (e.g., title, short description, tags, long description).

Optionally, provide reference sample videos in Video Cloud that reflect your preferred metadata style. The optimizer will use these samples to match formatting and tone.

Using the Metadata Optimizer

During Ingestion (Upload Module)

  1. Navigate to the Upload module and select Generate Metadata.

  2. (Optional) Select Review metadata before publishing if you want to approve suggestions first.
  3. Complete the upload. Metadata will be generated automatically.

If review is enabled:

  • A yellow attention icon appears in your Media module (Status column) when metadata has been generated but requires review.
  • View the video's detail page in the Media module, accept or request additional suggestions, then approve metadata for publication.

From the Video Details Page

  1. Navigate to the Media module and select a video.
  2. Ensure the video has text tracks. If not, you'll be prompted to generate auto captions or upload a text track.
  3. In the Overview tab, click Generate Metadata.

  4. Choose and edit metadata:
    • Select your preferred option(s).
    • Edit manually if needed.
  5. Click Save

Multi-Language Metadata

If multi-language metadata is enabled, you can set metadata in two ways:

Generate once, then translate

  • Generate metadata in your main language.
  • Save either for that single language or apply translations across all enabled languages.

Generate per language

  • Change the Language View in Video Details.
  • Click Generate Metadata and repeat the process for each language.

Bulk Metadata Generation

  1. In the Media module, select your videos.
  2. Click … → Generate Metadata.

  3. Choose whether to review before publishing or skip review.

If review is enabled:

  • A yellow attention icon appears in your Media module (Status column) when metadata has been generated but requires review.
  • View each video's detail page in the Media module. Accept or request additional suggestions.

API Access

Create/Fetch/Delete AI metadata enhancement job

Endpoint (requires scope video-cloud/video/read):

POST | GET | DELETE https://ingest.api.brightcove.com/v1/accounts/{account_id}/video/{video_id}/ai/metadata-enhancement/{language}
    

POST payload fields

  • fields_to_generate: optional list of strings. Supported: names, long_descriptions, short_descriptions, tags. If empty/omitted, all four are generated.
  • skip_review: optional boolean. If true, the first generated suggestion is automatically saved, possibly overwriting previous values. Suggested tags are added to existing tags. With multi-language enabled, skipping review always writes to the primary language view.
  • use_tag_architecture: optional boolean. If true, user-defined custom tag rules are enforced (see /v1/accounts/{account_id}/ai/metadata-enhancement/tags).
  • references: optional list of video IDs to use as inspiration for style.
  • character_limits: optional mapping from names | long_descriptions | short_descriptions | tags to number (max length).
  • translation_request: optional object (for multi-language customers) defining what to translate in non-primary language views.
    • languages: list of strings (e.g., ["es-ES", "fr-FR"])
    • name: string
    • short_description: string
    • long_description: string
    Notes: tags are not supported in translations. When translation_request is provided, all other fields are ignored. Generating both the primary language metadata and the secondary language translations in the same request is not supported.

GET response fields

  • account_id: string
  • created_at: string (e.g., 2025-09-18)
  • job_id: string
  • language: string
  • status: string (processing | finished | failed)
  • video_id: string
  • names: list of strings (only when status is finished)
  • short_descriptions: list of strings (only when status is finished)
  • long_descriptions: list of strings (only when status is finished)
  • tags: list of one list of strings, e.g., [["tag1", "tag2", …]] (only when status is finished)
  • skip_review: boolean (echoes submitted value)

Get list of all AI metadata enhancement jobs

GET https://ingest.api.brightcove.com/v1/accounts/{account_id}/ai/metadata-enhancement/jobs
Scope: video-cloud/video/read
Response: list of job objects (same shape as the single-job GET)
    

Get/Update AI metadata enhancement tag rules

GET | PUT https://ingest.api.brightcove.com/v1/accounts/{account_id}/ai/metadata-enhancement/tags
Scopes, request, and response formats match the Autocaption Dictionary endpoint: /accounts/{account_id}/autocaption-dictionary
    

Request AI metadata enhancement at ingestion

In the ingestion API, new fields were added to the existing request:

POST /v1/accounts/{account_id}/videos/{video_id}/ingest-requests
{
  "transcriptions": [
    {
      "autodetect": true,
      "kind": "captions",
      "metadata_optimizer": {
        // All valid fields from POST /ai/metadata-enhancement/{language} except translation_request
        "language": "en-US"
      }
    }
  ]
}
    

FAQs

  • What are the limitations of this feature?
    Standard optimizer uses text tracks only; The Advanced Optimizer also analyzes visuals. If a video lacks captions, you can auto-generate them (may require retranscoding).
  • Which languages are supported?
    The Metadata Optimizer supports over 40 languages, including English (US, UK, AU, etc.), Spanish (Spain, US), French (FR, CA), German, Italian, Japanese, Korean, Chinese (Simplified & Traditional), and many more.
  • Can I prevent automatic publishing of metadata?
    Yes. By enabling the review option, metadata will require approval before being applied.
  • Can I use the Universal Translator to generate text tracks for the Metadata Optimizer?
    Yes. The Metadata Optimizer works with Brightcove Universal Translator, Brightcove Autocaptions, and third-party caption tools (standard formats).
  • Does it support third-party captions?
    Yes, captions from outside Brightcove are supported.