web-dev-qa-db-ja.com

ffmpegまたはavconvで変換するときに、Audaciousまたは任意のミュージカルプレーヤーでの継続時間が正しくない

私には理解できない奇妙な問題が1つあり、それは本当に私を夢中にさせます。久しぶりに探していたのですが、適切な答えが見つかりませんでした。それはffmpegまたはavconvで変換されたmp3の持続時間についてです。 Firefoxのダウンロードヘルパーを使用して、ビデオファイルをダウンロードしてmp3に変換しています。音楽プレーヤーのmp3の持続時間以外はすべて問題ありません(大胆に試してみました、qmmp)...ビデオを変換するときこれはプレーヤーでは3分で、約18分です。私が気付いたもう一つのことは、間違ったビットレートです。それは約32kbpsを示していますが、ファイルを変換するときに192kbpsを使用しています...

ビデオファイルに使用しているVLCを試しましたが、時刻が正しく表示されますが、コーデックセクションのビットレートも32kbpsを示しています。 VLCでファイルを開いたとき、最初は少し時間がバッファリングされていることに気づきましたが、ついに正しく表示されます。

私が試したもう1つのことは、コマンドffmpeg -i file.mp3で、これも正しい期間とビットレートを示しています。

奇妙な事実は、同じ変換されたファイルを大胆に何も変更せずにエクスポートすると、正しい期間で大胆に正しく表示されることです。大胆さはそのバグを修正する他のいくつかのライブラリを使用している可能性があります。

詳細については、ffmpeg、libavcodec-extra-53をインストールしました。

ffmpeg -version

ffmpeg 0.8.10-6:0.8.10-0ubuntu0.13.10.1
libavutil    51. 22. 2 / 51. 22. 2
libavcodec   53. 35. 0 / 53. 35. 0
libavformat  53. 21. 1 / 53. 21. 1
libavdevice  53.  2. 0 / 53.  2. 0
libavfilter   2. 15. 0 /  2. 15. 0
libswscale    2.  1. 0 /  2.  1. 0
libpostproc  52.  0. 0 / 52.  0. 0

Kubuntu 13.10i386を使用します。

前もって感謝します :)

編集:

わかりました...解決策は本当に簡単でした..LordNeckbeardが言ったように、私は公式からバージョンをダウンロードしました FFmpegサイト そして今、すべてが正しいです。

最初にリポジトリのバージョンを削除してから、公式サイトから/ usr/bin/...にバージョンをコピーします。

1
m1nev

わかりました...解決策は本当に簡単でした..LordNeckbeardが言ったように、私は公式からバージョンをダウンロードしました FFmpegサイト そして今、すべてが正しいです。

最初にリポジトリのバージョンを削除してから、公式サイトから/ usr/bin/...にバージョンをコピーします。

1
m1nev

Mp3ファイルの期間が正しく表示されない理由は、ファイルのヘッダーの問題です。問題のmp3ファイルはおそらくvbrでエンコードされています。

ヘッダーはユーティリティで再支払いできます

vbrfix

Ubuntuリポジトリで入手できます。

Sudo apt-get install vbrfix

次に、それを使用して1つのmp3ファイルを修正します。

vbrfix in.mp3 out.mp3

または、ディレクトリ内のすべてのファイルを修正します。

mkdir backup
for FILE in *.mp3; do
  mv "${FILE}" backup/"${FILE}"
  vbrfix backup/"${FILE}" "${FILE}"
done
rm -rf backup
0
FuePi