Configure legendas e traduções automáticas

Esta página explica como configurar legendas geradas pela IA e legendas traduzidas (ou seja, traduções) para uma stream em direto.

As legendas e as traduções geradas pela IA são suportadas para streams em direto HLS e DASH.

Antes de começar

Esta página pressupõe que concluiu os passos na secção Antes de começar do Início rápido para uma stream em direto HLS ou do Início rápido para uma stream em direto MPEG-DASH.

Localizações suportadas

Os códigos de idioma para legendas geradas pela IA são suportados por localização.

Mostrar localizações

Localização Códigos de idiomas suportados
asia-northeast1 en-US
asia-south1 en-IN
en-GB
en-US
asia-southeast1 en-US
australia-southeast1 en-AU
europe-west1 da-DK
nl-NL
en-GB
en-US
fr-FR
de-DE
it-IT
es-ES
europe-west2 en-GB
europe-west3 da-DK
nl-NL
en-GB
en-US
fr-FR
de-DE
it-IT
es-ES
northamerica-northeast1 en-CA
fr-CA
us-central1 en-US
pt-BR
es-CO
es-MX
es-US
us-east1 en-US
pt-BR
es-CO
es-MX
es-US
us-west1 en-US
pt-BR
es-CO
es-MX
es-US

A funcionalidade de tradução gerada pela IA só é suportada no us-west1 e no europe-west1.

Use us-west1 ou europe-west1 para todos os pedidos da API nesta página.

Crie o ponto final de entrada

Para criar o ponto final de entrada, use o método projects.locations.inputs.create.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização na qual criar o ponto final de entrada; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • INPUT_ID: um identificador definido pelo utilizador para o novo ponto final de entrada a criar (para o qual envia a sua stream de entrada). Este valor tem de ter entre 1 e 63 carateres, começar e terminar com [a-z0-9] e pode conter travessões (-) entre carateres. Por exemplo, my-input.

Corpo JSON do pedido:

{
  "type": "RTMP_PUSH"
}

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Copie o OPERATION_ID devolvido para usar na secção seguinte.

Verifique o resultado

Use o método projects.locations.operations.get para verificar se o ponto final de entrada foi criado. Se a resposta contiver "done: false", repita o comando até que a resposta contenha "done: true". A criação do primeiro ponto final de entrada numa região pode demorar até 10 minutos.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização onde o seu ponto final de entrada está localizado; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • OPERATION_ID: o identificador da operação

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "endTime": END_TIME,
    "target": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.video.livestream.v1.Input",
    "name": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID",
    "createTime": CREATE_TIME,
    "updateTime": UPDATE_TIME,
    "type": "RTMP_PUSH",
    "uri":  INPUT_STREAM_URI, # For example, "rtmp://1.2.3.4/live/b8ebdd94-c8d9-4d88-a16e-b963c43a953b",
    "tier": "HD"
  }
}

Encontre o campo uri e copie o valor INPUT_STREAM_URI devolvido para usar mais tarde na secção Envie o fluxo de entrada.

Crie o canal

Para criar o canal, use o método projects.locations.channels.create.

Tenha em atenção o seguinte na configuração do canal:

  • Uma ElementaryStream, um TextStream, é usado para as legendas.

    {
      "key": "webvtt_english_ai",
      "textStream": {
        "codec": "webvtt",
        "displayName": "English (AI captioned)",
        "languageCode": "en-US",
        "mapping": [
          {
            "inputTrack": 1 // audio track number
          }
        ]
      }
    }
    
  • O campo TextStream codec tem de estar definido como webvtt.

  • O campo TextStream mapping usa inputTrack para designar a faixa de áudio de entrada a partir da qual gerar legendas. O mapeamento não pode incluir um campo inputCeaChannel, que só é usado para legendas fechadas fornecidas pelo utilizador.

  • Defina o languageCode para o idioma falado na faixa de áudio.

  • A stream elementar é usada para criar um MuxStream com a chave vtt_english_ai.

    {
      "key": "vtt_english_ai",
      "container": "vtt",
      "elementaryStreams": [
        "webvtt_english_ai"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    }
    

    Esta stream mux é, em seguida, referenciada nos manifestos HLS e DASH.

    {
      "fileName": "main.m3u8",
      "type": "HLS",
      "muxStreams": [
        "mux_video_ts",
        "vtt_english_ai"
      ],
      "maxSegmentCount": 5
    }
    

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização na qual criar o canal; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: um identificador definido pelo utilizador para o canal a criar; este valor tem de ter entre 1 e 63 carateres, começar e terminar com [a-z0-9] e pode conter traços (-) entre carateres
  • INPUT_ID: o identificador definido pelo utilizador para o ponto final de entrada
  • BUCKET_NAME: o nome do contentor do Cloud Storage que criou para conter o manifesto da stream em direto e os ficheiros de segmentos

Corpo JSON do pedido:

{
  "inputAttachments": [
    {
      "key": "my-input",
      "input": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID"
    }
  ],
  "output": {
    "uri": "gs://BUCKET_NAME"
  },
  "elementaryStreams": [
    {
      "key": "es_video",
      "videoStream": {
        "h264": {
          "profile": "high",
          "widthPixels": 1280,
          "heightPixels": 720,
          "bitrateBps": 3000000,
          "frameRate": 30
        }
      }
    },
    {
      "key": "es_audio",
      "audioStream": {
        "codec": "aac",
        "channelCount": 2,
        "bitrateBps": 160000
      }
    },
    {
      "key": "webvtt_english_ai",
      "textStream": {
        "codec": "webvtt",
        "displayName": "English (AI captioned)",
        "languageCode": "en-US",
        "mapping": [
          {
            "inputTrack": 1
          }
        ]
      }
    }
  ],
  "muxStreams": [
    {
      "key": "mux_video_fmp4",
      "container": "fmp4",
      "elementaryStreams": [
        "es_video"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    },
    {
      "key": "mux_audio_fmp4",
      "container": "fmp4",
      "elementaryStreams": [
        "es_audio"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    },
    {
      "key": "mux_video_ts",
      "container": "ts",
      "elementaryStreams": [
        "es_video",
        "es_audio"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    },
    {
      "key": "vtt_english_ai",
      "container": "vtt",
      "elementaryStreams": [
        "webvtt_english_ai"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    }
  ],
  "manifests": [
    {
      "key": "manifest_dash",
      "fileName": "main.mpd",
      "type": "DASH",
      "muxStreams": [
        "mux_video_fmp4",
        "mux_audio_fmp4",
        "vtt_english_ai"
      ],
      "maxSegmentCount": 5
    },
    {
      "key": "manifest_hls",
      "fileName": "main.m3u8",
      "type": "HLS",
      "muxStreams": [
        "mux_video_ts",
        "vtt_english_ai"
      ],
      "maxSegmentCount": 5
    }
  ]
}

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

Aceda ao canal

Pode verificar o resultado da operação através do novo ID da operação.

Depois de criar o canal, use o método projects.locations.channels.get para consultar o estado do canal.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização onde o seu canal está localizado; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: um identificador definido pelo utilizador para o canal

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

A resposta completa contém o seguinte campo:

{
  ...
  "streamingState": "STOPPED"
  ...
}

Esta resposta indica que já pode iniciar o canal.

Inicie o canal

Use o método projects.locations.channels.start para iniciar o canal. Um canal tem de ser iniciado antes de poder aceitar streams de entrada ou gerar uma stream de saída.

O início do primeiro canal numa região demora cerca de 10 minutos.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização onde o seu canal está localizado; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: um identificador definido pelo utilizador para o canal

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

Para determinar se o canal foi iniciado, aceda às informações do canal como fez anteriormente. A resposta deve conter o seguinte:

{
  ...
  "streamingState": "AWAITING_INPUT"
  ...
}

Envie a stream de entrada

Agora que o canal está pronto, envie uma stream de entrada para o ponto final de entrada para gerar a stream em direto. Pode transferir um ficheiro MP4 (ou outro TEST_VOD_FILE) com legendas e usar ffmpeg para o enviar para o ponto final de entrada.

Abra uma nova janela de terminal. Execute o seguinte comando, usando o INPUT_STREAM_URI da secção Verifique o resultado:

ffmpeg -re -stream_loop -1 -i "TEST_VOD_FILE" \
  -c:v copy -c:a aac -strict 2 -f "flv" "INPUT_STREAM_URI"

Valide as legendas no manifesto de saída

Execute o seguinte comando para ver o conteúdo do manifesto HLS gerado:

gcloud storage cat gs://BUCKET_NAME/main.m3u8

As legendas em inglês geradas pela IA aparecem no manifesto de saída de forma semelhante ao seguinte:

#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="sub",LANGUAGE="en-US",NAME="English (AI captioned)",AUTOSELECT=YES,DEFAULT=YES,FORCED=NO,URI="vtt_english_ai/index-1.m3u8"

Pare o canal

Tem de parar um canal antes de atualizar a configuração do canal.

Use o método projects.locations.channels.stop para parar o canal.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização onde o seu canal está localizado; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: um identificador definido pelo utilizador para o canal

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

Atualize a configuração do canal para uma tradução

Atualize a configuração do canal para incluir legendas traduzidas (ou seja, uma tradução).

Tenha em atenção as seguintes adições à configuração do canal:

  • Um ElementaryStream, um TextStream, é usado para as legendas de um único idioma traduzido.

    {
      "key": "webvtt_spanish_ai",
      "textStream": {
        "codec": "webvtt",
        "displayName": "Spanish (AI captioned)",
        "languageCode": "es-MX",
        "mapping": [
          {
            "inputTrack": 1, // audio track number
            "fromLanguageCode": "en-US" // original audio in English
          }
        ]
      }
    }
    
  • Defina languageCode para o idioma traduzido escolhido.

  • Defina fromLanguageCode para o idioma de origem original na faixa de áudio.

  • A stream elementar é usada para criar um MuxStream com a chave vtt_spanish_ai.

    {
      "key": "vtt_spanish_ai",
      "container": "vtt",
      "elementaryStreams": [
        "webvtt_spanish_ai"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    }
    

    Esta stream mux é, em seguida, referenciada nos manifestos HLS e DASH.

    {
      "fileName": "main.m3u8",
      "type": "HLS",
      "muxStreams": [
        "mux_video_ts",
        "vtt_english_ai",
        "vtt_spanish_ai"
      ],
      "maxSegmentCount": 5
    }
    

Para atualizar o canal, use o método projects.locations.channels.patch.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização na qual criar o canal; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: um identificador definido pelo utilizador para o canal a criar; este valor tem de ter entre 1 e 63 carateres, começar e terminar com [a-z0-9] e pode conter traços (-) entre carateres

Corpo JSON do pedido:

{
  "inputAttachments": [
    {
      "key": "my-input",
      "input": "projects/PROJECT_NUMBER/locations/LOCATION/inputs/INPUT_ID"
    }
  ],
  "output": {
    "uri": "gs://BUCKET_NAME"
  },
  "elementaryStreams": [
    {
      "key": "es_video",
      "videoStream": {
        "h264": {
          "profile": "high",
          "widthPixels": 1280,
          "heightPixels": 720,
          "bitrateBps": 3000000,
          "frameRate": 30
        }
      }
    },
    {
      "key": "es_audio",
      "audioStream": {
        "codec": "aac",
        "channelCount": 2,
        "bitrateBps": 160000
      }
    },
    {
      "key": "webvtt_english_ai",
      "textStream": {
        "codec": "webvtt",
        "displayName": "English (AI captioned)",
        "languageCode": "en-US",
        "mapping": [
          {
            "inputTrack": 1
          }
        ]
      }
    },
    {
      "key": "webvtt_spanish_ai",
      "textStream": {
        "codec": "webvtt",
        "displayName": "Spanish (AI captioned)",
        "languageCode": "es-MX",
        "mapping": [
          {
            "inputTrack": 1,
            "fromLanguageCode": "en-US"
          }
        ]
      }
    }
  ],
  "muxStreams": [
    {
      "key": "mux_video_fmp4",
      "container": "fmp4",
      "elementaryStreams": [
        "es_video"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    },
    {
      "key": "mux_audio_fmp4",
      "container": "fmp4",
      "elementaryStreams": [
        "es_audio"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    },
    {
      "key": "mux_video_ts",
      "container": "ts",
      "elementaryStreams": [
        "es_video",
        "es_audio"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    },
    {
      "key": "vtt_english_ai",
      "container": "vtt",
      "elementaryStreams": [
        "webvtt_english_ai"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    },
    {
      "key": "vtt_spanish_ai",
      "container": "vtt",
      "elementaryStreams": [
        "webvtt_spanish_ai"
      ],
      "segmentSettings": {
        "segmentDuration": "2s"
      }
    }
  ],
  "manifests": [
    {
      "key": "manifest_dash",
      "fileName": "main.mpd",
      "type": "DASH",
      "muxStreams": [
        "mux_video_fmp4",
        "mux_audio_fmp4",
        "vtt_english_ai",
        "vtt_spanish_ai"
      ],
      "maxSegmentCount": 5
    },
    {
      "key": "manifest_hls",
      "fileName": "main.m3u8",
      "type": "HLS",
      "muxStreams": [
        "mux_video_ts",
        "vtt_english_ai",
        "vtt_spanish_ai"
      ],
      "maxSegmentCount": 5
    }
  ]
}

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

Pode verificar o resultado da operação através do novo ID da operação.

Reinicie o canal e reenvie a stream de entrada

Tal como fez anteriormente, inicie o canal e envie novamente o fluxo de entrada.

Valide a tradução no manifesto de saída

Execute o seguinte comando para ver o conteúdo do manifesto HLS gerado:

gcloud storage cat gs://BUCKET_NAME/main.m3u8

As legendas em inglês e espanhol geradas pela IA são apresentadas no manifesto de saída de forma semelhante à seguinte:

#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="sub",LANGUAGE="en-US",NAME="English (AI captioned)",AUTOSELECT=YES,DEFAULT=YES,FORCED=NO,URI="vtt_english_ai/index-1.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="sub",LANGUAGE="es-MX",NAME="Spanish (AI captioned)",AUTOSELECT=NO,DEFAULT=NO,FORCED=NO,URI="vtt_spanish_ai/index-1.m3u8"

Configure transcrições geradas pela IA para distribuição

Antes de configurar as legendas e as traduções geradas pela IA para distribuição, familiarize-se com a forma de distribuir streams em direto para pontos finais remotos.

Para distribuir legendas e traduções geradas pela IA para pontos finais remotos, não faça referência às streams de texto no formato webvtt que foram configuradas anteriormente quando criou um canal com legendas geradas pela IA e atualizou o canal para tradução. As streams de texto para distribuição têm de ser legendas incorporadas, com o elemento codec definido como cea608 ou cea708.

Na configuração do canal, considere o seguinte:

  • Um ElementaryStream, um TextStream, é usado para as legendas e outro ElementaryStream, um TextStream, é usado para a tradução.

    {
      "key": "embedded_english_ai",
      "textStream": {
        "codec": "cea608",
        "displayName": "English (AI captioned)",
        "languageCode": "en-US",
        "outputCeaChannel": "CC1", // closed caption channel that will contain AI-generated English captions
        "mapping": [
          {
            "inputTrack": 1 // audio track number
          }
        ]
      }
    }
    
    {
      "key": "embedded_spanish_ai",
      "textStream": {
        "codec": "cea608",
        "displayName": "Spanish (AI captioned)",
        "languageCode": "es-MX",
        "outputCeaChannel": "CC2", // closed caption channel that will contain AI-generated Spanish captions
        "mapping": [
          {
            "inputTrack": 1, // audio track number
            "fromLanguageCode": "en-US" // original audio in English
          }
        ]
      }
    }
    
  • O campo TextStream codec tem de estar definido como cea608 ou cea708.

  • O campo TextStream mapping usa inputTrack para designar a faixa de áudio de entrada a partir da qual gerar legendas. O mapeamento não pode incluir um campo inputCeaChannel, que só é usado para legendas fechadas fornecidas pelo utilizador.

  • Defina o elemento outputCeaChannel para o canal de legendas de modo a conter transcrições geradas pela IA na stream de distribuição.

  • Defina o languageCode para o idioma falado na faixa de áudio.

  • Os streams elementares estão incluídos no campo elementaryStreams do objeto DistributionStream.

    {
      "distributionStreams": [
        {
          "key": "ds1",
          "container": "ts", // to be used with an SRT distribution
          "elementaryStreams": [
            "es_video",
            "es_audio",
            "embedded_english_ai", // distribute both English
            "embedded_spanish_ai"  // and Spanish captions
          ]
        },
        {
          "key": "ds2",
          "container": "flv", // to be used with an RTMP distribution
          "elementaryStreams": [
            "es_video",
            "es_audio",
            "embedded_spanish_ai" // only distribute Spanish captions
          ]
        }
      ]
    }
    

Conclua a criação do canal seguindo o guia de distribuição de streams em direto para um ponto final remoto.

Configurações avançadas

Defina AutoTranscriptionConfig ao nível do canal para ajustar ainda mais as streams de texto geradas pela IA às suas necessidades.

Indicações de tempo de apresentação das legendas

Por predefinição, as legendas geradas pela IA são apresentadas de forma assíncrona com o áudio e o vídeo. Defina o campo DisplayTiming em AutoTranscriptionConfig como SYNC para os apresentar de forma síncrona.

{
  "autoTranscriptionConfig": {
    "displayTiming": "SYNC"
  }
}

A apresentação de legendas de forma síncrona diminui a latência de visualização entre o áudio e o texto, mas aumenta a latência geral de multimédia de ponta a ponta.

Predefinições de qualidade

Use o campo QualityPreset em AutoTranscriptionConfig para configurar as preferências de qualidade para streams de texto geradas pela IA.

Por exemplo, pode reduzir ainda mais a latência da geração de streams de texto ao definir:

{
  "autoTranscriptionConfig" : {
    "qualityPreset": "LOW_LATENCY"
  }
}

Limpar

Pare o canal

Use o método projects.locations.channels.stop para parar o canal. Tem de parar o canal antes de o poder eliminar.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização onde o seu canal está localizado; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: um identificador definido pelo utilizador para o canal

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

Pare a stream de entrada

Se usou ffmpeg para enviar a stream de entrada, a ligação é automaticamente interrompida depois de parar o canal.

Eliminar o canal

Use o método projects.locations.channels.delete para eliminar o canal. Tem de eliminar o canal antes de poder eliminar o ponto final de entrada usado pelo canal.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização onde o seu canal está localizado; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: um identificador definido pelo utilizador para o canal

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

Elimine o ponto final de entrada

Use o método projects.locations.inputs.delete para eliminar o ponto final de entrada.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_NUMBER: o número do seu Google Cloud projeto. Este encontra-se no campo Número do projeto na página Definições do IAM
  • LOCATION: a localização onde o seu ponto final de entrada está localizado; use uma das regiões suportadas
    Mostrar localizações
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-south1
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-north1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • INPUT_ID: o identificador definido pelo utilizador para o ponto final de entrada

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

Elimine o contentor do Cloud Storage

  1. Na Google Cloud consola, aceda à página do navegador do Cloud Storage.

    Aceda à página do navegador do armazenamento na nuvem

  2. Selecione a caixa de verificação junto ao grupo criado.

  3. Clique em Eliminar.

  4. Na janela de diálogo apresentada, clique em Eliminar para eliminar o contentor e o respetivo conteúdo.