flac2mp3 – FLACからMP3へのバッチコンバータ

ロスレス FLAC 形式の膨大な音楽ライブラリがあり、ポータブル MP3 コピーが必要な場合、手動でコピーすることはできません。 flac2mp3 は、すべての FLAC ファイルを再帰的に検索し、ffmpeg を使用して高品質の MP3 に変換するクリーンな Python スクリプトです。

flac2mp3 を使用する理由

このスクリプトは、libmp3lame エンコーダを -q:a 0 (最高の可変ビット レート品質設定) で使用します。オリジナルの FLAC との聴覚的な違いは事実上存在しませんが、ファイル サイズは大幅に小さくなります。

機能

  • 再帰的検索: すべてのサブディレクトリを調べて、すべての .flac ファイルを自動的に検索します。
  • 複数のエクスポート モード: インプレース変換、ミラーリングされたディレクトリ ツリー、またはフラット化された単一フォルダー ダンプ。 1 回の実行でモードを結合することもできます。
  • 並列処理: –Parallel-run=4 を渡して複数の CPU コアを利用し、バッチ変換を大幅に高速化します。
  • クリーンな処理: スペースや特殊文字を含むファイル名とフォルダ名を適切に処理します。
  • 使用法

    最も単純なケース — 現在のディレクトリ内のすべての FLAC をインプレースで変換します。

    python flac2mp3.py
    

    より高度な実際の例 — ディレクトリ構造を維持しながら、4 つの並列スレッドですべての FLAC を D:\Downloads から D:\mp3s に変換します。

    python flac2mp3.py D:\Downloads\ --output-directory-save-directories-tree=D:\mp3s\ --parallel-run=4
    

    ボンネットの下で

    スクリプトの中核では、ファイル システムを探索し、ファイルごとに ffmpeg コマンドを構築します。

    ffmpeg -i "song.flac" -c:a libmp3lame -q:a 0 "song.mp3"
    

    また、オプションで同時実行のためにスレッド プールを使用して、変換を実行するサブプロセスを生成します。

    前提条件

  • Python 3.x
  • ffmpeg がシステムの PATH にインストールされ、利用可能
  • このスクリプトには追加の Python 依存関係はなく、純粋な標準ライブラリです。

    https://github.com/zefir1990/flac2mp3