3

pydub を使用してファイルを出力しました (ファイルを短いファイルに切り刻みました)。すべて問題ありませんが、ビットレートが 256k から 124k に変更されました (なぜ 128k の代わりにこの数値を取得するのでしょうか?)。AudioSegment にはビットレートを設定する引数があることは知っていますが、毎回手動で設定するのではなく、同じビットレートが必要です。この問題を解決する方法はありますか?

4

2 に答える 2

8

これは主に ffmpeg/avlib に関係していますが、AudioSegment().export()メソッドにフラグを渡して、必要なビットレートを指定できます。

from pydub import AudioSegment
from pydub.utils import mediainfo

source_file = "/path/to/sound.mp3"

original_bitrate = mediainfo(source_file)['bit_rate']
sound = AudioSegment.from_mp3(source_file)

sound.export("/path/to/output.mp3", format="mp3", bitrate=original_bitrate)
于 2015-11-20T15:57:07.493 に答える
2

mediainfoオブジェクトを使用して上記の例を使用できませんでした。ここでWAVファイルのビットレートを計算する方法を見つけて、それを使用しました。

それを python と pydub に変換し、pydub オブジェクトが呼び出されると仮定すると、次のようにwavなります。 bitrate = str((wav.frame_rate * wav.frame_width * 8 * wav.channels) / 1000)

次に、それを手動で設定せずにエクスポート機能に渡すことができます。それが役に立てば幸い :)

于 2016-05-23T21:28:23.660 に答える