好的,这是一个使用pydub
库来播放音频文件特定部分的Python代码。请确保已经安装了pydub
和simpleaudio
库。如果没有安装,你可以使用pip来安装:pip install pydub simpleaudio
from pydub import AudioSegment
import simpleaudio as sa
song = AudioSegment.from_file("your_audio_file.mp3")
extract = song[1234:7890]
play_obj = sa.play_buffer(extract.raw_data, 2, 2, 44100)
play_obj.wait_done()
请将"your_audio_file.mp3"
替换为你的音频文件路径。这段代码将会播放该音频文件1234毫秒到7890毫秒之间的部分。注意,这段代码只适用于.mp3
格式的音频文件,如果你的音频文件是其他格式,你需要将from_file
函数中的.mp3
改为相应的格式。例如,对于.wav
格式的文件,你应该使用AudioSegment.from_wav("your_audio_file.wav")
。
此外,这段代码使用了simpleaudio
库来播放音频,这个库只支持WAV格式的音频。因此,如果你的音频文件不是WAV格式,可能需要先将其转换为WAV格式才能播放。你可以使用AudioSegment.export()
函数来实现这一点。
以上,灵活运用AI。
还有你既然尝试过FFmpeg,为什么不考虑一起的ffplay?
当然可以,你可以使用ffplay
来播放音频文件的一部分。以下是一个使用ffplay
的命令行示例:
ffplay -ss 1.234 -t 6.656 input.mp3
在这个命令中:
input.mp3
是你的源音频文件,
1.234
是开始时间(以秒为单位),
6.656
是播放长度(以秒为单位)。
这个命令将会播放原始音频文件从1.234秒开始的6.656秒的音频。注意,-t
参数指定的是播放长度,而不是结束时间,所以这里的值应该是结束时间减去开始时间(7.890 - 1.234 = 6.656)。