
私はUbuntu 14.04.1 LTSを使用しています。質問は次のようになります不明なエンコーダー 'libmp3lame'しかし、そこに書かれていることすべてに従い、記載されているすべてのパッケージをインストールしましたが、それでもエラーが発生します。
以下のコマンドで、ffmpeg を使用して FLAC を MP3 に変換しようとしています。
ffmpeg -i hang_drum.flac -acodec libmp3lame destination_path.mp3
エラー:
ffmpeg version 2.3.3 Copyright (c) 2000-2014 the FFmpeg developers
built on Sep 5 2014 17:58:33 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration:
libavutil 52. 92.100 / 52. 92.100
libavcodec 55. 69.100 / 55. 69.100
libavformat 55. 48.100 / 55. 48.100
libavdevice 55. 13.102 / 55. 13.102
libavfilter 4. 11.100 / 4. 11.100
libswscale 2. 6.100 / 2. 6.100
libswresample 0. 19.100 / 0. 19.100
Input #0, flac, from 'hang_drum.flac':
Metadata:
TSS : Logic 10.0.6
ENCODER : Lavf55.44.100
Duration: 00:02:36.06, start: 0.000000, bitrate: 627 kb/s
Stream #0:0: Audio: flac, 44100 Hz, stereo, s16
私は試した:
sudo apt-get install ffmpeg libavcodec-extra-53
sudo apt-get install ffmpeg libavcodec-extra-54
sudo apt-get install libmp3lame0
sudo apt-get install libav-tools:i386
sudo apt-get install ffmpeg libav-tools
これらを実行した後も、同じエラーが発生しますlibmp3lame
。何が足りないのでしょうか?
答え1
Ubuntuは、libavフォークを採用してffmpegを公式にバンドルしていません。PPAこれはかなり古いので、ffmpeg の古いバージョンを実行するつもりがない限り、使用すべきではありません。
正直に言うと、ffmpeg
Ubuntu では公式にバンドルされていないため、なぜそれがあなたの特定のケースで機能しないのか、あるいはそもそもどうやって実行できたのかはわかりません。
ただし、常に機能する 2 つの解決策を以下に示します。
静的ビルドを使用する
簡単な解決策は、単純に最新の静的ビルドをダウンロードする(下にスクロールしてLinux 静的ビルド)。これらにはすべて libmp3lame がバンドルされています。そのビルドをどこかの場所に抽出し、ffmpeg
PATH 内のディレクトリにコピーします。例:
cd ~/Downloads
tar xvf ffmpeg-*.tar.xz
cd !$
sudo mkdir -p /usr/local/bin
sudo cp ./ffmpeg ./ffprobe /usr/local/bin/
sudo chmod ugo+x /usr/local/bin/ffmpeg /usr/local/bin/ffprobe
また、/usr/local/bin
シェル内にあることを確認してくださいPATH
。
ソースからコンパイル
これにより、必要なすべての追加機能を備えた最新バージョンも入手できます。FFmpeg wiki の常に最新のガイド少し時間がかかりますが、より多くの設定オプションが提供され、ライセンス上の理由で静的にバンドルできない libfdk_aac などの他のエンコーダーにアクセスできるようになります。
答え2
問題
をコンパイルしたようですが、 MP3 オーディオをエンコードするために必要なffmpeg
configure オプションを省略しました( もありますが、これはほとんどのユーザーには必要のない固定小数点 MP3 エンコーダーです)。--enable-libmp3lame
--enable-libshine
さらに、コンパイルする前に依存関係としてパッケージが必要になりますlibmp3lame-dev
。現在、これには LAME ≥ 3.98.3 が提供される必要があるため、パッケージが古すぎる場合は、代わりに LAME をコンパイルすることもできます。
直し方
FFmpeg を使用する場合、主に 3 つのオプションがあります。
コンパイル
上で述べたように、LAMEの依存関係と--enable-libmp3lame
configureオプションが必要になります。Ubuntu FFmpeg コンパイル ガイドステップバイステップの手順についてはこちらをご覧ください。
ダウンロード
ダウンロードして解凍し、実行するだけです。静的ビルドffmpeg
MP3エンコードが有効になっています。
ペイパー
Ubuntu 14.04ユーザーはmc3man の Trusty 向け Ubuntu マルチメディアMP3エンコードもサポートしています。