A exibição de cifras sincronizadas exige o instante de cada linha na gravação, e essa marcação é feita em geral à mão. Este trabalho descreve e avalia o Studio, sistema que recebe uma cifra em texto plano e uma gravação e produz: a cifra decodificada em seus componentes; as faixas da gravação separadas por instrumento; a letra sincronizada palavra a palavra; e um relatório das divergências entre o que está escrito e o que foi cantado.
O alinhamento automático é dificultado, neste domínio, pelo acompanhamento instrumental sobreposto à voz, pela notação das cifras, que intercala acordes, seções e comentários à letra, e pelas divergências entre texto e canto: linhas puladas, repetidas, acrescentadas ou alteradas. A avaliação mede a sincronização e a detecção de desvios em sete cenários de um dataset sintético em que o tempo de cada linha é conhecido por construção.

Sistema
O sistema recebe a cifra em texto plano e a gravação, e produz a cifra com o início e o fim de cada palavra, as faixas separadas e o relatório de desvios.
RE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURP
Separação de faixas
A gravação é separada em cinco faixas: voz, piano, baixo, bateria e demais instrumentos. As faixas alimentam o player, e a voz isolada alimenta a sincronização.
QUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VT
U0UvU0VHUkVETy1IQU
L1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0Uv
Decodificação da cifra
A cifra é recebida como texto plano, na forma em que costuma ser escrita, sem marcação especial. Cada trecho é classificado conforme o seu papel: acorde, letra, tablatura, comentário, pontuação ou recuo. Apenas a letra participa da sincronização; os demais componentes voltam à sua posição sobre a letra sincronizada.
RUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0



L1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRU


Alinhamento
A letra decodificada é alinhada à voz isolada. A saída é o início e o fim de cada palavra da letra na gravação. Linhas puladas não recebem tempo, e as repetições encontradas são reinseridas na ordem em que foram cantadas.
LUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NF





LUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy
R1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS


Q0tFUiBBQ0VTU0UvU0VHUkVETy1
RUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFD

QUNFU1NFL1NFR1JFRE8tSE
QUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0UvU0VHUkVETy1IQUNLRVIgQUNFU1NFL1NFR1JFRE8tSEFDS0VSIEFDRVNTRS9TRUdSRURPLUhBQ0tFUiBBQ0VTU0


Relatório de desvios
O relatório compara, palavra por palavra, o que foi escrito com o que foi cantado. Cada palavra da letra é classificada como:
- igual: cantada como escrita;
- variação: a mesma palavra flexionada ou grafada de outro jeito;
- trocada: no lugar dela foi cantada outra palavra;
- não cantada: não tem par na gravação.
Trechos cantados que não constam da cifra são apontados na posição em que ocorreram, e linhas sem nenhuma palavra cantada, como linhas não cantadas. Desvios de reconhecimento incerto são marcados como incertos, e não afirmados. Uma falha no relatório não interrompe a sincronização.
Montagem
Os acordes, comentários e recuos voltam para a sua posição sobre a letra sincronizada, inclusive nas linhas repetidas. A saída é a cifra completa com início e fim de cada palavra, usada pelo player e pelo editor.

Metodologia
Dataset
As gravações são sintetizadas a partir de frases faladas do Mozilla Common Voice sobrepostas a instrumentais do soundsafari, ambos sob licença CC0. Como o gerador define a posição de cada frase, o início e o fim de cada linha são exatos por construção. Os tempos de palavra do gabarito são obtidos por reconhecimento automático sobre a voz isolada de cada frase; o erro por palavra mede, portanto, a concordância com essa referência, e não um acerto absoluto.
Cenários
Os desvios são aplicados no momento da avaliação, sem alterar o dataset. Nos cenários de canto, a alteração está na gravação; nos de texto, na cifra entregue ao sistema, com o gabarito recalculado pelo mesmo procedimento. No canto contínuo, variam o volume do instrumental e a duração das pausas.
Métricas
Cada linha cantada, incluindo cada repetição, é uma ocorrência do gabarito. Uma ocorrência e uma marcação do sistema são associadas quando pertencem à mesma linha e seus inícios diferem em até 1 s, por atribuição ótima que minimiza a soma das diferenças.
- Revocação (linhas sincronizadas): fração das ocorrências do gabarito associadas a uma marcação.
- Precisão (marcações corretas): fração das marcações do sistema associadas a uma ocorrência.
- Tempo por palavra: fração das palavras cantadas cujo início difere da referência em até 0,3 s e em até 1 s (palavra sem tempo conta como falha), e o erro absoluto mediano e o percentil 90 de cada caso.
- Detecção de desvios: revocação e precisão de cada tipo de desvio apontado no relatório. Trechos cantados fora da cifra são comparados pela sobreposição em segundos; linhas não cantadas e palavras trocadas, item a item.
Protocolo
Cada gravação passa pela API completa, como o aplicativo faria, do áudio de entrada à saída entregue ao usuário; nos cenários de texto, a gravação é a mesma e só a sincronização e o relatório são refeitos a partir do áudio já processado. As métricas de sincronização são médias por caso; o erro por palavra é a mediana entre os casos; as de detecção são somadas sobre todos os casos do cenário. A medição usou as versões … do aplicativo, em uma placa ….
Resultados
Sincronização
Fora das repetições, revocação e precisão ficam no patamar do canto contínuo. Com linhas puladas, foram acompanhados … saltos, e … linhas puladas ficaram sem marcação indevida. Nas repetições, a precisão se mantém em …, mas apenas … repetições foram encontradas.
Sensibilidade
O volume do instrumental, a duração das pausas e as omissões não afetam o resultado de forma relevante. Entre os fatores testados, a repetição de linhas é o único que degrada o sistema: a revocação cai de forma monotônica com ela, enquanto a precisão se mantém.
Detecção de desvios
As linhas não cantadas são apontadas quase integralmente e com poucos avisos incorretos. Trechos cantados fora da cifra e palavras trocadas têm revocação alta, mas precisão menor: parte dos avisos corresponde a diferenças de reconhecimento, e não a desvios reais. Com os desvios combinados no mesmo caso, a revocação se mantém e a precisão cai.
Discussão
Nos cenários testados, a sincronização não dependeu da correspondência integral entre cifra e gravação: omissões e desvios de texto não reduziram as métricas em relação ao canto contínuo. Nas repetições, o sistema deixa ocorrências sem marcação em vez de marcá-las incorretamente, o que preserva a precisão ao custo da revocação. No relatório, a distinção entre um desvio do cantor e um erro de reconhecimento é o principal limite da precisão.
Limitações:
- a medição é anterior à versão 1.3.0, que passou a procurar linhas repetidas;
- a voz é falada e a mistura é sintética; canto, mixagem profissional, reverberação e ruído ao vivo não estão representados;
- o tempo por palavra é medido contra uma referência automática, e não contra anotação manual;
- a decodificação da cifra e a qualidade da separação de faixas não foram medidas isoladamente, apenas através do resultado final;
- o dataset é pequeno, e todas as medições usaram um único hardware.
Conclusão
Em dataset sintético, o Studio converte uma cifra em texto plano e uma gravação em uma cifra sincronizada palavra a palavra, com sincronização estável sob linhas puladas e desvios de texto, e aponta a maior parte desses desvios ao usuário. As próximas etapas são a medição da versão 1.3.0, a melhora da precisão do relatório, a medição isolada da decodificação e a validação em gravações reais com anotação de referência.
