当我尝试导出 Mp3 的一部分时,pydub 返回零字节文件
pydub returning zero byte file when I try to export part of an Mp3
我把这个分享给后代,因为我已经找到了答案。我正在尝试在 Python 中使用 pydub 创建 MP3 文件的预览片段,但是当我 运行 导出时,文件的大小始终为零字节。
示例:
from pydub import AudioSegment
sound = AudioSegment.from_mp3("preview_temp/n/1/mp3/01_Beyond_and_Into_the_Ultimate.mp3")
# len() and slicing are in milliseconds
halfway_point = len(sound) / 2
second_half = sound[halfway_point:]
print second_half
second_half.export("preview_temp/n/1/prev/prev_test.mp3", format="mp3", bitrate="192k")
我确认源文件存在并且可以访问。我的暗示是这与 ffmpeg 有关。它已正确安装,但后来我在 pydub github:
上遇到了这个
You may use libav or ffmpeg. libav is recommended.
pydub 开发人员在 github wiki 上的多个平台上运行安装。不过,我在这里分享它是为了让人们更容易找到它。
安装 libav 后,一切正常。不知道为什么 ffmpeg 没有输出,但是安装 libav 解决了它。
在 debian/ubuntu:
# libav
apt-get install libav-tools libavcodec-extra
#### OR #####
# ffmpeg
apt-get install ffmpeg libavcodec-extra
在 OSX,使用自制程序:
# libav
brew install libav --with-libvorbis --with-sdl --with-theora
#### OR #####
# ffmpeg
brew install ffmpeg --with-libvorbis --with-ffplay --with-theora
全部来自pydub readme
我把这个分享给后代,因为我已经找到了答案。我正在尝试在 Python 中使用 pydub 创建 MP3 文件的预览片段,但是当我 运行 导出时,文件的大小始终为零字节。
示例:
from pydub import AudioSegment
sound = AudioSegment.from_mp3("preview_temp/n/1/mp3/01_Beyond_and_Into_the_Ultimate.mp3")
# len() and slicing are in milliseconds
halfway_point = len(sound) / 2
second_half = sound[halfway_point:]
print second_half
second_half.export("preview_temp/n/1/prev/prev_test.mp3", format="mp3", bitrate="192k")
我确认源文件存在并且可以访问。我的暗示是这与 ffmpeg 有关。它已正确安装,但后来我在 pydub github:
上遇到了这个You may use libav or ffmpeg. libav is recommended.
pydub 开发人员在 github wiki 上的多个平台上运行安装。不过,我在这里分享它是为了让人们更容易找到它。
安装 libav 后,一切正常。不知道为什么 ffmpeg 没有输出,但是安装 libav 解决了它。
在 debian/ubuntu:
# libav
apt-get install libav-tools libavcodec-extra
#### OR #####
# ffmpeg
apt-get install ffmpeg libavcodec-extra
在 OSX,使用自制程序:
# libav
brew install libav --with-libvorbis --with-sdl --with-theora
#### OR #####
# ffmpeg
brew install ffmpeg --with-libvorbis --with-ffplay --with-theora
全部来自pydub readme