需要はあまりないとは思いますが、備忘録として書き残しておきます。
端末を開いて sudo apt install vorbis-tools
とタイプして実行すればすぐに使えるようになりますが、それだとつまらないので、ここでは libvorbis ではなく aoTuV を利用する手順を紹介したいと思います。
環境は Linux Mint 22.1 “Xia” MATE Edition です。
aoTuVについて
aoTuV (aoyumi Tuned Vorbis) とは、日本人である蒼弓(あおゆみ)さんがチューニング・開発・配布を行っている Vorbis エンコーダです。公式の Vorbis よりも高音質であることもあり、実際に aoTuV の成果が公式の libvorbis に統合(マージ)されたりもしています。
ここ10年の更新は脆弱性やバグの修正が主であり、音質に関わる変更は行われていないみたいです。ソースコード及びバイナリは、修正BSDライセンス (3条項BSDライセンス) で配布されており、商用・非商用に関係なくライセンス料を支払うことなく使用・配布することが可能です。
このことから、PCゲームを中心に Vorbis が使われていることも多いです。
vorbis toolsのコンパイルに必要なもの(依存関係)をインストールする
libcurl と libao のインストール
端末から Vorbis の音声ファイルを再生するには ogg123 (後述するvorbis toolsに含まれる) が必要ですが、その ogg123 のインストールには libcurl と libao が必要になるので、以下のコマンドを実行します。
$ sudo apt install libcurl4-openssl-dev libao-dev
liboggをソースコードからインストールする
libogg は、oggenc (エンコーダ)をコンパイルするのに必要となります。2025年02月15日現在、最新版は バージョン 1.3.5 です。
$ wget -O libogg-1.3.5.tar.gz https://downloads.xiph.org/releases/ogg/libogg-1.3.5.tar.gz
$ tar -zxvf libogg-1.3.5.tar.gz
$ cd libogg-1.3.5
$ ./configure
$ make
$ sudo make install
$ cd
aoTuV (libvorbis) のインストール
libogg と同じように aoTuV (libvorbis) も oggenc のコンパイルに必要です。2025年02月15日現在、最新版は aoTuV Beta 6.03 (2020) です。
$ git clone https://github.com/AO-Yumi/vorbis_aotuv.git
$ cd vorbis_aotuv
$ sudo chmod +x configure
$ ./configure
$ make
$ sudo make install
$ cd
wav だけでなく flac や speex の読み込みにも対応する
通常、oggencが読み込めるファイルは 16bit PCM のwavファイルのみですが、flac や speex といった形式の読み込みにも対応できます。必須ではありませんが、手順を紹介します。
flacのインストール
2025年02月15日現在、最新版は バージョン 1.5.0 です。
$ wget https://ftp.osuosl.org/pub/xiph/releases/flac/flac-1.5.0.tar.xz
$ tar -Jxvf flac-1.5.0.tar.xz
$ cd flac-1.5.0
$ LD_FLAGS="-L/usr/local/lib" ./configure
$ make && make check
$ sudo make install
$ cd
speexのインストール
2025年02月15日現在、最新版は バージョン 1.2.1 です。
$ wget http://downloads.xiph.org/releases/speex/speex-1.2.1.tar.gz
$ tar -zxvf speex-1.2.1.tar.gz
$ cd speex-1.2.1
$ ./configure
$ make
$ sudo make install
$ cd
vorbis tools のインストール
vorbis tools とは、ogg形式のファイルを端末上から扱うためのプログラム一式です。
エンコーダーである oggenc やデコーダーである oggdec、ogg形式のファイルを再生する ogg123、oggファイルを分割する vcut、oggファイルの情報を取得する ogginfo などから構成されています。
vorbis tools のコンパイル
2025年02月15日現在、最新版は バージョン 1.4.2 です。
$ git clone https://github.com/xiph/vorbis-tools.git
$ cd vorbis-tools
$ AUTOMAKE_FLAGS=--include-deps ./autogen.sh
$ LDFLAGS="-L/usr/local/lib -Wl,-rpath /usr/local/lib" ./configure
$ make
$ sudo make install
$ cd
ちなみに ./configure 時に LDFLAGS="-L/usr/local/lib -Wl,-rpath /usr/local/lib"
を指定しないと oggenc を実行した際に oggenc: error while loading shared libraries: libFLAC.so.14: cannot open shared object file: No such file or directory というエラーが出ます。これは oggenc が libFLAC.so.14 を見つけられないために起こるエラーです。
oggenc / ogg123 / oggdec に実行権限を付与
$ sudo chmod +x /usr/local/bin/ogg*
以上で、コンパイル・インストール作業は完了となります。
動作を確認する
インストールされたディレクトリの確認
以下のコマンドを実行して、ちゃんとインストールされたか確認します。
$ which oggenc
以下の画像のように /usr/local/bin/oggenc と表示されたら、問題なくインストールされています。

oggencを実際に実行する
まず以下のコマンドを実行して、ヘルプ (英語) を表示させてみます。ヘッダー部分に using encoder aoTuV Beta 6.03 (2020) とあり aoTuV を ogg vorbis のエンコーダーとして使っているのが分かります。
$ oggenc -h

音声ファイルをOgg Vorbisに変換する
実際に、音楽ファイルを Ogg Vorbis に変換してみます。コマンド構文は以下の通りです。
$ oggenc [options] [InputFileName]
何もオプションを指定しなければデフォルト値である VBR -q2 (96kbps相当) が自動的に指定されます。以下の例では デスクトップ上の smooooch.flac を smooooch.ogg に変換しデスクトップに出力しています。
$ oggenc ./Desktop/smooooch.flac

Ogg Vorbisファイルの再生
先ほどデスクトップ上に出力したOgg Vorbisファイル「smooooch.ogg」をogg123で端末から再生してみます。
$ ogg123 ./Desktop/smooooch.ogg

公式サイト様や関連サイト様、参考にさせていただいたサイト様
Vorbisの公式サイト
aoTuVの公式サイト
aoTuVを開発している蒼弓さんのブログ

コメント