題:
從FLAC到Apple無損(ALAC)的免費批量轉換?
sorin
2011-04-07 11:43:55 UTC
view on stackexchange narkive permalink

我正在尋找一個免費工具,該工具將允許我將大量FLAC文件轉換為ALAC(Apple無損音頻編解碼器),同時保留元信息,並可以選擇從添加新信息CDDB或類似來源。

此刻,我對Windows實用程序更感興趣,但是您可以隨意推薦OSX。請針對不同的工具使用不同的答案。

八 答案:
boehj
2011-04-08 07:01:25 UTC
view on stackexchange narkive permalink

如果您對使用Terminal感到滿意,則可以嘗試以下命令循環:

 ,用於* .flac中的f;做ffmpeg -i“ $ f” -vf“ crop =((in_w / 2)* 2):((in_h / 2)* 2)” -c:alac“ $ {f%.flac} .m4a”;完成 

這將簡單地循環瀏覽當前目錄中的所有.flac文件,並將它們全部轉換為.alac,直到全部完成。我可以確認這在ffmpeg在存儲庫中免費可用的Linux中有效。對於OSX,您可以通過 homebrew安裝ffmpeg,在 ffmpeg網站上也列出了Windows,OSX和Linux的靜態版本。

此會保留元數據,但是M4A存儲封面圖像的方式與FLAC(以及大多數其他音頻格式)的處理方式根本不同。不幸的是,FFmpeg當前無法處理此問題。幸運的是,您可以在對音頻進行代碼轉換的同一步驟中將封面作為jpeg圖像提取,然後使用另一個命令行工具(AtomicParsley)將封面合併到M4A中。

  ffmpeg -i input.flac -vf“ crop =((in_w / 2)* 2):((in_h / 2)* 2)” -c:alac output.m4a cover.jpgAtomicParsley output.m4a --artwork cover.jpg --overWrite  

同樣可以將其放入for循環中; && 表示僅在上一條命令成功後才執行下一條命令。

  * *做ffmpeg -i“ $ f” -vf“ crop =((in_w / 2)* 2):((in_h / 2)* 2)” -c:alac“ $ {f /%flac / m4a}”“” $ {f /%flac / jpg}“ && \ AtomicParsley” $ {f /%flac / m4a}“-藝術品” $ {f /%flac / jpg}“ --overWrite && \ rm” $ {f /% flac / jpg}”;完成 
曾經有用的`ffmpeg`。
在Windows上,對(* .flac)中的%f執行以下操作:ffmpeg.exe -i“%f” -acodec alac“%〜nf.m4a”
可以使用`brew install ffmpeg`確認對我有用(OS X 10.8.2)。它安裝了依賴項`texi2html`,`yasm`,`x264`,`faac`,`lame`和`xvid`。全部安裝花費了大約10分鐘。
我只會添加-vn(如果.flac在流中有mjpeg,則不處理video0有時會很有用。希望Apple iTunes可以為您獲取專輯插圖,或者您可以從其他來源將其合併。
David Budiac
2011-04-07 19:27:35 UTC
view on stackexchange narkive permalink

X無損解碼器(XLD)是適用於Mac的出色的完美無損翻錄和批處理轉換工具。

我聽說過使用 Windows上的精確音頻複製(EAC),儘管我不確定它是否支持轉換。

XLD的忠實粉絲。多年來,我一直在使用它將Phish音樂會移入我的iTunes資料庫。
是否有可能通過xld從flac直接轉換為alac?似乎您必須先通過wav / aiff
沒關係...它帶有GUI前端,實際上可以直接轉碼為ALAC m4a文件
Kariem
2012-12-13 15:39:09 UTC
view on stackexchange narkive permalink

如果要轉換文件夾和子文件夾中的所有flac文件,則將/ r遞歸地添加到for循環命令中,如下所示:

  for / r %% a in(“ .flac”)做ffmpeg -i“ %% a” -acodec alac“ %% a.m4a” -map_metadata input.flac:output.m4a  

我唯一的問題是文件名來了就像

  output.flac.m4a  

我不知道如何在最後修復它,但是據我所知t用這種方式刪除要命名的文件。

編輯:將輸出代碼替換為

 “ %%〜na.m4a”  

使完整代碼看起來像(/.flac)中/ r %% a的

 一樣ffmpeg -i“ %% a” -acodec alac“ %%〜na .m4a” -map_metadata input.flac:output.m4a  

將使文件名看起來像

  output.m4a  

BUT會將轉換後的副本保存到運行命令的文件夾的ROOT中。為了澄清flac文件位於

  C:\ music \ foo \ bar.flac  

alac文件將保存到

  C:\ music \ bar.m4a  
本示例進行轉換,但將輸出保存在您從其開始的文件夾中,而不是原始文件所在的文件夾中。您可能還想將最終代碼作為第一個示例。您可以先講清楚要點,然後再根據需要進行解釋。
Ilya
2012-11-07 04:50:59 UTC
view on stackexchange narkive permalink

這是 boehj的答案的Windows變體:

 對於(* .flac)中的%f,請執行ffmpeg.exe -i“%f” -acodec alac “%〜nf.m4a”  
無法評論Ilya的帖子,因此我不得不留下另一個答案... Powershell而不是Windows的cmd的變體是:`Get-ChildItem。過濾器* .flac | ForEach-Object {ffmpeg -i“ $ _” -acodec alac“ $($ _。basename).m4a”}`
Rory Alsop
2011-04-07 15:38:12 UTC
view on stackexchange narkive permalink

適用於Windows和OSX的應用程序非常廣泛-

您可以嘗試音頻代碼轉換器

Max >

或其他範圍( google會找到很多)

或者您可以將FLAC轉換為WAV,然後讓iTunes完成其餘的操作

Friend Of George
2011-04-07 18:02:38 UTC
view on stackexchange narkive permalink

XRECODE在批量轉換方面做得很好。我很確定這只是ffmpeg的前端。在轉換過程中,它會保留您的標籤和嵌入的圖像(對於大多數格式,請參閱此答案以獲取例外)。

當前版本具有未到期的全功能試用版(帶有nag屏幕),但是您可以免費下載先前版本

我沒有嘗試過轉換為ALAC,但是在FLAC,MP3,WMA和OGG轉換方面做得很好。

Sun W Kim
2012-11-24 12:10:52 UTC
view on stackexchange narkive permalink

我去了FFmpeg網站,從2012年11月20日下載最新的 ffmpeg Win32

您可能需要7zip解壓縮EXE並將其放置在可識別的路徑中。

仍然無法弄清楚如何遞歸運行命令。我嘗試使用舊的DOS命令,稱為 sweep forfiles -s -c ,但都無法正常工作。

我最終生成了一個列表使用此DOS命令對flac文件及其路徑進行分析:

  m:\ flac> dir * .flac / b / s > flac_convert.bat  

我使用了 NotePad ++(免費軟件)中的宏功能來更改行

,其內容來自:

  M:\ flac \ Art Of Noise \ Moments In Love .flac  

至:

  ffmpeg -i“ M:\ flac \ Art Of Noise \ Moments In Love.flac” -acodec alac“ M: \ flac \ Art Of Noise \ Moments in Love.m4a“  

一旦我使用宏更改了每一行,我就保存並運行了flac_convert.bat

解決方案不是很優雅,但是只能使用免費工具才能工作。

Sun
2014-11-19 23:29:59 UTC
view on stackexchange narkive permalink

對於Windows DOS批處理用戶,這將轉換當前目錄中的所有FLAC並遞歸以將輸出保存在FLAC所在的目錄中。我將 echo 放在命令行中,因此您可以在實際開始處理之前測試輸出。如果您對結果感到滿意,請刪除 echo

用於/ r“。” (* .flac)中的%x會回顯ffmpeg -i“%〜fx” -acodec alac“%〜dpnx.m4a”

  • 用於/ r 將遍歷文件(遞歸子文件夾)
  • 是當前路徑,但是您可以指定特定的內容,例如 c:\ flac
  • %x 是您的可替換參數。在批處理文件中,再添加一個%,所以它就是%% x。
  • *。flac 將僅在當前目錄和子目錄中查找擴展名為flac的文件
  • do 是將要執行的實際命令之後的內容
  • %〜fx 是將擴展%的參數擴展x 變量到完全限定的路徑名(例如 c:\ flac \ song.flac
  • %〜dpnx 是另一個參數擴展名組合為1)僅顯示驅動器號,僅顯示帶有尾部反斜杠的路徑,最後顯示不帶文件擴展名的文件名。在我們的示例中, c:\ flac \ song.flac 現在變為 c:\ flac \ song
  • 我們最終添加了 .m4a 手動指示我們想要的輸出擴展名。
  • 最終構造的命令將如下所示: ffmpeg -i“ c:\ flac \ song.flac” -acodec alac“ c:\ flac \ song.m4a“

警告,因為文件路徑限制為255個字符,因此如果目錄結構不對您的文件進行處理很深。



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 2.0許可。
Loading...