2012-07-25 64 views
6

AACファイルをMP3に変換するためのスクリプトを作成しています。特に、iTunesをその場でトランスコードしないため、MP3 CDに書き込むことができます。コードを変更しましたWrite a simple python script to convert all .wav files in a specific folder to .mp3 using lameAAC(.m4a)ファイルをディレクトリの.mp3に変換する

現在、ディレクトリ内の最初のファイルを変換してから停止します。

私はPythonの知識がありますが、サブプロセスモジュールはありません。ドキュメントを閲覧したが、なぜファイルを処理し続けていないのか分からない。

#!/usr/bin/env python 

import os 
import os.path 
import sys 
import subprocess 

OUTPUT_DIR = '/Users/matt/Desktop/mp3/' 

def main(): 
    path = os.getcwd() 
    filenames = [ 
     filename 
     for filename 
     in os.listdir(path) 
     if filename.endswith('.m4a') 
     ] 

    for filename in filenames: 
     subprocess.call([ 
      "ffmpeg", "-i", 
      os.path.join(path, filename), 
      "-acodec", "libmp3lame", "-ab", "256k", 
      os.path.join(OUTPUT_DIR, '%s.mp3' % filename[:-4]) 
      ]) 
     return 0 

if __name__ == '__main__': 
    status = main() 
    sys.exit(status) 
+0

私はこれまでの質問をよく知っていますが、おそらく既にそれを行っていますが、AACをMP3に変換するのは悪い考えです。あなたは本当にあなたが最高の品質のMP3を持っていることを確認するためにCDからファイルをリッピングする必要があります。 – Cromulent

+0

@Cromulentよく知っている!このためのコンテキストは、私の車のためのMP3 CDを作成することです(iPhoneの添付ファイルは> 180ドルです)。これは、iTunesの(MP3ファイルをライブラリに自動的に追加する)ことなく、既存のiTunes AACライブラリから作成します。私はオーディオファイルレベルの機器で音楽を演奏していないので、〜256k + AACファイルから始めるので、損失は許容されます。 – elithrar

答えて

8

あなたのforループ内return 0を持っています。タイプミスのように見えます。それをforと揃えるように4桁左にシフトします。

+0

よかった、ありがとう。それはちょうどタイプミスだったのでうれしいです。あなたが見つめて見逃すことのできるものの一つ。 – elithrar

関連する問題