4

Web上に.mp3ファイルのリストがあり、最高品質のファイルを取得したいと思います。マルチメディアファイルの品質は、それらのビットレートと同じです。

ビットレート自体は、ファイルのヘッダーに記載されている必要があります。そうでない場合は、オーディオトラックの長さも使用できます。(ファイルサイズ/トラック長=ビットレート)

これらのファイルをローカルに持っていれば、これらのことは簡単ですが、HTTPを介してこの情報を取得し、どのファイルが最高の品質であるかを判断したいと思います。

HTTPヘッダーからオーディオトラックの長さを取得できますか?そうでない場合、ファイル全体をダウンロードする代わりに、長さ/ビットレートを表すビットのみをフェッチすることは可能ですか?

私はPythonでコードを書いていますが、質問は非常に一般的であるため、Pythonの質問としてタグ付けしていません。

4

1 に答える 1

3

リモート サーバーが正常に動作していると仮定するとHEAD、ファイルに要求を発行して、Content-Lengthヘッダー フィールドの内容を確認できます。トラックの長さやビット レートはわかりませんが、ファイルのサイズはわかります。

EDIT : MP3 は複数のフレームで構成され、それぞれのフレームは異なるビット レート (VBR) にすることができます。トラックの長さは、格納されている長さ自体ではなく、これらの各フレームのビット レートから計算されます。ビットレートを確実に取得したい場合は、ファイル全体を取得し、各フレームのビットレートを取得する必要があります。ファイルの最初の数 KB を取得して、最初のフレームからビット レートを読み取ることは可能かもしれませんが、これは常にファイル内の同じポイントにあるとは限りません (たとえば、ID3 タグの位置などにより)。

于 2012-01-28T15:42:45.233 に答える