terça-feira, 8 de maio de 2012

DICAS PRECIOSAS DO PRODUTOR FONOGRÁFICO FELIPE DONNA 2012



O Projeto

O projeto FLAC se compõe de:
• o formato de stream
• um container de formato para o stream, também chamado de FLAC (ou FLAC Nativo)
• libFLAC, uma biblioteca de referência de codificadores e decodificadores, e uma interface de metadados
• libFLAC++, um object wrapper para a libFLAC
• flac, um wrapper em linha de comando para utilizar a libFLAC para codificar e decodificar streams em FLAC
• metaflac, um editor de metadados em linha de comando para arquivos .flac e para a aplicação de Replay Gain
• plugins de entrada para vários tocadores de áudio (Winamp, XMMS, foobar2000, musikCube, e muitos mais)
• Com a incorporação à Xiph.org, o container de formato Ogg, adaptável à streaming (também chamado de Ogg FLAC)
"Livre" significa que a especificação do formato de stream pode ser implementada por qualquer pessoa, sem necessidade de autorização expressa (a Xiph.org se reserva o direito de definir a especificação do FLAC e certificar a conformidade aos mesmos), e nem o formato FLAC, nem nenhum método implementado para codificá-lo/decodificá-lo são cobertos por patentes. Isso também significa que a implementação referencial é software livre e os códigos-fonte da libFLAC e da libFLAC++ são disponíveis sob a Licensa BSD da Xiph.org, e os códigos-fonte do flac, metaflac, e também os plugins estão disponíveis sob a GPL.
Em suas metas, o projeto FLAC encoraja seus desenvolvedores a não implementar nenhum tipo de prevenção de cópia[1].
Comparações
O FLAC foi criado para um empacotamento eficiente de dados de áudio, diferente de algoritmos gerais de compressão sem perda, como ZIP e gzip. Enquanto um ZIP pode compactar um arquivo de áudio com qualidade de cd em 10% ou 20%, com FLAC pode-se alcançar taxas de compressão de 30% a 50%.
Codecs com perda de dados podem alcançar taxas de 80% ou mais, descartando dados do stream original. O FLAC utiliza predição linear para converter amostras do áudio em uma série de pequenos números não correlatos (o residual), que são armazenados eficientemente com o uso do algoritmo Golomb-Rice. Ele também utiliza codificação run-length para blocos de amostras idênticas, como passagens silenciosas. As vantagens técnicas do FLAC comparado a outros codecs sem perda residem na sua habilidade de streaming e em um rápido tempo de decodificação, que independe do nível de compressão.
Como qualquer outro codec sem perdas, o formato FLAC é popular entre proprietários de CDs e outras mídias que desejam preservar suas coleções de áudio. Se a mídia original foi perdida ou danificada, uma cópia em FLAC garante que uma duplicata exata do original pode ser recuperada a qualquer instante. Uma restauração exata feita a partir de um arquivos com perda (ex., MP3) dos mesmos dados é impossível. Um arquivo CUE pode opcionalmante ser criado ao copiar-se um CD. Se o CD foi lido e copiado perfeitamente em arquivos FLAC, o arquivo CUE permite posteriormente a gravação de um CD de áudio idêntico ao original, incluindo ordem das faixas, pregaps, e CD-Text. Entretanto, dados adicionais presentes em alguns CDs, como letras e gráficos de CD+G estão além do escopo de um arquivo CUE e da maioria dos softwares de cópia de CDs, portanto, esses dados não serão armazenados.
A Hydrogenaudio Wiki possui uma comparação[2] de codecs sem perda, incluindo FLAC.
Exemplos
Para a melhor compressão, porém mais longo tempo de codificação, este comando pode ser utilizado:
flac—lax -mep -b 8192 -l 32 -r 0,16 input.wav -o output.flac
O arquivo resultante pode não ser reprodutível em players de hardware ou ser passível de streaming, mas ele irá funcionar em todos os decodificadores de software. Para um arquivo totalmente em conformidade, este comando deverá ser utilizado:
flac -mep -b 8192 -l 32 -r 0,8 input.wav -o output.flac
Detalhes técnicos
O FLAC suporta apenas amostras de ponto fixo, não de ponto flutuante. Isso ocorre para eliminar quaisquer erros de arredondamento para que se garanta uma reprodução perfeita em nível de bit. Ele pode trabalhar com qualquer resolução de bits PCM de 4 a 32 bits por amostra, qualquer taxa de amostragem de 1 Hz a 1,048,570 Hz em incrementos de 1 Hz, e qualquer número de canais de 1 a 8. Os canais podem ser agrupados em casos como stereo e surround de 5.1 canais para aproveitar as vantagens de correlações entre os canais para aumentar a compressão. Ele utiliza checksums CRC para identificar frames corrompidos quando usados em um protocolo de streaming, e também tem um hash MD5 completo do áudio PCM puro armazenado em seu cabeçalho de metadados STREAMINFO.
O formato FLAC é implementado como o codificador/decodificador interno da libFLAC, com o principal programa distribuível, flac, sendo o programa de referência da utilização da API libFLAC. A API do codec também está disponível em C++ como libFLAC++.
A implementção refencial do FLAC é compilável em várias plataformas, incluindo a maioria dos sistemas operacionais Unix e Unix-like (incluindo Linux, *BSD, Solaris, e Mac OS X), Windows, BeOS, e OS/2. Há build systems para autoconf/automake, MSVC, Watcom C, e Project Builder.