Nesta página, explicamos como configurar e executar uma amostra usando a implementação do cliente de referência em C++. Para conhecer o cliente TypeScript, consulte o início rápido do cliente de referência TypeScript.
Pré-requisitos
Para executar este guia de início rápido, você precisa dos seguintes pré-requisitos:
- Você clonou o repositório do GitHub.
- Um projeto do Google Cloud com a API REST do Google Meet ativada.
- Uma conta do Google Workspace.
Ativar a API REST do Meet
Antes de usar as APIs do Google, é necessário ativá-las em um projeto do Google Cloud. É possível ativar uma ou mais APIs em um único projeto do Google Cloud.Console do Google Cloud
No console do Google Cloud, ative a API REST do Meet.
Confirme se você está ativando a API REST do Meet no projeto do Cloud correto e clique em Próxima.
Confirme que você está ativando a API REST do Meet e clique em Ativar.
CLI da gcloud
Se necessário, defina o projeto atual do Cloud como aquele que você criou:
gcloud config set project PROJECT_IDSubstitua PROJECT_ID pelo ID do projeto do projeto do Cloud que você criou.
Ative a API REST do Meet:
gcloud services enable meet.googleapis.com
Criar o cliente C++
A implementação em C++ é criada com o Generate Ninja (GN). Para mais informações, consulte a documentação do WebRTC.
Gere uma senha em Git no Google e configure o git.
Na interface de linha de comando (CLI), mude
<samples_location>para o diretório que contém as amostras e execute o seguinte comando, que:- Muda o diretório de trabalho para o diretório inicial.
- Cria um diretório no seu diretório inicial chamado
src. - Muda o diretório de trabalho para
src. - Clona https://chromium.googlesource.com/chromium/tools/depot_tools.git no diretório src/ do git.
- Adiciona temporariamente o diretório
~/src/depot_toolsà lista de locais em que o shell procura comandos executáveis. - Muda o diretório de trabalho para o diretório cpp no local das amostras.
- Executa o script shell
./build.sh.
cd ~ mkdir src cd src git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git export PATH=~/src/depot_tools:$PATH cd <samples_location>/cpp sh ./build.sh
Gerar tokens OAuth
Para se conectar à API Meet Media, seu app precisa usar o OAuth para gerar tokens de acesso. Para saber mais sobre como acessar as APIs do Google com o OAuth, consulte Como usar o OAuth 2.0 para acessar as APIs do Google.
Você pode usar o OAuth 2.0 Playground para gerar tokens. Ao usar o playground, faça o seguinte:
- Use o ID do cliente e as credenciais secretas do seu projeto na nuvem.
- Solicite os escopos corretos.
- Faça login em uma Conta do Google e aceite o acesso.
Depois disso, clique no botão Exchange authorization code for tokens e copie o token de acesso gerado.
Iniciar uma reunião
Inicie uma reunião usando a mesma conta de usuário que você usou para gerar o token OAuth. Copie o código da reunião. Agora você já pode executar os exemplos.
Apps de exemplo
O repositório do GitHub oferece exemplos para receber mídia e metadados de participantes de uma reunião.
Essas amostras coletam dados por um período especificado (o padrão é 3 segundos) e gravam os dados coletados em arquivos.
Os arquivos de áudio estão no formato PCM16. Os arquivos de vídeo estão no formato YUV420p. Esses arquivos podem ser reproduzidos usando uma biblioteca como o FFmpeg.
Como as resoluções de vídeo podem mudar durante uma reunião, as amostras incluem a resolução nos nomes dos arquivos de vídeo.
Os arquivos de metadados do participante serão arquivos de texto legíveis.
Exemplo de mídia de usuário único
O exemplo de mídia de usuário único é um app básico que se concentra na coleta de áudio e vídeo. A amostra não determina qual participante criou os dados de áudio e vídeo. Portanto, usar essa amostra em uma reunião com mais de um participante pode resultar em uma saída corrompida.
Para executar a amostra de mídia de usuário único, execute:
Linux
$ sh ./run_multi.sh -- \
--meeting_space_id MEETING_SPACE_ID \
--oauth_token OAUTH_TOKEN
Por padrão, um único arquivo de áudio é salvo em /tmp/test_output_audio.pcm.
Como os fluxos de vídeo podem mudar de resolução durante uma reunião, vários arquivos de vídeo podem ser criados. Os nomes dos arquivos de vídeo incluem um contador crescente e a resolução do arquivo. Por exemplo, se a resolução do stream de vídeo mudar de 320 x 180 para 240 x 135 e depois voltar para 320 x 180, os seguintes arquivos de vídeo serão criados:
/tmp/test_output_video_0_320x180.pcm/tmp/test_output_video_1_240x135.pcm/tmp/test_output_video_2_320x180.pcm
(Opcional) Use o FFmpeg para reproduzir arquivos de saída no Linux e no Mac
O FFmpeg pode ser usado para reproduzir arquivos de áudio e vídeo criados. Exemplos de comandos:
Linux e Mac
# Audio
$ ffplay -f s16le -ar 48k -af aformat=channel_layouts=mono \
/tmp/test_output_audio.pcm
# Video
#
# `video_size` must match the resolution in the video filename (320x180 in
# this example).
$ ffplay -f rawvideo -pixel_format yuv420p -video_size 320x180 \
/tmp/test_output_video_0_320x180.yuv
Opções
É possível especificar estas opções ao executar as amostras:
| Opção | Descrição |
|---|---|
--output_file_prefix PREFIX |
Especifique o prefixo dos arquivos de saída. O valor padrão é /tmp_test_output_. |
--collection_duration DURATION |
Especifique por quanto tempo coletar mídia. O valor padrão é 30s. |
--join_timeout TIMEOUT |
Especifique quanto tempo esperar para que o app participe da conferência. O valor padrão é 2m. |
--meet_api_url URL |
Especifique o URL da API Meet Media. O valor padrão é https://meet.googleapis.com/v2alpha/. |