Abaixo está um resumo da funcionalidade ATF (Formatação Avançada de Título) suportada pelo Winamp.
ATF determina como Winamp deve exibir metadados na janela de Playlist e na rolagem do som da janela Principal.
A sequência global ATF pode ser editada manualmente da página 'Títulos' nas preferências do Winamp.
A sequência padrão ATF no Winamp é:
[%artist% - ]$if2(%title%,$filepart(%filename%)
Que será exibido como: 'Artista - Título'
se os campos de metadados Artista e Título forem preenchidos nas tags dos arquivos,
caso contrário será exibido o nome do arquivo como alternativa.
%blah% indica um campo do metadados.
$blah() indica chamar a função.
[] indica "não exibir metadados a menos que foi encontrado".
‘ ’ (aspas simples) saídas de texto simples, sem análise. ex.: ‘blah$blah%blah[]’ que resultará na saída de toda sequência e ignorará caracteres especiais ($,%,[,]).
Nota: Os campos são definidos por vários componentes no Winamp. Alguns são específicos para Biblioteca de Mídia (%rating%, %playcount%), alguns fornecidos pelo Winamp (%filename%, %folder%). Na maioria dos casos, o plugin de entrada fornece os campos. Alguns plugins de entrada fornece uma grande variedade de campos do que outros. Exemplo, o plugin Windows Media (in_wm, Winamp 5.12+), fornecerá valores para QUALQUER campo no formulário %WM/*% (veja a seção de atributos extendidos de Informações do Arquivo de qualquer arquivo wma/wmv/asf para exemplos).
Retorna o caminho completo do arquivo. Para exibir somente o nome do arquivo, use a função $filepart.
Retorna a pasta onde está o arquivo.
Winamp 5.2+ ou Superior.
Retorna a classificação da faixa como um número inteiro de 1 a 5, se definido. Para exibir como estrelas ou outro caractere, use a função $repeat.
Winamp 5.2+ ou Superior.
Retorna o playcount (número de vezes que a faixa foi reproduzida), se o arquivo estiver armazenado no banco de dados da Biblioteca de Mídia.
Winamp 5.2+ ou Superior.
Para os campos listado abaixo, a informação só é retirada da BM se o arquivo estiver
presente no banco de dados da BM e se a seguinte opção estiver marcada:
Prefs
(Ctrl+P) > Biblioteca de Mídia > Biblioteca Local > ‘Use info do título na Biblioteca
para Formatação de Item na Playlist’
Em todos os outros casos, a informação é fornecida pelo plugin de entrada (se o respectivo plugin de entrada suporta o campo).
A maioria destes são diretos e retirados a partir das tags padrão do arquivo, e assim não requerem qualquer explicação adicional.
Retorna o campo Artista.
Retorna o campo Título.
Retorna o campo Álbum.
Retorna o campo Ano.
Retorna o campo Gênero.
Retorna o campo Comentário.
Retorna o número da faixa sem preenchimento, ex.: Faixa 1 irá ser exibido como 1.
Para preenchimentos com 2 algarismos, ex.: 01, 02...10, 11, use a função $num ou lpad.
Verifique %tracknumber%
Retorna o campo Intérprete.
Winamp 5.3+ ou Superior.
Retorna a tag Disco #, se disponível, ex.: 1/2 (Disco #1 de 2 CD's).
Retornar o campo Compositor.
Retorna o campo Gravadora.
Winamp 5.3+ ou Superior.
Retorna o Título da Transmissão, se caso existir.
Retorna a Taxa de Bits (irá usar a média da taxa de bits para vbr).
Retorna a duração da faixa em milisegundos. Para formatar a duração da faixa,
use
$div(%length%,60000):$num($div($mod(%length%,60000),1000),2)
Retorna 1 para vídeo, 0 para áudio.
Winamp 5.2+ ou Superior.
Retorna 1 para áudio VBR(Taxa de Bits Variável), 0 para áudio CBR(Taxa de Bits Constante).
Retorna o campo Categoria.
Winamp 5.55+ ou Superior.
Retorna o campo Produtor.
Winamp 5.57+ ou Superior.
Retorna o campo Diretor (filme), usado principalmente com vídeos.
Winamp 5.57+ ou Superior.
Os campos abaixo podem não funcionar com todos os formatos de arquivo.
Retorna o campo Artista da Faixa (equivalente à Artista), se diferente do Intérprete.
Winamp 5.3+ ou Superior.
Retorna o campo Disposição.
Winamp 5.3+ ou Superior.
Retorna o BPM (Batidas Por Minuto), se existir dados/campo.
Winamp 5.3+ ou Superior.
Retorna o campo Key (ex.: E Minor), se existir.
Winamp 5.3+ ou Superior.
Retorna o campo Letras.
Winamp 5.3+ ou Superior.
Retorna o campo Maestro.
Winamp 5.3+ ou Superior.
Retorna o campo Convertido por (programa usado para ripar a faixa), ex.: Winamp 5.34.
Winamp 5.3+ ou Superior.
Retorna a Familia do tipo de arquivo, ex.: M4A retorna: MPEG-4 Formato Arquivo de Áudio
Winamp 5.5+ ou Superior.
Retorna o Codificador, ex.: LAME 3.97
Winamp 5.3+ ou Superior.
International Standard Recording Code, ou ISO 3901 (Info)
Winamp 5.3+ ou Superior.
Retorna o campo Ganho da Faixa (ex. -3.16 dB), se existir.
Winamp 5.3+ ou Superior.
Retorna o campo Ganho do Álbum, se existir.
Winamp 5.3+ ou Superior.
Retorna o pico do Ganho da Faixa, se existir.
Winamp 5.3+ ou superior.
Retorna o pico do Ganho do Álbum, se existir.
Winamp 5.3+ ou Superior.
Retorna o valor do Ganho de Volume, se existir.
Winamp 5.3+ ou Superior.
Notas: Atenção aos espaços após virgulas. $if(%title%, Tem Um Título,
Não Tem Um Título) irá exibir
“ Tem Um Título” (com espaço
no início)
e não “Tem Um Título”.
A forma correta é $if(%title%,Tem Um Título,Não Tem Um Título).
Parâmetros: (a, then,
else)
Retorna: Se a contém pelo menos um campo não-vazio válido, then é avaliado e retornado, caso contrário passa ao parâmetro else. Observe que $if(A,A,B) é equivalente a $if2(A,B)
Exemplo: $if(%artist%,Tem uma tag de artista,Não tem uma tag de artista)
Parâmetros: (a, else)
Retorna:
Se a contém um campo não-vazio válido, a é avaliado e retornado, caso contrário passa ao parâmetro else.
Exemplo:$if2(%album%,sem álbum)
Parâmetros: (a1, ..., aN,
else)
Retorna: Se algum valor de a1... aN
contém um campo não-vazio válido, o valor é avaliado e retornado, caso contrário é usado o parâmetro else.
Exemplo:$if3(%artist%,%filename%,%album%,sem campo)
Parâmetros: (a, b1, c1, ..., bN, cN,
else)
Retorna: cN ou else. Função da seleção do usuário (switch/case), que determina que o parâmetro bN e a são iguais e retornam o parâmetro cN correspondente. Se nenhum corresponde ele retorna o parâmetro final else.
Exemplo:$decode($fileext(%filename%),MP3,MPEG-1 Layer 3,MP4,MPEG-4 Container,Outro)
Winamp 5.2 ou Superior.
Parâmetros: (x1, x2, then,
else)
Retorna: Compara os números inteiros x1 e x2, se x1 é maior que x2, then é avaliado e seu valor retornado. Caso contrário a parte com else é avaliada e seu valor retornado.
Exemplo: $ifgreater(%rating%,2,Música melhor avaliada,Não é a música melhor avaliada)
Winamp 5.2 ou Superior.
Parâmetro: (a1, x1, then,
else)
Retorna: Compara se o tamanho da sequência a1 é tão grande quanto os caracteres de x1, se a1 é compatível, a parte de then é avaliada e seu valor retornado, caso contrário a parte com else é avaliado e retornado.
Exemplo: $iflonger(%title%,15,Um título longo,Um título curto)
Winamp 5.2 ou Superior.
Parâmetros: (A, B, then,
else)
Retorna: Se A = B processa then senão processa else
Exemplo: $IfStrEqual2(%year%,2007,Novo!:,Velho:)
Exemplo: $IfStrEqual2(%type%,1,'(Vídeo)','(Áudio)')
Winamp 5.2 ou Superior.
Parâmetros: (A, B,
then)
Retorna: Se A = B processa then senão não faz nada
Examplo: $IfStrEqual(%year%,2007,Novo!:) Exibirá “Novo!” se a mídia foi lançada em 2007.
Winamp 5.2 ou Superior.
– Removido –
Parâmetros: (%a%, %b%) – Irá checar se os campos estão preenchidos.
Retorna: 1 se os campos %a% e %b%
estão preenchidos. Se não estiver preenchido será uma sequência vazia. (?????)
Exemplo:$if($and(%artist%,%title%),Tem os campos artista e título,Um campo está faltando)
Winamp 5.2 ou Superior.
Parâmetros: (x1, x2)
Retorna: O resto da divisão de x1 por x2
Exemplo: $mod(21,8) retorna “5”.
Winamp 5.2 ou Superior.
Parâmetros: (x1, x2)
Retorna:
x1 / x2. Resultado da divisão de x1 por x2
Exemplo: $div(60,10)
Winamp 5.2 ou Superior.
Parâmetros: (x1,x2,...,xn) - Lista de números para multiplicar
Retorna: x1 * x2 * ... * xn. A multiplicação dos números informados
Exemplo: $mul(7,8,3,4)
Winamp 5.2 ou Superior.
Parâmetros: (x1, x2,
x3)
Retorna: x1 * x2 / 3. x1 multiplicado por x2, dividido por x3. O valor é arredondado para o inteiro mais próximo.
Exemplo: $muldiv(10,6,3) retorna “20”.
Winamp 5.2 ou Superior.
Parâmetros: (x1,x2,...,xn) - Lista de números para subtrair
Retorna: x1 - x2 - ... - xn. O resultado de x2...xn
subtraído de x1.
Exemplo: $sub(25,1,3,2,3)
Winamp 5.2 ou Superior.
Parâmetros: (x1,x2,...,xn) - Lista de números para somar
Retorna: x1 + x2 +...+ xn. A soma de todos os números informados
Exemplo:$add(2,3,%playcount%,%rating%)
Winamp 5.2 ou Superior.
Parâmetros: (x1, x2) - Comparar dois números
Retorna: 1 se x1 é maior que x2, caso contrário retorna nada. Idêntico quando usar $ifgreater()
Exemplo: $greater(3,2) – observe que não aparenta funcionar dentro de uma função $if().
Winamp 5.2 ou Superior.
Parâmetros: (x1,...,xn) - Compara uma lista de números
Retorna: O maior número dentro os argumentos informados
Exemplo: $max(7,8,3,4)
Winamp 5.2 ou Superior.
Parâmetros: (x1,...,xn) - Compara uma lista de números
Retorna: O menor número dentro dos argumentos informados
Exemplo: $min(7,8,3,4)
Winamp 5.2 ou Superior.
Parâmetros: (a1)
Retorna: Converte a1 para minúsculas
Exemplo: $lower(%title%)
Parâmetros: (a1)
Retorna: Converte a1 para maiúsculas
Exemplo: $upper(%title%)
Parâmetros: (a1, a2,
a3)
Retorna: a1 com ocorrências de a2 será substituído por a3
Exemplo:$replace(dum,u,o) escreverá “dom”.
Winamp 5.2 ou Superior.
Parâmetros: (a1, x1)
Retorna: O primeiro caractere (x1) de a1
Exemplo:$left(%title%)
Winamp 5.2 ou Superior.
Parâmetros: (a1, x1)
Retorna: O último caractere (x1) de a1
Exemplo:$right(%title%)
Winamp 5.2 ou Superior.
Parâmetros: (a1)
Retorna: A quantidade de caracteres em a1
Exemplo:$len(%artist%)
Winamp 5.2 ou Superior.
Parâmetros: TODO: (a1,
a2)
Retorna: TODO:a1
Exemplo: TODO: $substr()
Winamp 5.2 ou Superior.
Parâmetros: (a1, a2)
Retorna: Índice da primeira ocorrência da sequência a2 dentro a1
Exemplo: $strstr(aacbbabb,ab) retorna “6”.
Winamp 5.2 ou Superior.
Parâmetros: (a1, a2)
Retorna: Índice da última ocorrência do caráter de a2 dentro de a1
Exemplo: $strrchr(aacbbabb,a) retorna “6”.
Winamp 5.2 ou Superior.
Parâmetros: (a1, a2)
Retorna: Índice da primeira ocorrência do caráter de a2 dentro de a1
Exemplo: $strlchr(aacbbabb,a) retorna “1”.
Winamp 5.2 ou Superior.
Parâmetros: (a1, a2)
Retorna:
Índice da primeira ocorrência do caráter de a2 dentro de a1
Exemplo: $strchr(aacbbabb,a) retorna “1” (é o mesmo que $strlchr() ??).
Winamp 5.2 ou Superior.
Parâmetros: (a1, a2)
Retorna: a1 ou a2 baseado em qual das duas tem o menor tamanho.
Exemplo: $shortest(%album%,%folder%)
Parâmetros: (a1, a2)
Retorna:a1 ou a2 baseado em qual das duas tem o maior tamanho.
Exemplo: $longest(%album%,%folder%)
Parâmetros: (a1, x1)
Retorna: a1 abreviado.
Exemplos: $abbr(%album%) converte o nome do álbum como em “Final Fantasy VI” passa a ser “FFVI”.
$abbr(Formatação Avançada de Título,10) passa a ser “FAT”.
$abbr(%album%,10) escreve um nome de álbum abreviado somente se este for maior que 10 caracteres.
x1 é opcional. Se definido a1 só será abreviado quando seu tamanho exceder ao valor de x1.
Parâmetros: (a1, x2)
Retorna: a1 será preenchido com espaços ou cortado, resultando numa sequência com a quantidade de caracteres de x2
Exemplo: $padcut(%artist%,15)
Parâmetros: (a1, x2)
Retorna: a1, cortará após o número de caracteres do parâmetro x2.
Exemplo: $cut(%comment%,15) escreve os 15 primeiros caracteres do campo de comentários e ignora o resto.
Parâmetros: (string, num,
padstr)
Retorna: sequência preenchida pelo menos com caracteres numéricos, com espaços por padrão, ou especificar um caractere (ou repetindo
sequência) como padstr.
Exemplo:$pad(%artist%,40), ou $pad(%artist%,40,.) para preencher com períodos.
Parâmetros: (string, num,
padstr)
Retorna: sequência preenchida pelo menos com caracteres numéricos à esquerda, com espaços por padrão, ou especificar um caractere (ou repetindo
sequência) como padstr.
Exemplo:$lpad(%tracknumber%,3), ou $lpad(%tracknumber%,3,0) para preencher com zeros na frente.
Apenas Winamp 5.2+ ou superior.
Parâmetros: (a1)
Retorna:a1 sem espaços à esquerda ou à direita
Exemplo:$trim(%artist%)
Apenas Winamp 5.2+ ou superior.
Parâmetros: (a1, x1)
Retorna:a1 repetido x1 vezes.
Exemplo:$repeat(*,%rating%)
($fill() função executada no Winamp 5.2 e foi removida após 5.21.)
Parâmetros: (a1)
Retorna: letra
minúscula de a1, com a primeira letra de cada palavra em maiúscula
Exemplo: $caps(%artist%)
Parâmetros: (a1)
Retorna:a1, com a primeira letra de cada palavra em maiúscula
Exemplo: $caps2(%artist%)
Parâmetros: (a1)
Retorna: extensão do arquivo de a1
Exemplo:$fileext(%filename%)
Parâmetros: (a1)
Retorna:
nome do arquivo de a1 (ou seja, com o caminho da pasta)
Exemplo: $filepart(%filename%)
Parâmetros: (a1)
Retorna:
nome do arquivo de a1 (ou seja, sem o caminho da pasta)
Exemplo: $filename(%filename%)
Parâmetros: (a1, x1)
Retorna:
nome do diretório de a1, depois de passar por x1
níveis
Exemplo: $directory(%filename%,2)
O
exemplo acima terá saída “Música” se o caminho completo do arquivo é
“C:\Músicas\Ludov - O Paraiso [EP]\Andar de Bicicleta.mp3”. x1 é opcional, padrão é 1.
Winamp 5.2+ ou Superior.
Parâmetros: (a, token, which)
Retorna: Dividindo o disco e/ou a sequência de faixa, ex. para mostrar "1" ao invés de "1/11"
Exemplo: [$num(%track%,2)$IfStrNotEqual($split(%track%,/,1),,/$num($split(%track%,/,1),2))]
Winamp 5.5+ ou Superior.
Parâmetros: (a1)
Retorna: extensão
do arquivo de a1
Exemplo: $ext(%filename%)
Winamp 5.2+ ou Superior.
Parâmetros: (x1, x2)
Retorna:x1 formatado como hexidecimal para número de dígitos x2, preenchidos à
com zeros.
Exemplo: $hex(%tracknumber%,4)
Winamp 5.2+ ou Superior.
Parâmetros: (x1, x2)
Retorna:x1 zero preenchido à esquerda para formar x2 dígitos.
Exemplo: $dec(%tracknumber%,5)
Winamp 5.2+ ou Superior.
Parâmetros: (x1, x2)
Retorna:x1 zero preenchido à esquerda para forma x2 dígitos.
Exemplo: $num(%tracknumber%,5)
Winamp 5.2+ ou Superior.
Parâmetros: Qualquer número de
parâmetros
Retorna: Nada.
Exemplo:$null()
Não faz absolutamente nada. É útil principalmente em locais onde
um parâmetro é necessário, mas você quer uma sequência vazia.
Winamp 5.2+ ou Superior.
Parâmetros: (a1, x1)
Retorna:
O primeiro x1 níveis de a1
Exemplo:$PathLPart(%filename%,2)
O exemplo acima terá saída “C:\Músicas” se
o caminho completo do arquivo é “C:\Músicas\Ludov - Eras Glaciais [EP]\02 - Contêiner.mp3”.
Winamp 5.3+ ou Superior.
Parâmetros: (a1, x1)
Retorna:
O último x1 níveis de a1
Exemplo:$PathRPart(%filename%,2)
O exemplo acima terá saída “Ludov - Eras Glaciais [EP]\02 - Contêiner.mp3” se o caminho completo do arquivo é
“C:\Músicas\Ludov - Eras Glaciais [EP]\02 - Contêiner.mp3”.
Winamp 5.3+ ou Superior.
Parâmetros: (a1, x1)
Retorna:a1 menos o primeiro x1 níveis de a1
Exemplo:$PathLTrim(%filename%,1)
O exemplo acima terá saída “Músicas\Ludov - Eras Glaciais [EP]\02 - Contêiner.mp3” se o caminho completo do arquivo é
“C:\Músicas\Ludov - Eras Glaciais [EP]\02 - Contêiner.mp3”.
Winamp 5.3+ ou Superior.
Parâmetros: (a1, x1)
Retorna:a1 menos o último x1 níveis de a1
Exemplo:$PathRTrim(%filename%,1)
O exemplo acima terá saída
“C:\Músicas\Ludov - Eras Glaciais [EP]” se o caminho completo do arquivo é
“C:\Músicas\Ludov - Eras Glaciais [EP]\02 - Contêiner.mp3”.
Winamp 5.3+ ou Superior.
Parâmetros: (nome,
valor)
Retorna: Armazena valor para a variável
nomeada em nome. Pode ser recuperado mais tarde usando $get(nome). Use
$put() para armazenar o valor e também devolver com uma
função.
Exemplo: $puts(artist_title,%artist% -
%title%)
Winamp 5.2+ ou Superior.
Parâmetros: (nome,
valor)
Retorna: valor. Armazena valor
na variável nomeada nome. Pode ser recuperado mais tarde usando
$get(nome). Use $puts() para armazenar um valor sem retornar
ele.
Exemplo: $put(artist_title,%artist% - %title%)
Winamp 5.2+ ou Superior.
Parâmetros: (nome)
Retorna:valor da variável de nome previamente definida pela função $put() ou $puts()
Exemplo: $get(artist_title)
Winamp 5.2+ ou Superior.
Parâmetros: TODO: (a1,
a2)
Retorna: TODO:a1
Exemplo: TODO: $systime_second()
Winamp 5.2+ ou Superior.
Parâmetros: TODO: (a1,
a2)
Retorna: TODO:a1
Exemplo: TODO: $systime_minute()
Winamp 5.2+ ou Superior.
Parâmetros: TODO: (a1,
a2)
Retorna: TODO:a1
Exemplo: TODO: $systime_hour()
Winamp 5.2+ ou Superior.
Parâmetros: TODO: (a1,
a2)
Retorna: TODO:a1
Exemplo: TODO: $systime_day()
Winamp 5.2+ ou Superior.
Parâmetros: TODO: (a1,
a2)
Retorna: TODO:a1
Exemplo: TODO: $systime_month()
Winamp 5.2+ ou Superior.
Parâmetros: TODO: (a1,
a2)
Retorna: TODO:a1
Exemplo: TODO: $systime_year()
Winamp 5.2+ ou Superior.
[ .... ] - exibe o contéudo do cochete somente se ao menos uma das referências dentro dos campos for encontrada, ex.[%artist% - ] irá mostrar: "Artista - " somente se a tag %artist% é preenchida, caso contrário não irá mostrar nada (incluindo os hífens e espaços).
Sintaxe: [%artist% - ][%album% - ][$num(%track%,2) - ]$if2(%title%,$filepart(%filename%))
Exemplo: Ludov - Minha Economia [EP] - 04 - Toda Essa Confusão
Sintaxe: [$if2(%albumartist%,%artist%) - ][%album% - ][$num(%track%,2) - ]
$IfStrNotEqual(%artist%,$if2(%albumartist%,%artist%),[%artist% - ])
[$if2(%title%,$filepart(%filename%))][$if($fileext(%filename%),' [ ',)]
[%year% | ][$fileext(%filename%) ][$if(%bitrate%, '|' ,)][%bitrate% 'kbps' ]
[$if($fileext(%filename%),']',)][ $repeat(*,%rating%) ]
Retorna: AlbumArtist - Album - ## - Artist - Title [ Year | Ext | Bitrate ] StarRating
se AlbumArtist é diferente de TrackArtist, caso contrário exibe formato padrão.
Exemplo: Various - Arcana - 01 - Tripswitch - Calabi Yau [ 2006 | mp3 | 205 kbps ] *****