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...
'----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
Vlw.
Abc.
Show....
obg
Muito interessante! Mais um conteúdo sensacional, obrigado por compartilhar os seus conhecimentos
Obg.
Compartilha com os amigos. 👍
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.
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.
Obrigado
@@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.
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
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?
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.