# Musepack

Musepack ou MPC é um formato de compressão de áudio multiplataforma de código aberto com perda de dados (lossy), especificamente otimizado para compressão transparente (isto é, em alta qualidade) de áudio estéreo a taxas de bits em torno de 160 a 180Kbps.
O desenvolvimento do Musepack foi iniciado pelo alemão Andree Buschmann em 1997, e alguns anos depois, foi assumido por seu compatriota Frank Klemm, (ex-membro da equipe de desenvolvimento do codificador LAME, para MP3), que, após ter feito enorme progresso com o modelo psicoacústico do MPC, desligou-se do projeto em 2004, passando-o, com a ajuda de Buschmann, para o MDT -Musepack Development Team (equipe de desenvolvimento do Musepack). Os codificadores e decodificadores para Musepack estão disponíveis na página oficial tanto para o sistema operacional Windows como Linux e Mac OS X, bem como plugins para diversos tocadores de mídia em software para os referidos sistemas operacionais.

## Detalhes técnicos

O MPC foi desenvolvido usando-se como ponto de partida, o codec MP2 - mas com a adição de diversas características não inclusas neste último, tais como:
* codificação em subband seletiva Mid e Stereo (como no AAC)
* codificação de Huffman (como no MP3 ou, de modo mais eficaz, no AAC). Desde a versão SV8, o fluxo de dados é compresso utilizando-se uma tabela canônica de Huffmann otimizada para codificação de arquivos cerca de 2% menores e decodificação mais rápida.
* técnicas de substituição de ruídos (como no ATSC e MP4)
* taxa variável de bits (VBR) pura, entre 0 and 1300 kbit/s (quando necessário). Destaca-se ainda o fato do MPC não oferecer codificação em CBR - taxa constante de bits, como no MP3, WMA e tantos outros codecs lossy, devido às suas inerentes otimizações contemplarem o uso exclusivo de VBR pura.
O modelo psicoacústico do MPC é baseado naquele do MPEG ISO modelo 2, mas é estendido pela CVD - clear voice detection (detecção clara de voz). O algoritmo de quantização do codificador MPC realiza análise espectral do ruído, chamada Adaptative Noise Shaping com o intuito de superar a baixa resolução de frequência das bandas do filtro polifásico.
O MPC utiliza o container de tags de metadados APEv2 tag - este criado pelo desenvolvedor do compressor de áudio lossless (sem perdas)Monkey Audio.
É otimizado para a codificação transparente já em seu parâmetro padrão "--standard" (175-185 Kbits/s). Pouquíssimas otimizações foram feitas para taxas mais baixas (como 128 Kbits/s). Mesmo assim, vários testes de audição foram executados nos quais Musepack teve um desempenho relativamente bom tanto em taxas mais baixas ou mais altas.

## Características

* Formato de container independente. Um MPC SV8 já é um container para o fluxo de dados do Musepack. Codificação de fluxo raw também é possível.
* Fluxo envelopado permite muxing em containers tanto de áudio como de vídeo (ex. MKA/MKV, NUT).
* Busca (seeking) com amostragem precisa e rápida, independente do tamanho do arquivo.
* Corte com amostragem precisa. Um utilitário incluído no download (mpccut) possibilita corte sem perdas.
* Capítulos. Editor de capítulos (mpcchap) também incluído, para inclusão de capítulos nos arquivos MPC.
* Sem distorção interna.
* Pode ser usado em streaming de áudio.

## Suporte de hardware

A princípio, em meados da década de 2000, todo equipamento no qual pudesse ser instalado o tocador de mídia The Core Pocket Media Player (TCPMP) podia reproduzir MPC. O que incluía equipamento rodando os sistemas operacionais Palm OS, Symbian, Windows, Windows CE e Windows Mobile (Pocket PC). Ainda, qualquer equipamento no qual se possa instalar o firmware Rockbox, incluíndo antigas versões do iPod, pode reproduzir arquivos MPC. A reprodução no player Roku Photobridge HD também é suportada através de um plugin.
Há ainda uma infinidade de apps tocadores de mídia para Android que reproduz Musepack.
Como o Musepack distribui ainda a biblioteca libmpcdec para a decodificação de conteúdo em MPC, diversos plugins foram desenvolvidos utilizando-se dessa biblioteca para suporte ao MPC.