web-dev-qa-db-fra.com

Convertir sans douleur Flac en Alac sous Windows?

Je me demande si quelqu'un a un flux de travail propre et indolore pour transcoder sans perte de fichiers FLAC à leur équivalent alac? C'est censé être une conversion un peu parfaite, ce qui signifie qu'il ne devrait pas être très difficile, mais ... c'est.

Pourquoi voudrais-je faire ça? (Avant que les os systèmes d'exploitation me mangent en vie) principalement, car une application audio que j'utilise (Serato Scratch Live) ne prend pas en charge la FLAC, et malgré le dérange constant des utilisateurs au cours des cinq dernières années (!), Le plus probablement pas pour une tandis que. Ils ont cependant fait le soutien d'Alac ensemble

En outre, il semblerait que iTunes joue des fichiers FLAC (et correctement les convertis pour utiliser efficacement l'espace sur mon iPod) est assez impossible.

La seule capture est que je voudrais préserver des balises bizarre et décalées de Meta (BPM et clé de la chanson) qui seraient un peu douloureuses à régénérer. Je suis en bas avec quoi que ce soit sur Windows ou Linux

Merci

À M

10
Tom Corelis

Dans Ubuntu, vous pouvez ouvrir un terminal, accéder au répertoire en question et faire la boucle de commande suivante:

for f in *.flac; do ffmpeg -i "$f" -acodec alac "${f%.flac}.m4a"; done

Cela convertira tous les fichiers .flac dans ce répertoire en fichiers .Alac et le fera de manière "un peu parfait".

ffmpeg _ ne vient pas emballé avec Ubuntu, vous devez donc l'installer à partir des repos.

Je ne peux pas dire à coup sûr que cela conserve vos informations de tag BPM.

En outre, il semblerait que iTunes joue des fichiers FLAC (et correctement les convertis pour utiliser efficacement l'espace sur mon iPod) est assez impossible.

Il y a un programme appelé flukeformac pour vous permettre de jouer des fichiers .flac dans iTunes.

En ce qui concerne la conversion pour une utilisation efficace pour iPod, la boucle de commande suivante fera le tour:

for file in *.flac; do $(flac -cd "$file" | lame --preset fast extreme - "${file%.flac}.mp3"); done

Ici, vous voudrez peut-être remplacer l'option --preset fast extreme À une autre option de débit binaire inférieur. Plus d'informations sur lame préréglages peuvent être trouvés ici .

10
boehj

Basé sur BoeHJ Réponse, juste pour Windows à l'aide de PowerShell et ffmpeg:

ls -recurse -include *.flac | %{C:\path_to_ffmpeg\ffmpeg.exe -i $_.FullName -acodec alac ($_.DirectoryName+"\\"+$_.BaseName+'.m4a')}
6
Paulius

Je me suis retrouvé à me trouver des questions similaires à des formats différents, donc j'ai fait https://www.blisshq.com/music-library-management-blog/2017/06/20/matrix-free-Audio-file-converters /

Cette page dit ... foobar20 . Donc cela dépend de ce que vous entendez par "sans douleur" - c'est gratuit comme dans la bière.

1
Dan Gravell

FFMPEG Devrait pouvoir le faire; C'est à vous de trouver les commandes correctes à le faire.

1
Hello71

MediaMonkey peut aussi faire cela, mais il ne conserve que la balise BPM (je ne suis pas au courant de la touche Song, une balise standardisée sur ces formats).

remarque: vous devez acheter le "Pack de codec MediaMeyKey" pour le codage d'Alac.

0
Rusty Monkey

Il existe de multiples façons de convertir FLAC en Alac. Sous Windows, vous pouvez utiliser FOOBAR2000 et le encodeur pack . Sous Windows, Linux et Mac, vous pouvez utiliser Powershell, FLAC et FFMPEG.

$folder = "d:\demo\"

# Convert flac to wav
Get-ChildItem -Recurse "$folder\*.flac" | ForEach-Object {
    & C:\tools\flac.exe -d --force --silent $_.FullName
}

# Convert wav to alac
Get-ChildItem -Recurse "$folder\*.wav" | ForEach-Object {
    $filename = [System.IO.Path]::ChangeExtension($_.FullName, ".m4a")
    & C:\tools\ffmpeg.exe -hide_banner -loglevel panic -i $_.FullName -acodec alac -sample_fmt s16p $fileName
}

# Remove wav and flac file
Get-ChildItem -Recurse "$folder\*.wav" | Remove-Item
Get-ChildItem -Recurse "$folder\*.flac" | Remove-Item

Vérifiez mon article de blog pour plus de détails: Convertir des fichiers de musique de FLAC en Alac

0
meziantou