Script de automação no volume da trilha (Audio Ducking / SideChain Compressor) no VMIX

Поділитися
Вставка
  • Опубліковано 8 вер 2024
  • #vmix
    Sabe aquele recurso que abaixa o volume da musica automaticamente quando você fala ao microfone? Esse efeito é conhecido por vários nomes como SideChain ou Audio Ducking, e é possível fazer esse efeito no VMix sem nenhum plugin, usaremos scripting!
    Tutorial em português - BR, gravado por Cristiano Tuli, técnico áudio visual, membro da Comunidade Católica Shalom.
    vMix é um software de produção de vídeo ao vivo que permite produzir, gravar e transmitir a partir de 1 PC! Você pode criar conteúdo incrível ao vivo e gravado em SD, HD e até 4K! O vMix é a maneira mais profissional de transmitir seu conteúdo ao vivo, seja no UA-cam Live, Twitch, Facebook Live ou qualquer outro plataforma de transmissão.
    Nosso canal no Telegram:
    Streaming Shalom Tutoriais
    t.me/streaming...
    Download gratuito do Vmix
    www.vmix.com/s...
    Download OBS Studio
    obsproject.com...
    Padrões para Live no UA-cam
    support.google...
    Padrões para Live no Facebook
    www.facebook.c...
    Fazendo uma LIVE do inicio ao fim no OBS:
    • Fazendo uma LIVE do in...
    Volume automático no OBS • Volume Automático no O...

КОМЕНТАРІ • 14

  • @CristianoTuli
    @CristianoTuli  Рік тому +3

    '----SIDE CHAIN----
    dim translateInput as string = "Rus Translate" 'NOME DA ENTRADA COM LOCUÇÃO
    dim origInput as string = "Orig Program L" 'NOME DA ENTRADA COM TRILHA DE ÁUDIO
    dim volumeStandart as string = "100" 'VOLUME ORIGINAL DA ENTRADA QUANDO O LOCUTOR ESTÁ EM SILÊNCIO
    dim fadeTimeStandart as string = "1200" 'TEMPO PARA AUMENTAR AO VOLUME ORIGINAL DA ENTRADA QUANDO O LOCUTOR FIZER SILÊNCIO
    dim volumeSpeaking as string = "60" 'VOLUME DA ENTRADA QUANDO O LOCUTOR FALA
    dim fadeTimeSpeaking as string = "200" 'DURAÇÃO DO FADE DE ÁUDIO QUANDO O LOCUTOR FALA
    dim voicethreshold as string = "0.05" 'Limiar para responder a um sinal do LOCUTOR, de 0 a 1 (escala logarítmica)
    ' Corresponde aos valores (não ao comprimento) no controle deslizante de volume: 0,5=50%~=-6dB, 0,1=10%~=-20dB...
    ' A resposta pode não funcionar com um único pulso de sinal, mas funciona bem com um sinal como voz ou música
    dim checkingIter as integer = 10 'Número de iterações de verificação de silêncio do tradutor antes de ATIVAR
    dim checkingIterTime as integer = 200 ' Intervalo (miliseg) entre as iterações de verificação (recomendado de 100, padrão 200)
    ' Contanto. verificando se a tradução está silenciosa e você pode ativar o Orig. = verificandoIter * verificandoIterTime (milisec)
    '----FINALIZAR CONFIGURAÇÕES-----
    dim voicemeter as string = ""
    dim speaking as boolean = false
    dim silence as boolean = false
    dim silencechecking as integer = 0
    dim muted as boolean = false
    do while true
    dim xml as string = API.XML()
    dim x as new system.xml.xmldocument
    x.loadxml(xml)
    voicemeter = (x.SelectSingleNode("//input[@title='"& translateInput &"']/@meterF1").Value)
    if (x.SelectSingleNode("//input[@title='"& translateInput &"']/@meterF2").Value) > voicemeter
    voicemeter = (x.SelectSingleNode("//input[@title='"& translateInput &"']/@meterF2").Value)
    end if
    muted = (x.SelectSingleNode("//input[@title='"& translateInput &"']/@muted").Value)
    'API.Function("SetText",Input:="TextInput",SelectedName:="Timer.Text" ,Value:=voicemeter)
    'console.writeline(voicemeter)
    if voicemeter > voicethreshold And voicemeter.IndexOfAny("[E]".ToCharArray) = -1 And Not muted
    if silencechecking >= checkingIter ' 0 '!=
    'console.writeline("Speaking")
    silencechecking = 0
    'API.Function("SetTextColour",Input:="TextInput",SelectedName:="Timer.Text",Value:="yellow")
    'API.Function("SetText",Input:="TextInput",SelectedName:="Timer.Text" ,Value:="Перевод говорит! " + voicemeter)
    Input.Find(origInput).Function("SetVolumeFade", volumeSpeaking + "," + fadeTimeSpeaking)
    end if
    'console.writeline(silencechecking)
    else
    if silencechecking < checkingIter

    silencechecking += 1

    end if
    if silencechecking = checkingIter

    'console.writeline("Silence")
    'API.Function("SetTextColour",Input:="TextInput",SelectedName:="Timer.Text",Value:="white")
    'API.Function("SetText",Input:="TextInput",SelectedName:="Timer.Text" ,Value:="Перевод молчит! " + voicemeter)
    Input.Find(origInput).Function("SetVolumeFade", volumeStandart + "," + fadeTimeStandart)
    silencechecking = checkingIter + 1

    end if

    'console.writeline(silencechecking)

    end if
    sleep(checkingIterTime)
    Loop

  •  Місяць тому

    Outra aula de vMix, grato por compartilhar seus conhecimentos em vMix

  • @atitude33
    @atitude33 Рік тому +1

    Show....

  • @TVMPORTOSEGUROBA
    @TVMPORTOSEGUROBA Рік тому +1

    Muito interessante! Mais um conteúdo sensacional, obrigado por compartilhar os seus conhecimentos

  • @gilbertodesantanaandrade7133
    @gilbertodesantanaandrade7133 Рік тому +2

    Boa tarde parabéns por esse script. Quero sab se eu usa na igreja na live para controla o volume do áudio porque tem pessoas que falam baixo outras falar mais alto.

    • @CristianoTuli
      @CristianoTuli  Рік тому +1

      Olá.
      Pra essa questão da variação dos microfones na live deve-se usar o compressor mesmo. Pra isso o compressor do Vmix funciona muito bem.

    • @gilbertodesantanaandrade7133
      @gilbertodesantanaandrade7133 Рік тому

      Obrigado

    • @gilbertodesantanaandrade7133
      @gilbertodesantanaandrade7133 Рік тому

      @@CristianoTuli boa tarde quero sab se vc sabe como colocar a legenda,pq a do UA-cam só está legendando de um dia pra o outro.
      Se pode gravar uma aula com esse assunto eu agradeço.

  • @duartelzh
    @duartelzh 4 місяці тому

    dá pra fazer isso no PC? Por exemplo, abaixar o volume do meu spotify quando eu assisto algum vídeo automaticamente, eu sei que o whatsapp faz isso quando escuto áudios

  • @ferasopecopec
    @ferasopecopec 2 місяці тому

    Amigo tudo bem? estou precisando criar um plugin para atualizar a cada 10min altuns imputs automaticamente... sendo eles webbrouser do vmix, um srt e um ndi... tenho um problema de cairem constantemente devido a usar um pc remoto para mandar sinal. ai a conexao das maquinas volta mas o input so volta se clicar com botao direito e atualizar.... sabe me informar aonde encontro a base para desenvolver esse script de atualizar automatico?

    • @CristianoTuli
      @CristianoTuli  Місяць тому

      Não sei te dizer. Mas a minha sugestão é vc resolver o problema das quedas.
      Uma possibilidade para atualizar tudo de uma vez é criar um atalho, e atribuir à mesma tecla a atualização dos tres inputs.