ANTESCOFO Anticipatory Synchronization and Control
ANTESCOFO Anticipatory Synchronization and Control
ANTESCOFO Anticipatory Synchronization and Control
Veja discussões, estatísticas e perfis de autores para esta publicação em: https://www.researchgate.net/publication/228344553
CITAÇÕES LÊ
88 355
Alguns dos autores desta publicação também estão trabalhando nesses projetos relacionados:
Todo o conteúdo desta página foi carregado por Arshia Cont em 03 de março de 2014.
Arshia Cont
UCSD, Departamento de Música, e
Ircam - UMR CNRS STMS.
cont@ircam.fr
faixas de cliques ou escuta ativa. Mais tarde, em meados dos anos 80, interação de itens e manuseio é deixada para o usuário uma vez que os eventos
o movimento é acompanhado por experimentos e repertório de são reconhecidos em tempo real.
a chamada “eletrônica em tempo real”, a partir de experimentos de É interessante notar que o MIDI Syn thetic Performer inicial de
Manoury e Boulez, onde na maioria das vezes uma partitura Vercoe teve interação explícita com o deduzido
1 . Com a mudança para o áudio
seguinte aplicativo é responsável por sincronizar eventos tempo do performer ao vivo[5]
dos instrumentos ao vivo para a partitura pré-escrita e acionando os sistemas usando algoritmos de detecção de pitch o tempo foi
eventos eletrônicos apropriados (sejam fixos ou temporariamente esquecido com foco em técnicas de correspondência de cordas
através da geração viva). Neste último grupo, até hoje, um e de volta com Grubb e Dannenberg [6] onde o
muitos compositores se apoiaram na ideia de uma partitura seguindo as observações de pitch usadas no modelo probabilístico podem
um aplicativo para automatizar a execução da partitura eletrônica com influenciar o tempo de corrida comparando o tempo decorrido
sincronização ao(s) intérprete(s) ao vivo, e o tempo idealizado da partitura. Talvez a taxa mais elaborada e o
enquanto outros, com Manoury como precursor, imediatamente modelo de tempo explícito que foi usado pertença
reconheceram e incorporaram as possibilidades em para Rafael [7]. O projeto de Raphael possui duas etapas para
escrevendo partituras eletrônicas interativas que são realizadas decodificação da posição e do andamento da partitura. A primeira, composta
durante a apresentação ao vivo. Modelos ocultos de Markov deduzidos da pontuação responsável por
Naturalmente, o advento das técnicas de acompanhamento de pontuação para decodificar a posição na partitura e o segundo,
sincronização de performance ao vivo com partitura eletrônica uma elaborada rede Bayesiana que toma esta informação para deduzir
e o controle da interação criaram muito impulso tanto o andamento suave durante a performance.
nas comunidades de pesquisa e música, mas não sem Notavelmente, Raphael usa esse tempo em interação com seu
crítica. Entre muitas críticas dirigidas à escola de eletrônica em tempo sistema de acompanhamento para adaptar o tempo-duração do
real, de particular interesse são as seção de acompanhamento usando técnicas de codificação de fase
pelos compositores Jean-Claude Risset e Marco Stroppa. Ris set que provou ser muito eficaz.
argumenta que “não só o uso de sistemas em tempo real traz limitações Antecofo é um seguidor de pontuação antecipatória com um design
e dificuldades para a durabilidade antecipatório que será descontinuado a seguir. É capaz de produzir o
da música, mas pode-se até argumentar que o conceito tempo em tempo real da performance
de tempo real diz respeito principalmente ao desempenho e pode ser mas ao contrário das abordagens anteriores, compreende duas
de pouca relevância para a composição musical” [3]. Uma leitura agentes de áudio e tempo que trabalham de forma colaborativa e
construtiva do artigo de Risset apontaria para uma importante falta nos competitivamente em um projeto antecipado para reduzir a computação
sistemas existentes: a falta de uma interação composicional durante a e a complexidade do projeto e aumentar a robustez
performance. Enquanto esta questão é quando há incerteza em um dos dois agentes. a
na maioria das vezes estético, também tem muito a ver com desenho central da abordagem probabilística no Antecofo, permite o
a falta de projetos explícitos para tais questões. A extensa crítica de acesso direto a estruturas temporais que podem ser
Stroppa à eletrônica em tempo real é acompanhada por facilmente acessado e ajustado na linguagem de partitura fornecida.
a proposta detalhada do compositor para um Intérprete Virtual
sistema[2]. Nesta vasta proposta (que não detalharemos
neste artigo), o compositor está preocupado principalmente com a 4. ARQUITETURA GERAL
temporalidade dos eventos musicais e diferentes graus temporais
de interação em música de computador abrangendo desde O sistema proposto neste artigo é baseado em pares acoplados
interação de processos eletrônicos fixos ou ativos com tempi detectado agentes de áudio e tempo. A partitura é representada
em tempo real para representações contínuas de tempo através de um modelo gráfico probabilístico construído diretamente a
para permitir o ajuste fino de componentes eletrônicos compostos para um som ao vivo
partir de uma partitura simbólica. Os dois áudios e
atuação. os agentes tempo colaboram o tempo todo para mapear o tempo real
entrada de áudio para a sequência de estado mais provável na partitura
e, em troca, o agente do tempo é diretamente afetado pelo reunir diversas contemplações importantes sobre a modelagem do tempo
decisões obtidas instantaneamente pelo sistema. como insumos da comunidade artística que constitui
Este modelo tem a hipótese subjacente de que o sinal de áudio pode o núcleo da modelagem temporal do antesscofo. não há
ser totalmente gerado pelo modelo de pontuação do espaço de estados referência única sobre modelos de tempo nas artes! todo
subjacente. Portanto, o problema de seguir a pontuação é o inverso desta compositor ou artista lidou com o problema de uma maneira ou
hipótese, ou para encontrar o outro. Não passaremos por todos os aspectos da modelagem de tempo
provável sequência de estados associada a tempo real observado neste artigo e deixaremos uma análise mais ampla para o futuro.
sequência de áudio. Devido à natureza deste problema inverso, Além disso, não pretendemos fornecer um modelo universal de
a seqüência de estado subjacente que gera o áudio é Tempo. Aqui, apresentamos várias visões e categorias que
não observável diretamente pelo sistema. Este processo de são amplamente aceitos e são altamente inspiradores para o
encontrar a sequência de estado mais provável em um processo oculto projeto do Antecofo e foram parcialmente apresentados em [12] .
até o presente é referido como o problema de inferência.
O modelo gerador de espaço de estados da pontuação proposta
5.1.1. temporário vs. Eterno
aqui está uma cadeia híbrida oculta de Markov/semi-Markov [11].
A Figura 1 mostra um diagrama geral do projeto da Antecofo. Formalizado primeiramente por Xenakis[13], o Atemporal (ou fora do
Além de decodificar a posição e o andamento corretos da partitura, tempo) corresponde a um objeto que possui sua própria estrutura temporal
o sistema é capaz de realizar ações de pontuação (eletrônica) se estiverem interna independente da estrutura temporal geral.
presentes na pontuação pré-carregada como estruturas da peça musical. Ele também enfatiza sobre
maneira de se comunicar com motores externos generativos ou de síntese a independência das estruturas bitemporais. se conformar
acoplados com as escalas de tempo musicais que são esta distinção com nosso projeto probabilístico, definimos um
fornecidos através da linguagem de partituras da Antecofo. Objeto ou evento atemporal como aquele que possui uma
espaço na partitura, mas não contribui para o físico
Fluxos de áudio
desligada
hora do placar. Exemplos típicos de objetos atemporais
tempo real são notas de graça e notas internas de um trinado (livre) no
Observadores notação clássica ocidental. Embora ambos tenham presença física, os
eventos individuais não contribuem para a noção
de tempo, mas sua aparência temporal relativa no caso
pontuação
Inferência e decodificação
do primeiro, ou sua estrutura global em tempo no caso de
a segunda contribui para a noção de tempo. Outros exemplos de objetos
pontuação pontuação
analisador ações atemporais são os eventos com fermatas ou caixas de improvisação livre
Áudio Tempo
vistas em diversas músicas contemporâneas
repertório.
Figura 1. Diagrama de Projeto Geral da Antecofo O tempo estriado é aquele que se baseia na recorrência temporal
regularidades enquanto o tempo suave é uma noção contínua de
A seguir, veremos um projeto mais detalhado tempo como um fluxo de informação [14]. O tempo pulsado usado
de cada componente do sistema descrito acima. na maioria da notação de música clássica ocidental é uma notação regulamentada
fluxo de tempo estriado que usa um relógio musical interno geralmente
5. NA MODELAGEM DO TEMPO MUSICAL acionado por um parâmetro de tempo em batidas por minuto. Dentro
nossa terminologia, distinguimos entre uma escala de tempo estriada
5.1. Fundamentos Musicais onde a noção de tempo é dirigida em relação a um tempo em constante
de um determinado processo ocupa uma duração que pode ser onde u = 1, . . . , Mj e Mj denotam a parte superior
terminística ou não. Em tais tarefas, estamos interessados em um vinculado ao tempo gasto no estado j. Assim, assumimos que
modelo probabilístico da duração do macroestado e do tempo de jornada. as distribuições de ocupação dos estados estão concentradas
Em um contexto musical, um macroestado pode se referir a um evento em conjuntos finitos de pontos de tempo.
musical (nota, acorde, silêncio, trinados etc.)
dada uma duração prevista. Uma maneira comum de modelar • Uma distribuição implícita de permanência anexada a cada estado
dados de séries temporais na literatura é pelo uso de modelos de espaço markoviano j onde
de estados. Um modelo de espaço de estados de uma sequência é um P(St+1 = k|St+1 6= j, St = j) = ˜pjk/(1 ÿ p˜jk)
sequência de grafos indexados no tempo (nós e arestas) onde definir uma distribuição de ocupação estadual implícita como
cada nó se refere a um estado do sistema ao longo do tempo. Portanto, a distribuição geométrica com parâmetro 1 ÿ p˜jk:
uÿ1
cada estado tem uma ocupação de tempo que pode ser usada para dj (u) = (1 ÿ p˜jk) ˜pjk
para usar os benefícios dos dois mundos, introduzindo cadeias híbridas sobre os eventos de pontuação esperados dadas as últimas entradas
de Markov/semi-Markov como definido pela primeira vez em [11]. (ou em tempo real) do sistema. A maioria dos aplicativos de
Na seção 8 mostraremos como tal mistura pode representar diferentes acompanhamento de pontuação vem com seus mecanismos internos de
dependências de tempo visitadas na última seção. observação ou são ajustados para um módulo de observação específico
Para formalizar o problema, assumimos que o áudio que vive fora do próprio seguidor de pontuação. Por
ÿ o design do antesscofo, decidimos torná-lo modular, fornecendo um
fluxo através do tempo ÿ ou x 0 (como abreviação de x0, . . . , xÿ ) é
um processo estocástico representado pela variável aleatória mecanismo interno de observação
ÿ
através e também habilitando entradas de observação definidas pelo usuário. Em seu
{Xt}, que é gerado por uma sequência de estados s 0
uso básico, o antesscofo é um aplicativo de partitura clássica que aceita
ugh a variável aleatória {St} correspondente a (oculto)
estados em uma cadeia híbrida de markov/semi-Markov gerada uma lista de notas (em Hz ou MIDI) como entrada
da pontuação. A solução para o problema de inferência então para mapeá-lo para a posição da partitura e a variável tempo. Mas
determina a sequência de estados mais provável S ÿ isso iria Para usuários mais curiosos, o Antecofo é capaz de aceitar observações
0
simultâneas de diferentes naturezas. O número de observações atuais
gerar Xÿ 0 e em troca a posição do placar e em tempo real
para o sistema (que são definidas pelo usuário
tempo decodificado. Além deste ponto, usamos P(St = j) como um
e calculados fora da Antecofo) e seus nomes de código
abreviação de P(St = sj ) denotando a probabilidade de que o estado j
é emitido no instante t. são definidos pelo usuário durante a instanciação do objeto em Max
Seja St uma cadeia híbrida de estado-J Markov/semi-Markov. ou PS A Figura 2 mostra as aparências clássicas e definidas pelo usuário
Pode então ser definido por: do Antecofo em uma janela Max. Aqui o
usuário criativo da figura 2(b) tentou fornecer quatro
• Probabilidades iniciais: observação simultânea diferente para o módulo. Consequentemente, a
ÿj = P(S0 = j) com P j ÿj = 1, que executa spond até pontuação que o usuário cria normalmente
o ponto inicial na pontuação do aplicativo de sincronização durante faça uso dessas diferentes fontes para acompanhar diferentes aspectos
a execução. dos fluxos de áudio durante uma apresentação. Nós vamos chegar
voltar a este ponto mais tarde na seção 8.2 e aqui focar
• Probabilidades de Transição:
como essas observações são preparadas pelo observador para
– estado semi-Markoviano j: os módulos de inferência e decodificação.
para cada k 6= j, pjk = P(St+1 = k|St+1 6= Antecofo vem com várias observações padrão incorporadas para
j, St = j) onde P pjk = 1 e pjj = 0. partituras clássicas que são indicadas
k6=j por: hz, midi e KL usados respectivamente para observação de afinação
– Estado de Markov j: usando um rastreador de afinação externo, observação de MIDI
p˜jk = P(St+1 = k|St = j) com P p˜jk = 1. e observações de áudio polifônicos. Para obter probabilidades de
k
observação instantânea para os módulos modulares da Antecofo
• Uma distribuição explícita de ocupação (ou tempo de permanência) observador, simplesmente centralizamos as distribuições normais sobre o
anexado a cada estado semi-Markoviano: valor esperado indicado na pontuação e obter probabilidades em tempo
de execução. Obviamente, se a entrada consiste em um
dj (u) = P(St+u+1 6= j, St+uÿv = j, (1) vetor de valores distribuições normais multivariadas são usadas
v = 0, . . . , u ÿ 2|St+1 = j, St 6= j) em vez de. A variância dessas distribuições normais (ou a
Machine Translated by Google
74 72 0 76 74 0
8. TOPOLOGIA DE PONTUAÇÃO E IDIOMA
A topologia de espaço de estado de {St} é determinada pela Figura 3. Amostra de pontuação da Antecofo e transição de estado
pontuação, onde cada elemento de pontuação é mapeado em um híbrido diagrama para eventos únicos
Cadeia equivalente de Markov/semi-Markov usando Antecofo's
analisador. Esses mapas integrados descrevem diferentes tipos de eventos
e modelos de tempo e podem ser descritos diretamente usando um 8.1.3. Classe TRILL
linguagem de pontuação baseada em texto simples. A linguagem de pontuação de
Anteriormente, foi cuidadosamente projetado para permitir a importação de Como o nome sugere, a classe TRILL do Antecofo é
formatos de partitura comuns, como MIDI e para poder uma maneira de imitar a notação trinado da música clássica. termos
descrever facilmente o repertório comum de música clássica como de modelagem, o TRILL da Antecofo é um evento in-time que
bem como eventos definidos pelo usuário provenientes de diferentes tem vários eventos fora do tempo dentro. Além disso, a ordem
observações e com diferentes temporalidades. Nesta seção descrevemos em que esses subestados aparecem não é importante. A Figura 4 mostra
o básico da linguagem de partitura do antesscofo dois exemplos para o TRILL syn tax de antesofo onde o segundo é retirado
com suas equivalências no mundo real e mostrar como o mesmo do primeiro compasso
sintaxes podem definir eventos de pontuação não convencionais complexos. em Little-I de Marco Stroppa para flauta e eletrônica e
Além disso, a linguagem da partitura do antesscofo possibilita a coexistência demonstra um glissando livre que pode ser
da partitura instrumental e da música eletrônica codificado usando a classe TRILL no Antecfo. O TRILHO
pontuação total. Como convenção, nas figuras a seguir, um estado de sintaxe da classe é a seguinte:
Markov é demonstrado por um círculo regular TRILL ( +<float> ) <duração> <nome>
e um estado de Semi-Markov por um círculo de linha dupla. Também
na definição de sintaxes de comando, o sinal de mais (+) ao lado de 8.1.4. Classe CHORD
cada tipo deve ser interpretado como “um ou mais de”. Ás
uma última convenção, um <float> indica um número flutuante que Como o nome sugere, uma classe de acordes denota um único semimarkov
(ou markov se a duração for definida como zero) que
representa as observações anotadas na partitura. Por
eventos afinados e como convenção, os eventos seriam representados por modela eventos polifônicos. A sintaxe regular para o CHORD
números de notas MIDI ou MIDIcent. classe é semelhante à classe TRILL, mas se traduz em apenas
um estado:
CHORD ( +<float> ) <duração> <nome>
8.1. Comandos básicos
O andamento inicial e qualquer mudança de andamento na partitura podem Usando os comandos acima, qualquer peça de música clássica pode
ser codificado pelo comando BPM em Beats-Per-Minute. ser facilmente analisado ou reescrito no formato do Antecofo. Nós
Machine Translated by Google
8.2.2. O operador
; Isso também é um trinado
BPM 60
TRILL ( 6600 6700 6550 ) 8.0 myTrill
Conforme mencionado na seção 7, o Antecofo é capaz de ter representações
simultâneas de fluxos de áudio para captação e interação. Por padrão, o
Antecofo usa a entrada mais à esquerda para todo o trabalho de
66 67 65,5 reconhecimento, a menos que especificado previamente pelo operador @. A
string após o @operator deve estar de acordo com os nomes de código
criados pelo usuário
Figura 4. Amostra de pontuação da Antecofo e transição de estado durante a instanciação do objeto (seção 7), caso contrário
diagrama para classe TRILL seria negligenciado durante a análise de pontuação e uma mensagem de
erro seria enviada. Com isso, o usuário pode alternar facilmente
entre várias representações de áudio e siga as
adicione mais uma classe para permitir objetos mais complexos e
aspectos desejados simultaneamente em uma única partitura.
codificação temporária. A classe MULTI é semelhante à classe
classe TRILL com a exceção de que os símbolos definidos
dentro dele são ordenados a tempo. Esta nova adição à sintaxe de partitura 8.3. Ações de partitura de música de computador
8.2.1. VARIAÇÃO
que seria enviado para o símbolo na posição desejada.
A opção <delay> se existir, é um número float que indica o valor do tempo
A variação associada ao observador (consulte a seção 7) atrasado em batidas que atrasaria o
também pode ser controlado na partitura e toma como unidade, semitons hora do relógio para enviar a mensagem para processos externos
(para eventos de altura) ou valores percentuais do evento de pontuação usando um agendador interno acoplado ao agente tempo.
esperado (para outras observações). Isso é bastante O comando adicional LFWD (ou loop forward) em
útil em várias circunstâncias. Por exemplo, ao seguir sinais de áudio de permite mensagens periódicas com a seguinte sintaxe:
uma flauta em uma apresentação ao vivo, LFWD <nome> <período> <símbolo> +<mensagem>
a afinação dos agudos pode tornar-se diferente do que ao ser acionado envia as mensagens indicadas para um
afinação esperada considerada na partitura devido ao aquecimento símbolo de forma periódica. O período é dado em batimentos
Machine Translated by Google
e é acoplado ao andamento decodificado dentro do Antescofo. seria um derivado da distribuição de von Mises como mostrado abaixo
Isso significa simplesmente que o período da mensagem em loop [9]:
mudaria apropriadamente com o ritmo do(s) músico(s). O comando
1
KILLFWD pode parar um loop para frente chamando o nome do F(ÿ, ÿ) = 2ÿ e ÿ cos(2ÿÿ) sen 2ÿÿ
exp ÿ
processo em qualquer lugar na partitura:
KILLFWD <nome>. Aqui, o parâmetro ÿ desempenha um papel importante como menor
Essa característica da linguagem de partituras do Antecofo é constantemente valores espalham a correção por todo o domínio de fase.
crescendo de acordo com as necessidades da comunidade de música Para levar esse fato em consideração, acumulamos
por computador usando o software desenvolvido. Para obter uma lista fatores que ocorrem durante os IOIs de notas e resolvem numericamente
abrangente de ações de pontuação e planos futuros desses para o melhor ÿ que deve ser usado durante a próxima atualização.
características convidamos o leitor curioso a experimentar e seguir o Pode-se mostrar que as considerações acima correm em resposta
desenvolvimento na seção 11. à seguinte atualização de andamento na chegada de cada
nova posição de pontuação decodificada do agente de áudio:
9. DECODIFICAÇÃO DE TEMPO
sn+1 = sn(1 + F(ÿn, ÿ))
As equações 3 e 2 nos fornecem uma estrutura recursiva para em seguida, foi usado em vários shows, incluindo “...Explosante-
decodificar a posição da partitura em tempo real, dado que Fixe...” de Boulez com a Filarmônica de Los Angeles em janeiro de
conhecemos a função de sobrevivência dj (u) para cada evento na 2008 e várias novas produções estão em andamento.
partitura na equação 2. Em troca, o tempo pode ser decodificado Neste artigo demonstramos fundamentos e conceitos básicos do
corretamente se temos as posições da partitura da nota atual e das antesscofo. Deixamos uma discussão mais rigorosa sobre o desenho,
notas anteriores, conforme visto na seção 9. Para resolver ambos os avaliação e exploração do sistema para uma futura comunicação.
problemas, juntamos os dois agentes onde ambos estão sendo
executados em paralelo e colaborando para decodificar a melhor
posição e andamento da partitura. Embora a influência do 12. AGRADECIMENTOS
decodificador de posição da partitura no agente de tempo seja
evidente, precisamos refinar o contrário principalmente porque os O autor gostaria de agradecer fortemente sua colaboração com
dois agentes são executados em escalas de tempo diferentes. Marco Stroppa neste projeto, sem cuja forte intuição musical e
Para resolver essa carga, consideramos um processo estocástico perseverança este projeto nunca alcançaria seu estado atual.
P(Tk) que modela o tempo estimado de chegada (em termos de
do número de quadros de análise) para a º evento no
pontuação k como um processo de poisson. Uma vez que a função 13. REFERÊNCIAS
de sobrevivência dj (u) é o tempo entre chegadas, usando os
princípios estocásticos básicos, pode-se mostrar facilmente que, [1] Miller Puckette. Uma divisão entre aspectos 'composicionais' e
'performativos' do pd. In First International Pd Convention, Graz,
ÿÿ(tnÿtnÿ1) dj Áustria., 2004.
(tn ÿ tnÿ1) = e
[2] Marco Stroppa. Eletrônica ao vivo ou música ao vivo? para uma crítica
onde ÿ é o número esperado de ocorrências que se esperaria que da interação. Contemporary Music Review, 18(3):41-77, 1999.
acontecessem durante o intervalo de tempo dado.
Durante a estrutura de inferência da equação 2, sendo tn o tempo [3] Jean-Claude Risset. Compondo em tempo real? Contemporary Music
real e tnÿ1 a última posição decodificada, podemos obter facilmente Review, 18(3):31-39, 1999.
ÿ usando o último tempo decodificado e a duração do evento (em [4] Roger B. Dannenberg. Um algoritmo online para acompanhamento em
batidas) da partitura. tempo real. In Proceedings of the International Computer Music
Conference (ICMC), páginas 193-198, 1984.
11. DESENVOLVIMENTO E DISCUSSÃO [5] Barry Vercoe. O performer sintético no contexto da performance ao vivo.
In Proceedings of the ICMC, páginas 199–200, 1984.
http://debussy.music.ubc.ca/NoteAbility/