[英]Enqueue and play a folder of .mp3s in Windows Media Player with Python
[英]Playing MP3s in Python - Automatically handling varied sampling frequencies
我正在編寫一個Python程序來練習和測試我的普通話口語理解能力。 它從我指定的目錄中選擇一個隨機的mp3並播放(然后播放更多內容)。 我正在使用pygame播放這些mp3,但我的問題是我當前的設置需要明確聲明mp3的采樣頻率,才能使其正常播放。 但是,我混合了48 kHz和44.1 kHz mp3,並希望能夠在不失真的情況下播放它們。
import pygame
import random
import os
filenames = [x[:-4] for x in os.listdir(filepath) if x.endswith(suffix)]
pygame.mixer.init(48000, -16, 2, 4096)
selected_filename = random.choice(filenames)
selected_filename_full = filepath + selected_filename + suffix
pygame.mixer.music.load(selected_filename_full)
pygame.mixer.music.set_volume(volume)
pygame.mixer.music.play()
有沒有辦法檢測mp3的采樣頻率? 還是以其他方式正確播放mp3? 這似乎是一個奇怪的問題,每當我雙擊mp3時,我的音樂播放器便會始終正常播放,那么該怎么做才能在python代碼中獲得相同的行為?
您可以使用eyeD3 :
import eyed3
e = eyed3.load(filename)
print e.info.sample_freq
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.