我正在編寫一個腳本來將AAC文件轉換爲MP3,因此我可以將它們刻錄到MP3 CD上,因爲iTunes不會在運行時進行轉碼。我修改了代碼Write a simple python script to convert all .wav files in a specific folder to .mp3 using lame將AAC(.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)
我知道這是一個老問題,你可能已經做到了,但將AAC轉換爲MP3是一個糟糕的主意,因爲你會兩次質量下降(都是有損格式)。您應該重新從CD上翻錄文件以確保您擁有最優質的MP3。 – Cromulent 2012-12-04 22:06:17
@Cromulent知道!其背景是從我現有的iTunes AAC庫中爲我的汽車創建MP3 CD(iPhone附件> 180美元),而無需通過iTunes(將MP3文件自動添加到庫)來創建。由於我不是通過高保真級別的設備播放音樂,而且我開始使用〜256k + AAC文件,所以損失是可以接受的。 – elithrar 2012-12-05 03:46:25