Apple Lossless (.alac)

Apple 標準

Apple Lossless Audio Codec(ALAC)是由 Apple 開發的無損音訊壓縮格式。它會重建編碼後的 PCM 取樣,檔案大小的節省幅度會隨音訊與編碼設定而異。

將 ALAC 轉換為 FLAC

免費的瀏覽器端 ALAC 轉 FLAC 轉換器。在您的裝置上即時轉換檔案。

檢查與中繼資料

作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 ALAC 檔案:

在這裡選擇或拖放檔案

私密 - 檔案絕不會離開您的裝置

或貼上 Ctrl+V
零網路傳輸隱私保證: 0 位元組上傳至外部伺服器。所有處理皆在本機瀏覽器沙箱中進行。

位元組層級標頭簽章(檔案簽章)

作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 ALAC 檔案:

十六進位簽章(偏移量 0):

?? ?? ?? ?? 66 74 79 70

ASCII 表示法: ????ftyp

標準化: Apple Open Source / ISO 14496-12

技術規格

容器架構ISO 基礎媒體檔案格式(MPEG-4 Part 14)容器,帶有「alac」atom
壓縮調適性線性預測編碼(LPC)與 Rice-Golomb 熵編碼
位元組序大端序容器 atom;影格酬載位元封包
色彩空間不適用(無損音訊串流)
色版與結構最多 8 個音訊聲道(立體聲、5.1 環繞聲與 7.1 環繞聲)
最大尺寸取樣率從 44.1 kHz 到 192 kHz,解析度為 16、24 或 32 位元
透明度100% 數學上無損地重建未壓縮的 PCM 資料
串流與漸進式在檔案前端放置原生 QuickTime「moov」atom,可支援即時位元組範圍串流

技術比較矩陣:ALAC 對比競爭格式

技術屬性ALAC (目前)FLACWAVAPE
壓縮品質100% 數學無損100% 數學無損未壓縮無損100% 數學無損
Apple 生態系支援部分 Apple 裝置與軟體原生支援;播放取決於裝置與編解碼器支援需要第三方播放器或 QuickLook 外掛程式原生未壓縮不支援,除非使用第三方工具
解碼複雜度極輕量;有利於硬體與電池續航力非常輕量且快速零 CPU 解壓縮負擔高;CPU 需求高
容器包裝格式MPEG-4 Part 14 容器格式(.m4a)原生 Ogg / FLAC 位元串流(.flac)RIFF 容器格式(.wav)自訂 Monkey's Audio 容器格式(.ape)

常見損壞模式與十六進位修復指南

音訊檔案播放幾秒鐘後便突然終止,或播放器顯示 0:00 長度。

根本原因: 由於下載不完整,或音訊錄製程式在關閉檔案前當機,導致遺失或截斷了 'moov' atom。

修復: 使用 untrunc 或 MP4Box 從使用相同設定製作的同系列錄音中,復原並移植一個有效的 moov atom。

安全性分析與解析器攻擊向量

ALAC 解碼器會解析複雜的 MPEG-4 atom 樹狀結構與調適性 LPC 預測係數;若未檢查邊界,可能導致記憶體損毀。

已知攻擊向量

  • 在接收超過 32 的係數階數時,LPC 預測器階數解析發生緩衝區溢位。
  • 在舊版 QuickTime 元件中進行多聲道降混時發生超出範圍的影格寫入(CVE-2011-3258)。
  • Atom 大小整數溢位,導致解碼期間配置的堆積緩衝區不足。

防禦最佳實務: 強制執行嚴格的 atom 大小限制,並在配置之前針對最大允許位元深度驗證預測器係數。

歷史起源與里程碑

2021Apple Music 為其目錄提供無損 ALAC,支援的解析度因曲目與播放設定而異。
2011Apple 以 Apache 2.0 授權條款開源釋出 ALAC 參考編碼器與解碼器。
2004與 QuickTime 6.5.1 及 iTunes 4.5 同步推出,用於無損擷取與播放。

主要優勢與優點

  • 無損解碼會重建編碼的來源取樣;它無法還原來源中不存在的資訊。
  • Apple 平台支援 ALAC 播放,可用性取決於裝置、軟體、應用程式與播放路徑。
  • 完整支援內嵌的高解析度封面、章節標記與豐富的 iTunes 風格中繼資料。

技術限制與缺點

  • 非 Apple 硬體對 ALAC 的支援度不如廣泛支援的開放式 FLAC 格式常見。
  • 由於保守的 Rice-Golomb 編碼器調校,通常壓縮後比 FLAC 大 2% 到 5%。
  • 與有損的 AAC 共用相同的 .m4a 副檔名,容易造成使用者對檔案壓縮類型的混淆。

有趣的技術冷知識

  • Apple AirPlay 會透過以 16 位元 / 44.1 kHz ALAC 編碼的本地 Wi-Fi 串流來傳輸即時音訊。
  • 在 Apple 於 2011 年將 ALAC 開源之前,反向工程師 David Hammerton 透過研究 iTunes 反組譯碼,寫出了第一個開放解碼器。
  • MP4 檔案內部的 ALAC 串流是由 'stsd' 取樣描述 atom 內部的四字元代碼 'alac' 來識別。

常見技術問題

我要怎麼知道我的 .m4a 檔案是有損 AAC 還是無損 ALAC?

由於 Apple 對兩者都使用 .m4a,請在播放器或轉換器中檢查該檔案。ALAC 檔案的位元率通常在 700 到 1100 kbps 之間,而 AAC 檔案的範圍則是 128 到 320 kbps。

我可以將 FLAC 轉換為 ALAC 而不遺失任何音訊品質嗎?

可以。這兩種格式都是數學無損的。從 FLAC 轉換為 ALAC 是位元完全相同的,且不會產生任何世代損失。

為什麼 Apple 要建立 ALAC 而不是採用 FLAC?

在 2004 年,Apple 需要一種能直接整合其 QuickTime 與 iPod 硬體架構的音訊編解碼器,以確保 MP4 容器內部能順暢地進行 DRM 與中繼資料管理。