Computação Musical
Síntese de Sons:
introdução e síntese aditiva
Geber Ramalho & Osman Gioia - UFPE
Histórico
Gravador
Theremin
Martenot
Síntese Direta
Sintetizador
Moog
RCA Mark II
Telharmonium
1900
30
40
50
John Cage
Schaeffer
Varese
Trautonium
Musique Concrète
60
Stockhausen
Max Mathews
Música Eletrônica
70
Síntese
 Processo de compor ou combinar diversas partes
ou elementos em um todo maior
 Síntese de sons
• Controle da afinação, intensidade e espectro de um som
• Criação de um espectro sônico
 Métodos
• Síntese Aditiva
• Síntese Subtrativa
• Síntese FM
• Amostragem digital (mais utilizado hoje)
• Modelagem física
Geber Ramalho & Osman Gioia - UFPE
Síntese Aditiva
Geber Ramalho & Osman Gioia - UFPE
Síntese Aditiva
 Primeiras Manifestações
• Órgãos de Tubo
• Primeiro instrumento elétrico
– Telharmonium
• Mais famoso
– Hammond
 Princípio (Fourrier)
• Toda e qualquer forma de
onda periódica é constituída
por uma soma de ondas
senoidais cujas frequências
são múltiplos inteiros da
fundamental
Geber Ramalho & Osman Gioia - UFPE
Síntese Aditiva com
Formas de Onda Fixas
 Fundamental + Parciais
• múltiplo da freqüência fundamental
• amplitude
• fase inicial (importante)
1° harmônico
3° harmônico
1° + 3°
harmônico
Geber Ramalho & Osman Gioia - UFPE
1° + 3° + 5° + 7° + ... 65°
Síntese Aditiva
 Idéia: mistura de ondas senoidais com envoltória
Geber Ramalho & Osman Gioia - UFPE
Síntese Aditiva com
Formas de Onda Fixas
 Crítica
• Não reproduz a envoltória (ataque, etc.), só sustentação,
logo, não pode simular perfeitamente um som acústico
 Solução
• Utilizar o gerador de envoltórias para cada parcial
 Crítica?
Geber Ramalho & Osman Gioia - UFPE
Complexidade da Síntese Aditiva
 Crítica
• A solução anterior aumenta mais ainda a
complexidade
 Alta Demanda do Sistema
• Ex: 20 parciais * 20 eventos (notas) = 400
osciladores * 44 Khz = 17.600.000 amostras por
segundo * 750 operações por amostra =
13.200.000.000 de operações por segundo
 Alta Demanda de Parametrização
• Ex: 20 parciais * 10.000 eventos = 200.000
envoltórias, fases iniciais, freqüências, etc.
Geber Ramalho & Osman Gioia - UFPE
Alta Demanda do Sistema
Oscilador por Leitura de Tabela
Hardware x Software
Geber Ramalho & Osman Gioia - UFPE
Síntese por Tabela de Formas de
Onda (Wavetable lookup)
 Problema
• É caro calcular individualmente as diversas senóides
que compõe um determinado espectro
• f(t) = ak + a0sen(f0t + 0) +... + ansen (fnt + n)
 Solução: Wavetable-lookup synthesis
• Armazenar valores pré-calculados do ciclo de onda
senoidal em uma lista denominada Wavetable
• Para gerar o sinal, lê-se continuamente as amostras da
lista
• Técnica importante pois é usada atualmente em outro
contexto (síntese por amostragem)
Geber Ramalho & Osman Gioia - UFPE
Oscilador por Leitura de Tabela
Geber Ramalho & Osman Gioia - UFPE
Oscilador Digital (Lookup Table)
 Algoritmo (laço principal)
1. phase_index = modL (fase_anterior + inc)
// apontador da tabela de tamanho L
2. Saída = amplitude * wavetable [phase_index]
 Freqüência
• Como tamanho da tabela (L) e a Fa são fixos, a
freqüência do sinal (Freq) dependerá do incremento (inc)
• Freq = Inc * Fa / L  Inc = L * Freq / Fa
– ex. se L = 1000, Fa = 40000, para Freq = 2000, inc = 50
 Fase inicial
• Phase-index > 0
Geber Ramalho & Osman Gioia - UFPE
Oscilador Digital (Lookup Table)
 Calculando a saída
• Como fazer quando o valor do incremento não “bate”
com a posição das amostras?
• Aumentar a quantidade de amostras da tabela custa
caro
 Truncagem e Arredondamento
• Causam imprecisões geradoras de pequenas distorções
denominadas “Ruído da Tabela de Amostras”
Geber Ramalho & Osman Gioia - UFPE
Método corretivo
 Melhor método: interpolação
• Valor que existiria caso fosse possível referenciá-lo na
fase exata especificada pelo incremento
• possibilita sinais boa qualidade com tabelas menores
• Ex: Tabela[1024] no pior caso
– Com interpolação linear = 104 dB SNR
– Sem Interpolação = 48 dB SNR
.75
Amp 27
Index
Geber Ramalho & Osman Gioia - UFPE
(.5)
.25
(27.5)
28
Geradores de Envoltórias
 Agora é preciso controlar os parâmetros variantes
no tempo
 Osciladores de Envoltória
• Possibilitam a geração de funções temporais dentre as
quais a ADSR (Attack, Decay, Sustain, Release)
• Valores de f1 = [0,1]
• Só passa uma vez pela tabela f1
• Incremento: depende da duração
do evento
• Nota = 2s => f =0,5 Hz
– O que é uma limitação pois em notas
longas o ataque fica comprometido
Geber Ramalho & Osman Gioia - UFPE
Software x Hardware
Geber Ramalho & Osman Gioia - UFPE
Implementando a Síntese
 2 maneiras de implementar: Hardware e Software
 Síntese direta por software
• Gera amostras e vai armazenando-as em um arquivo
(ex. wav) para posterior execução
• Método original de síntese digital
• Exemplos: Music V (Max. Mathews 1957), Csound e
SOM-A
• Demanda linguagens de síntese e, eventualmente,
editores gráficos de instrumentos
 Prós e contras
+ Total controle dos componentes do som (síntese e
especificação) e polifonia ilimitada
- Não é tempo real e processamento aumenta com a
complexidade das partituras
Geber Ramalho & Osman Gioia - UFPE
Síntese por Hardware
 Características
• Utiliza circuitos dedicados
• Tempo real porém mais limitada (~246 osc)
• Disponível em sintetizadores comerciais e DSPs (Digital
signal processors) nas placas de computadores
• MIDI => WAV => som
Geber Ramalho & Osman Gioia - UFPE
Alta Demanda de Parametrização
Geber Ramalho & Osman Gioia - UFPE
Especificação de Sons
 Partitura Musical
• Orquestração (nome dos Instrumentos)
• Notas com respectivas durações, alturas e articulações
• Interpretação humana
 Partitura algorítmica
• Objetos sonoros (Instrumentos)
• Manipulação dos mesmos (notas)
• Interpretação matemática
Geber Ramalho & Osman Gioia - UFPE
Instrumento para Síntese Aditiva
Geber Ramalho & Osman Gioia - UFPE
Especificação de Sons
 Muitos parâmetros para cada voz (harmônico)
• Frequência Central de osc
• (Pico de Amplitude de osc = 1.0)
• Envoltória de Amplitude
• Início e Duração da Envoltória de Amplitude
• Envoltória de Frequência
• Início e Duração da Envoltória de Frequência
• Intensidade do desvio de freqüência
Geber Ramalho & Osman Gioia - UFPE
Especificação de Sons
 Técnicas
• Instrumentos (MIDI) de
entrada
• Softwares de performance
• Editores gráficos especiais
• Linguagens de
programação musical
• Programas de composição
algorítmica
• Resíntese
Geber Ramalho & Osman Gioia - UFPE
Resíntese
Geber Ramalho & Osman Gioia - UFPE
Linguagem/Sistema SOM-A
Geber Ramalho & Osman Gioia - UFPE
SOM-A: Cartas Espectrais
 SOM-A
• Software de síntese aditiva desenvolvido na UnB,
baseado no Music V
 Carta Espectral (.car)
• estrutura de dados composta de listas entre parênteses
 Instruções de uma carta
• VAL - define os parâmetros iniciais de uma carta
• INS - define instrumentos
• EXE - bloco de execução de notas
Geber Ramalho & Osman Gioia - UFPE
Conjunto de Instruções
 (VAL T1 T2 Fa Ad Tp Nm Le )
• T1: Lapso de tempo inicial em segundos
• T2: Lapso de tempo final em segundos
• Fa: Freqüência de amostragem em ciclos por segundo
• Ad: Andamento - multiplicador que aplicado aos tempos
constantes da carta espectral transforma-os em
segundos
• Tp: Transposição - multiplicador transpositor das
freqüências de execução de cada nota
• Nm: Norma - multiplicador normalizador das amplitudes
de execução de cada nota
• Le: Limite de Envoltória - número de segmentos máximo
que a envoltória de amplitude pode possuir no eixo das
abicissas
Geber Ramalho & Osman Gioia - UFPE
Operador INS
 Instrumento: (INS <Vigência> <Nome> <Lista-de-componentes>)
• Vigência: Número de tempos nos quais o instrumento existirá
• Nome: nome do instrumento começando por um literal
• Lista-de-Componentes: Harmônicos com as suas respectivas
ordens, fases, envoltórias de amplitude e posicionamento espacial
denominados Unidades-H (unidades harmônicas)
 Componentes: ((ordemn fasen (envoltórian) orton)...)
• Ordemn: Ordem da enésima componente (fator que multiplica a
freqüência da nota).
• Fasen: Fase inicial da enésima componente.
• Envoltórian: Listas de pares <ordenada, abscissa> da envoltória de
amplitude.
– Por default, x={1,...,512} e a ∑Y*a < ~32000, y= todos instrumentos
simultâneos e a=amplitude das notas correspondentes
• Orton: Índice de orto-estereofonia
Geber Ramalho & Osman Gioia - UFPE
Envoltória de Amplitude
Envoltória: ((ordenada1, abcissa1) (ordenada2, abcissa2) ... )
A
m
p
l
i
t
u
d
e
0
0
lim-env
Tempo
Geber Ramalho & Osman Gioia - UFPE
Operador EXE e associados
 Execução: (EXE Ta Tb)
• Ta: Tempo de início do bloco
• Tb: Tempo de término do bloco
• A partir do aparecimento do comando EXE e até que o
interpretador encontre a instrução STP
 Notas
• representadas por listas contendo as informações
necessárias a sua execução
 Operador STP
• Encerra a ação do operador EXE anterior
 Operador FIM
• Encerra a interpretação da carta.
Geber Ramalho & Osman Gioia - UFPE
Especificação das Notas
 (Nome-do-Instrumento Ti Dur Freq Amp)
• Nome-do-instrumento: Rótulo definido pelo operador INS
• Ti: Tempo de início da nota
• Dur: Duração da nota
• Freq: Frequência em ciclos por segundo
• Amp: Intensidade relativa às amplitudes das envoltórias
de cada componente do instrumento
Geber Ramalho & Osman Gioia - UFPE
Exemplo
Ver:
http://www.cin.ufpe.br\~musica\cmps\som-a
http://primordial.cic.unb.br/lcmm/linguagens/som-a.html
Geber Ramalho & Osman Gioia - UFPE
Exercício
 Brincar de sintetizar uma musica
• ~musica/aulas/som-a
• copia tudo para c:/soma
• aproveitar as notas de alguma carta espectral disponível
(ex. marcha soldado)
• edita os instrumentos
• Na primeira vez que rodar... Definir os diretórios
• Select spectral chart
• Se quer uma coisa nova, renomear arquivo .car ou
apagar o wav
• Para ouvir: play soundblaster
Geber Ramalho & Osman Gioia - UFPE
Algumas referências
 Roads, C., Computer Music Tutorial (livro texto),
cap. 3 e 4
 http://www.harmony-central.com/Synth/
 http://fr.audiofanzine.com/apprendre/dossiers/inde
x,idossier,12.html
Geber Ramalho & Osman Gioia - UFPE
Download

Síntese de Sons: intrudução e síntese aditiva