X Lossless Decoder:
Lossless audio decoder for Mac OS X

English
最終更新日: 2024/3/10

これは何?

X Lossless Decoder(以下XLD)は、様々なロスレス(可逆)圧縮ファイルをデコード/変換/再生可能なMac OS X用のツールです。OSX 10.4以降で動作します。cueシートを用いてデコード時に複数のトラックに分割する事もできます。

ユニバーサルバイナリですので、PPC MacとIntel Mac、そしてApple Silicon Macの全てでネイティブに動作します。

スクリーンショット

特徴

様々なフォーマットに対応

現在XLDがデコード可能なフォーマットは次の通りです。

その他、Libsndfileが対応しているフォーマットは全てデコード可能です。デコードには各々のフロントエンドを利用するのではなく、ライブラリを直接叩いているので、不必要な中間ファイルは生成しません。当然ながら、これらのフォーマットは全てcueシートを用いて分割する事ができます。cueシートが音楽ファイルの中に埋め込まれた、いわゆるembedded/internal cuesheet形式にも対応しています。

変換先のフォーマットはWAV, AIFF, Raw PCMといった基本的な非圧縮フォーマットの他、Ogg Vorbis (aoTuV), MPEG-4 AAC (QuickTime/CoreAudio), MP3 (LAME), Apple Lossless, FLAC, HE-AAC (aacPlus v1/v2), Wave64, WavPack, IETF Opusでも出力可能です。

バージョン20080812以降では、XLDをCDリッパーとして使う事もできます。オーディオCDの各トラックを様々な形式に変換できるほか、全てのトラックを1つのファイルにまとめたCDイメージをcueシートと共に出力する、いわゆるwav(flac,wv,etc)+cue形式にも対応しています。

プラグインによる拡張を意識した構造

(私の作るソフトとしては非常に珍しく)バックエンドとフロントエンドが完全に分離しており、フロントエンドからは共通のインターフェイスで様々なデコーダにアクセスできます。今後登場する新たなフォーマットのサポートや、ユーザ自身によるプラグインの作成が非常に容易です。興味のある方はソースコード中のXLDDecoder.hをご覧ください。

使い方

重要: ape(flac,wav,etc)+cueなファイルを分割するには、ファイルメニューの「開く...」から.cueファイルを開いてください。「Raw PCM (bin/cue) を開く...」はRaw PCM (ヘッダ無しのwav) ファイルを変換/分割するときにのみ使います。勘違いしている人が多いようなので一応...

GUI版の使い方は同梱のReadmeファイルを参照してください。コマンドライン版の使い方は以下の通りです。

% xld [-c cuesheet] [-e] [-f format] [-o outpath] [-t track] file

何もオプションを指定せずに対象ファイルのみを引数に与えた場合、単純にそのファイルをwavにデコードします。出力されるファイル名は入力ファイル名の拡張子を.wavに変えたものになります。

与えられるオプションとその意味は次の通りです。

-c cuesheet
cuesheetに指定したcueシートを用いてファイルを分割します。cueシート中にTITLEやARTISTの指定がある場合、出力されるファイル名に適宜反映されます。
-e
cueシート中にプリギャップの情報が含まれている場合に、出力ファイルにプリギャップを付加しないようにします。デフォルトでは、プリギャップは前のトラックの末尾に追加されます。-cオプションを指定していない場合は意味を持ちません。
-f format
出力ファイルのフォーマットを指定します。formatに指定できるのは以下の通りです。
  • wav
  • WAVEフォーマット。デフォルトです。拡張子は.wavになります。
  • aif
  • AIFFフォーマット。拡張子は.aiffになります。
  • raw_big
  • ビッグエンディアンのRaw PCMフォーマット。拡張子は.pcmになります。
  • raw_little
  • リトルエンディアンのRaw PCMフォーマット。拡張子は.pcmになります。
-o outpath
outpathに指定した名前のファイルを出力します。ディレクトリを指定した場合は、そのディレクトリにファイルが出力されます。デフォルトの出力先はカレントディレクトリです。なお、cueシートで分割する際にはディレクトリの指定のみ有効です。
-t track
cueシートで分割する場合に、デコードしたいトラック番号を指定します。例えば1を指定した場合はトラック1のみが分割、デコードされます。2,4のように複数のトラックをカンマ区切りで指定する事もできます。
--raw
入力ファイルをRaw PCMとして読みます。以下の4つのオプションが指定できます。
--samplerate n
--rawオプションを指定したとき、サンプルレートをn Hzにします。デフォルトは44100Hzです。
--bit n
--rawオプションを指定したとき、量子化ビット数をn bitにします。デフォルトは16bitです。
--channels n
--rawオプションを指定したとき、チャンネル数をn chにします。デフォルトは2chです。
--endian little/big
--rawオプションを指定したとき、エンディアンを決めます。littleもしくはbigを指定してください。デフォルトはlittleです。

% xld -o ~/Music hoge.flac -f aif

hoge.flacをAIFFフォーマットにデコードして~/Musicに出力します。

% xld -c hoge.cue -t 1,3 hoge.flac

hoge.flacをhoge.cueを用いて分割し、1,3番目のトラックのみデコードして出力します。

ダウンロード

XLDのソースコードはここから入手できます。コンパイルにはLibsndfile、FLAC、Wavpack、Monkey's Audio、Libcddbのライブラリ/ヘッダが必要です。Monkey's Audioについてはこれが使えます。

プロジェクトに寄付する

XLDはフリーソフトウェアですが、もしXLDを気に入ってくださったら、寄付をしてもらえると嬉しいです。あなたの寄付がこれからの開発を支えます。

更新履歴

2024/3/10

2023/6/27

2023/4/16

2022/9/17

2022/9/10

2021/10/18

2021/1/1

2020/11/23

2019/10/4

2018/10/19

2018/10/1

2017/7/29

2017/7/10

2016/10/7

2016/9/20

2015/12/14

2015/11/28

2014/11/29

2014/11/9

2014/5/11

2014/5/4

2014/4/27

2013/11/2

2013/7/20

2013/6/2

2013/6/1

2013/4/7

2013/1/27

2012/12/22

2012/10/27

2012/10/13

2012/9/24

2012/9/8

2012/7/22

2012/6/9

2012/4/7

2012/2/26

2012/1/20

2011/12/11

2011/12/11

2011/11/13

2011/10/16

2011/10/15

2011/9/24

2011/8/21

2011/8/20

2011/8/2

2011/7/3

2011/6/11

2011/5/28

2011/5/15

2011/5/2

2011/4/17

2011/3/12

2011/2/28

2011/2/23

2010/12/27

2010/12/12

2010/12/8

2010/11/20

2010/10/27

2010/10/23

2010/9/18

重要: 10.3.9はサポート外になりました。今はまだ動くかもしれませんが、今後の動作の保証はしません。
機能追加 利便性の向上 バグ修正

2010/5/11

2010/4/1

2010/1/23

2009/11/29

2009/11/8

2009/9/24

2009/8/28

2009/8/25

2009/3/20

機能追加 利便性の向上 バグ修正

2009/2/15

機能追加 利便性の向上 バグ修正

2008/9/14

機能追加 利便性の向上 バグ修正

2008/8/22

2008/8/18

2008/8/16 (その2)

2008/8/16

2008/8/12

2008/7/6

2008/7/5

2008/6/1

2008/5/3

2008/4/23

2008/4/21

2008/4/19

2008/4/6

2008/3/30

2008/3/13

2008/3/10

2008/3/8

2008/3/5

2007/11/21

2007/11/19

2007/11/14

2007/11/11

2007/9/17

2007/8/11

2007/7/28

2007/6/28

2007/5/4

2007/2/14

2006/12/16

2006/12/9

2006/12/3

2006/11/29

2006/11/25

2006/11/19

2006/11/18 (その2)

2006/11/18

2006/11/11

2006/11/8

2006/10/31

2006/10/29

2006/10/28

2006/10/27

2006/10/26

2006/10/25

2006/10/22

2006/10/14

2006/10/12

2006/10/11

2006/9/25

2006/9/16 (その2)

2006/9/16

2006/9/15

2006/9/14

2006/9/13

2006/9/11

2006/9/9

2006/9/8

2006/9/2

2006/8/28

2006/8/27

2006/8/26

2006/8/8

2006/8/5

2006/7/16

2006/6/22 (その2)

2006/6/22

2006/6/20

2006/6/17 (その2)

2006/6/17

2006/6/15

2006/6/14

2006/6/13

2006/6/12

2006/6/6

2006/5/30

2006/5/28

2006/5/27


もどる

このページはリンクフリーです。
一応連絡先