Às vezes, em produções ao vivo, é preciso enviar o áudio com um atraso em relação ao vídeo, para compensar o atraso de processamento das telas LCD gigantes (sincronização labial). Ou adicionar um limitador/gate ao áudio da entrada do microfone.
Na verdade, isso é bem rápido de implementar no PLAYDECK. Basta adicionar o filtro de áudio ADELAY ao canal desta forma. Neste exemplo, definimos um atraso de 600 ms para os canais de áudio 1 e 2:
Isso também pode ser configurado como INPUTS para compensar qualquer problema de sincronização labial na entrada.
Copiar áudio e atraso
Você também pode COPIAR os canais de áudio 1 e 2 para os canais de áudio 3 e 4 e aplicar um atraso a eles. O objetivo aqui é que o operador do mixer de áudio tenha uma pré-visualização do áudio em tempo real.
Isso precisa ser feito no nível da lista de reprodução; portanto, desative qualquer filtro de áudio nas configurações.
Primeiro, certifique-se de aumentar o número de canais de áudio do seu canal de saída; caso contrário, todos os canais de áudio acima do número 2 não serão processados:
Clique com o botão direito do mouse em qualquer item da lista de reprodução e selecione MAPEAMENTO DE CANAIS DE ÁUDIO:
Isso copiará os canais de áudio 1 e 2 para os canais de áudio 3 e 4:
Agora, clique com o botão direito do mouse no item da lista de reprodução novamente, selecione FILTRO DE ÁUDIO e adicione o filtro ADELAY, mas apenas para os canais de áudio 3 e 4:
Mais filtros de áudio
Para obter uma lista completa de todos os filtros de áudio, clique em MOSTRAR EXEMPLOS. Isso abrirá um ARQUIVO DE TEXTO com exemplos.
Este artigo irá mostrar como configurar o registro de logs do Video Engine.
1. Configuração do registro
Inicie o PLAYDECK, abra Configurações, e selecione o INSCRIÇÃO guia. Na parte inferior da página, você encontrará as opções de configuração.
Pasta de saída: Escolha o diretório de destino. Também pode ser uma pasta de rede compartilhada.
Aviso sobre armazenamento: Os arquivos de log podem facilmente ocupar até 1 GB por minuto (com nível de detalhamento 0 e todos os módulos ativados). Certifique-se de ter espaço livre em disco suficiente, levando em conta o tempo que pode levar para que o problema ocorra.
Nível de detalhamento: Comece sempre o registro com 0 – traço. Isso garante que os desenvolvedores do Video Engine recebam todas as informações necessárias.
Módulos: Selecionar todos para começar. Se os arquivos de log ficarem muito grandes, você pode reduzir seu tamanho concentrando-se em módulos específicos:
A primeira coisa a configurar é o seu Pasta de saída para os arquivos de log. Pode ser uma pasta compartilhada na sua rede. Os logs podem facilmente ocupar até 1 GB por minuto (com nível de detalhamento 0 e todos os módulos ativados). Reserve espaço livre em disco suficiente, dependendo do tempo estimado até a ocorrência do bug.
A próxima configuração é Verbosidade: Por favor, sempre inicie o registro com 0 – traço, para que os desenvolvedores do Video Engine tenham TODAS as informações.
Com o Módulos opção que escolhemos todos para começar. Se os arquivos de log ficarem muito grandes, podemos reduzir o tamanho concentrando-nos em módulos específicos:
todos: Registra tudo.
lista de reprodução, arquivo, codecs: Abrange erros de reprodução, decodificação de arquivos e carregamento/reprodução de clipes.
escritor: Abrange transmissões, gravações e codificação.
rede: Aborda os protocolos de streaming.
renderizador: Abrange a saída do dispositivo e o NDI.
ao vivo: Abrange entradas ao vivo.
dispositivo: Tudo o que diz respeito a dispositivos de hardware.
magia negra: Tudo o que diz respeito ao hardware da Blackmagic Design.
Opção de divisão: Isso depende de quantos canais você estiver executando, já que cada canal opera em seu próprio processo. Se você usar mais de dois canais, recomendamos vivamente que ative a opção "Dividir".
2. Iniciar/Interromper o registro
Para identificar um bug na hora, você precisará ativar o registro de logs, reproduzir o problema, desativar o registro de logs e, em seguida, enviar os arquivos para a equipe de desenvolvimento.
Prazo: Você pode INÍCIO e PARE gravar a qualquer momento. Isso permite que você prepare sua lista de reprodução ou seus dispositivos com antecedência. Reduza ao mínimo o tempo entre o início e o fim da gravação para manter o tamanho total do arquivo dentro de um limite razoável.
Pasta da sessão: Depois de clicar INÍCIO, uma nova subpasta com o nome da data e hora atuais (por exemplo, 2026-05-16__01-20-00) será criado no caminho de registro de log que você definir.
Parada: Quando o erro ocorrer, clique em PARE. Espere pelo menos 10 segundos para garantir que todos os processos de log ativos concluam a gravação no disco.
Compressão: Abra o diretório de registros e localize a pasta de sessões. Clique com o botão direito do mouse na pasta e selecione Compactar em…, e selecione 7z (preferencialmente) ou CEP. A compactação pode demorar algum tempo, dependendo do tamanho do arquivo.
Agora precisamos compactar o conteúdo da pasta da sessão. Identificar a pasta da sua sessão por data de INÍCIO. Em seguida, clique com o botão direito do mouse na pasta da sua sessão e selecione Compactar para e escolher Arquivo 7z (se disponível) ou Arquivo ZIP. Agora, recoste-se; a compressão pode demorar um pouco.
3. Envio de registros
Envie seus arquivos de log compactados através do nosso portal oficial de downloads:
Arraste e solte seu arquivo ZIP/7z na janela do navegador ou use o gerenciador de arquivos.
Clique ENVIAR.
Quando terminar, clique em COPIAR para copiar o link de download gerado para a área de transferência.
Envie um e-mail para [email protected] e cole o link de download na mensagem.
Observação: sem esse link de download específico, nossa equipe não poderá acessar seus arquivos devido às políticas de proteção de dados.
4. Limpeza
Certifique-se de excluir os arquivos de log originais e as pastas de sessão depois compressão e envio bem-sucedidos para liberar espaço em disco. O PLAYDECK não exclui nem limpa automaticamente os arquivos de log antigos.
Os marcadores SCTE são usados principalmente para inserir anúncios na saída de vídeo, indicando ao receptor (por exemplo, um servidor de streaming) em que momento inserir os anúncios e com qual duração. Isso permite que sistemas de terceiros selecionem dinamicamente anúncios a partir de um banco de dados. Você pode ler mais sobre o SCTE-35 em geral neste site.
Você pode associar o SCTE Marker a 4 objetos diferentes no PLAYDECK: – Clipes (em qualquer posição) – Blocos (Início e Fim) – Sobreposições (Mostrar e Ocultar) – Botões de ação
Em vez de fornecer um marcador SCTE predefinido, optamos por uma abordagem diferente: você mesmo deve criar seu próprio marcador SCTE. Isso pode exigir um certo tempo de adaptação, mas, no final das contas, é muito mais flexível. A vantagem é que você sempre terá compatibilidade com todos os receptores. Para coletar a duração do clipe e outras “variáveis”, fornecemos certos “placeholders”.
Observe que o SCTE precisa estar ativado nas opções do Stream:
Exemplos de marcadores SCTE-35
Vamos dar uma olhada em alguns exemplos de SCTE-35. Trata-se da forma mais utilizada do SCTE-35, conhecida como “emenda”.
Nota: O formato SCTE-35 apresentado aqui funciona melhor com o Nimble Streamer (veja abaixo). Dependendo do seu servidor de streaming, o formato pode ser diferente. Consulte o seu provedor.
Isso inserirá um anúncio e retornará automaticamente ao seu programa após o tempo definido. A duração será definida automaticamente pelo PLAYDECK para o clipe que estiver sendo reproduzido no momento. Esse valor pode ser substituído por {blockduration} ou por um valor inserido manualmente. Se você escolher um valor manual para a duração, a fórmula é: DURAÇÃO DO CLIPE multiplicada por 90000 e arredondada. A razão por trás disso é que 90000 é a escala de tempo padrão usada pela maioria dos sistemas SCTE. Exemplo: o clipe tem 12,4 segundos, portanto, a duração SCTE seria 1116000.
Em vez de enviar uma duração, você também pode enviar dois marcadores SCTE separados para iniciar e encerrar o anúncio. Eles são chamados de CUE-OUT (saída do programa para o anúncio) e CUE-IN (retorno ao programa).
Como você provavelmente já deve ter observado, a única diferença é que o “outOfNetworkIndicator” assume os valores 1 (CUE-OUT) e 0 (CUE-IN). O próprio sistema SCTE emparelha os dois marcadores com base no “spliceEventId”.
Abra o PLAYDECK. Não é necessário carregar nenhum clipe por enquanto. Clique com o botão direito do mouse em qualquer botão de ação, crie uma nova ação e selecione COMANDOS/SCTE:
Insira a etiqueta de amostra SCTE-35 clicando em SCTE-35. Feche as janelas pop-up clicando em OK (duas vezes):
Agora podemos enviar uma tag SCTE-35 para qualquer fluxo compatível (UDP, DVB, SRT). Se você clicar na opção “Ação” agora, nada acontecerá, pois ainda não temos um fluxo.
Vamos criar um fluxo UDP de teste, no qual simplesmente enviaremos a saída para um arquivo, para não precisarmos nos preocupar com questões relacionadas ao servidor (por enquanto). Copie as configurações conforme indicado a seguir e inicie o fluxo clicando em INICIAR AGORA. Não se esqueça de habilitar o SCTE-35 na opção “Parâmetro”:
Queremos enviar agora nossa tag SCTE-35 de amostra para a transmissão. Então, feche as Configurações e clique no botão de ação várias vezes; depois, volte às Configurações e interrompa a transmissão com a opção “INTERROMPER AGORA”.
Suas tags do SCTE-35 foram registradas pelo PLAYDECK. Você pode verificar os registros voltando ao seu código do SCTE-35 no botão “Ação” e clicando em “ABRIR REGISTROS DE EVENTOS”:
Você também pode tornar visíveis as tags SCTE-35, que estão na sua transmissão gravada. Para isso, precisamos de uma ferramenta separada chamada “DVBInspector”. Essa ferramenta também requer o JAVA Runtime, portanto, baixe ambos:
Agora, descompacte o arquivo “DVBinspector-1.18.0-dist.zip” (ou similar) e execute o “DVBinspector-1.18.0.jar”. Em seguida, arraste e solte seu arquivo TS no aplicativo. Abra a árvore da seguinte maneira para visualizar seu marcador SCTE.
Teste do marcador SCTE-35 no Nimble Streamer
O Nimble Streamer é o nosso serviço de streaming preferido. É econômico, fácil de configurar e manter, mas ainda assim oferece a complexidade necessária para casos de uso avançados:
Instale a versão de avaliação de 14 dias do Nimble no mesmo computador em que o PLAYDECK está sendo executado. Isso não é obrigatório, mas simplifica o processo, já que você não precisa se preocupar com a configuração de rede. O Nimble também solicitará que você crie uma conta no WMSPanel, que é uma ferramenta de configuração baseada na web para o Nimble, já que o Nimble Streamer em si é instalado sem interface de usuário.
INFORMAÇÃO: Para que esta amostra do SCTE-35 funcione, você NÃO precisa ter os plug-ins “Nimble Live Transcoder” ou “Nimble Advertizer” se estiver testando em uma instalação ativa. Eles vêm desativados por padrão na instalação de avaliação.
Depois de colocar o Nimble em funcionamento, há mais uma configuração que você precisa fazer manualmente. Abra o arquivo de configuração do servidor Nimble aqui: c:\Arquivos de Programas\Nimble Streamer\conf\nimble.conf
No final deste arquivo, adicione as seguintes linhas e salve o arquivo.
Importante: Você precisa reiniciar o Nimble agora, seja reiniciando o computador ou reiniciando manualmente o serviço do Windows “Nimble Streamer”.
Aqui estão as linhas novamente, mas com comentários para você (não use essas):
scte35_processing_enabled = true // Ativa o módulo SCTE de forma geral. Necessário para todas as outras opções
scte35_forwarding_enabled = true // Permite a passagem dos marcadores SCTE-35 pelo Live Transcoder
hls_ad_scte35_forwarding_enabled = true // Ativa o encaminhamento de marcadores SCTE-35 para fluxos HLS
hls_ad_marker_format = cue // Configura o Nimble para usar marcadores CUE-OUT e CUE-IN
hls_ad_splice_out_cont_marker_enabled = true // Habilita a inserção automática de EXT-X-CUE-OUT-CONT
Agora vamos configurar seus Streams no WMSPanel: Primeiro, vamos definir nosso fluxo de entrada. Vá até “Nimble Streamer” no menu, selecione “MPEGTS In” e clique no botão “Adicionar fluxo UDP”; em seguida, adicione o fluxo de entrada desta forma. Você pode usar qualquer outra porta, caso a 5001 já esteja em uso.
A seguir, vamos configurar o formato do fluxo de saída. Queremos usar o HLS aqui para demonstrar a conversão do marcador SCTE de UDP para HLS. Na mesma página, vá até “MPEGTS Out” e clique no botão “Adicionar fluxo de saída”, depois adicione da seguinte forma. Certifique-se de selecionar o fluxo de entrada como fonte de vídeo e áudio.
A seguir, continuamos nossa configuração no PLAYDECK. Acesse as configurações de saída de transmissão e altere a URL da transmissão para “udp://127.0.0.1:5001”.
INFORMAÇÃO: Você pode escolher qualquer codec de vídeo de sua preferência. Neste caso, escolhi o H.264 para que minha GPU NVIDIA faça a codificação, o que reduzirá o uso da CPU. Ative também o SCTE-35 na opção “Parâmetro”.
INFORMAÇÃO: Observe que o PLAYDECK não é capaz de transmitir HLS diretamente. Se você selecionar “Apple HTTP Live Streaming” como formato de transmissão, a saída será gravada em um arquivo. Portanto, você precisa especificar um destino de arquivo como “URL de transmissão”, por exemplo, “c:\Users\Public\Documents\stream.m3u8”. Em seguida, use esse arquivo para transmitir usando qualquer servidor de streaming. O PLAYDECK não é capaz de gravar tags HLS SCTE no arquivo de manifesto HLS (o arquivo *.3u8).
Em seguida, queremos que o PLAYDECK envie SCTE automaticamente, não apenas por meio de um botão, mas em função do clipe. Para isso, inserimos qualquer clipe e clicamos no ícone COMANDOS na barra de ferramentas; depois, adicionamos um novo comando, selecionamos PLAY TIME 0 e inserimos o exemplo SCTE-35:
INFORMAÇÃO: Você também pode adicionar marcadores SCTE a blocos, sobreposições e botões de ação.
Agora vamos começar: coloque o clipe em CUE e PLAY e inicie a transmissão nas configurações do PLAYDECK. Vá até o WMSPanel e abra, no menu “Nimble Streamer”, a opção “Live Streams”. Você verá agora 1 transmissão ao vivo em andamento. Clique nela e selecione o ponto de interrogação na extremidade direita, assim.
Depois de inserir essa URL no Chrome, você verá a transmissão do PLAYDECK sendo reproduzida imediatamente. Agora vou mostrar como monitorar seu marcador SCTE. No Chrome, pressione F12 para abrir as Ferramentas do Desenvolvedor. Na parte superior, clique na guia “Rede”. Você verá vários arquivos “chunks.m3u8”, que fazem parte do seu stream. Clique em um dos arquivos Chunk (também chamados de Manifesto HLS) e selecione “Visualizar” ao lado dele. Agora você verá a tag SCTE HLS. Se ela não estiver lá, clique em outro chunk, pois enviamos o SCTE apenas no início do clipe.
É isso aí! Alcançamos nossos objetivos de teste. A seguir, mais informações que podem ser relevantes para se aprofundar no assunto.
Informações adicionais
Fazer login no PLAYDECK
Registramos todas as tags SCTE recebidas e enviadas. Isso também lhe dá a oportunidade de testar suas tags SCTE enviadas simplesmente conectando sua saída a uma entrada (tanto SDI quanto fluxos de dados) e deixando que o PLAYDECK detecte suas tags SCTE. Você pode abrir os arquivos de log pelo menu principal “Logs”:
Registro no Nimble Streamer
Se algo der errado ou não ocorrer como esperado, um bom ponto de partida é verificar os arquivos de log do Nimble. No Windows, o log pode ser encontrado aqui: c:\Arquivos de Programas\Nimble Streamer\log
O registro em log está habilitado por padrão na versão de avaliação do Nimble, mas caso você precise ativá-lo, aqui estão as opções para o arquivo “nimble.conf”.
log_access = arquivo
logging = depuração
Agora abra o arquivo de log e procure por “SCTE”. Você poderá ver algo como isto, o que indica que há um erro de digitação no seu marcador SCTE no PLAYDECK:
[SCTE35] Tipo de comando de emenda não suportado = 6 para [mynewapp/mynewstream]
Se o seu SCTE Marker for analisado com sucesso no Nimble, ele terá a seguinte aparência:
Esta é uma coleção de ferramentas e plug-ins com uma ampla biblioteca para manipular fluxos de transporte MPEG. Com ela, você poderá inserir marcadores SCTE fora do PLAYDECK com base em um algoritmo ou outra lógica complexa.
Esta ferramenta também pode converter marcadores SCTE-35 em fluxos UDP ou arquivos MPEG-TS em tags HLS SCTE. Isso permite que você configure um servidor de streaming que não possua conversão automática de SCTE-35 para HLS.