如何在PyDub中导出(但不保存)音频文件?

8 投票
2 回答
19297 浏览
提问于 2025-04-18 12:18

对我来说,PyDub库非常适合转换音频格式。我最近用它写了一个命令行音频转换器,处理了大约200个音频文件,这让我省去了购买或寻找一个可以排队转换歌曲和其他音频文件的转换器的麻烦。不过,我很快发现它会替换掉我的音频文件。对我来说,这样很好,挺不错的。但如果我不想让PyDub替换音频文件,而是想把它们复制成不同的格式呢?我可以直接把文件复制到目录里再转换,但难道在PyDub里面就没有办法做到这一点吗?我查了一下,没找到相关的方法,也没看到有人问过这个问题,所以可能这并不是一个很常见的需求。

谢谢!

2 个回答

-3

希望这能帮到你:

    myaudio = AudioSegment.from_mp3("XXXXX/y.mp3")
    chunk_length_ms = 1000000  # pydub calculates in millisec
    chunks = make_chunks(myaudio, chunk_length_ms)  # Make chunks of one sec

    chunks.export('path where file needs to be exported' + chunks, format='mp3')  
14

当你导出一个音频片段时,你可以随时为这个文件指定一个新名字(或者用同样的名字,但放在不同的文件夹里)

from pydub import AudioSegment

song = AudioSegment.from_file("/path/to/file.mp3", format="mp3")
song.export("/path/to/new/filename.mp4", format="mp4")

撰写回答