Sobre o projeto
Freyr é uma ferramenta de linha de comando para baixar faixas musicais de serviços de streaming. Dada uma URL ou URI curta do Spotify, Apple Music ou Deezer, ela extrai metadados da faixa (título, artista, álbum, número da faixa/disco, data de lançamento, ISRC, gravadora, direitos autorais, capa e mais), depois consulta fontes de áudio como o YouTube Music para encontrar o áudio correspondente, baixa o arquivo bruto, codifica em Apple AAC (.m4a) com bitrate configurável (96–320kbps, padrão 320k), incorpora metadados e capa do álbum, e organiza a saída em uma estrutura de diretórios ARTIST/ALBUM/TRACK.
Os tipos de consulta suportados incluem faixas, álbuns, artistas e playlists. Downloads em lote são possíveis passando múltiplas consultas como argumentos ou via arquivo de entrada (-i/--input), onde cada linha é uma consulta e # marca comentários. Um subcomando urify converte entre URLs de serviços e URIs curtas compatíveis com freyr.
Opções notáveis incluem seleção de bitrate, downloads de chunks concorrentes (-n/--chunks), contagens de retry, diretório de saída personalizado, verificação de outros diretórios para faixas existentes (-D), nomenclatura e tamanho da capa ou desativação, ordenação de preferência de fontes (youtube, yt_music, com ! para excluir), filtros de metadados, ajuste de concorrência por estágio (queries, tracks, trackStage, downloader, encoder, embedder), flag de reprodução gapless, forçar sobrescrita, geração de playlist (m3u8) com opções para diretório, anexação, escape e prefixo de namespace, código de país da storefront, desativação da organização em árvore, controle do diretório de cache, tamanho do cache em memória, timeout de rede, alternâncias de autenticação e abertura do navegador, estilos de barra de progresso, e um caminho explícito para o binário AtomicParsley.
A instalação está disponível via npm (npm install -g freyr) ou Yarn, a partir do código-fonte, ou através de imagens Docker oficiais (freyrcli/freyrjs) com um comando docker run documentado e exemplo de alias. Os requisitos incluem Python >= 3.2, Node.js >= 16 e AtomicParsley >= 20230114. O README observa que o YouTube Music deve estar disponível na região do usuário porque o áudio bruto é obtido dele. O projeto é licenciado e inclui verificações de CI, classificação CodeFactor, badges de download npm e Docker, e links de doação.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.