python pydub用法(1)
来源:互联网 发布:软件企业投标资质 编辑:程序博客网 时间:2024/05/24 02:32
AudioSegment()类
#打开音频文件from pydub import AudioSegmentsound1 = AudioSegment.from_file("/path/to/sound.wav", format="wav")sound2 = AudioSegment.from_file("/path/to/another_sound.wav", format="wav") # 调整音量大小louder = sound1 + 6quieter = sound1 - 3.5 # sound2 连接在sound1 后面combined = sound1 + sound2 # sound1 重复3次repeated = sound1 * 3 # 持续时间duration_in_milliseconds = len(sound1) # sound1 前5秒beginning = sound1[:5000] # sound1 最后5秒end = sound1[-5000:] # 创建原始二进制音频:sound = AudioSegment( # raw audio data (bytes) 二进制数据 data=b'…', # 2 byte (16 bit) samples 采样sample sample_width=2, # 44.1 kHz frame rate 采样频率 frame_rate=44100, # stereo 声道 channels=2)
当两个音频文件拼接时,AudioSegment objects 会检查channels, frame rate, sample rate, bit depth, 等是否匹配,不匹配则会修改质量较低的音频使之与较高的音频匹配。
读入音频
AudioSegment(…).from_file(path/handle,format)
打开一个音频文件作为AudioSegment实例
from pydub import AudioSegment# wave and raw don’t use ffmpegwav_audio = AudioSegment.from_file("/path/to/sound.wav", format="wav")raw_audio = AudioSegment.from_file("/path/to/sound.raw", format="raw", frame_rate=44100, channels=2, sample_width=2)# all other formats use ffmpegmp3_audio = AudioSegment.from_file("/path/to/sound.mp3", format="mp3")# use a file you've already opened (advanced …ish)with open("/path/to/sound.wav", "rb") as wav_file:audio_segment = AudioSegment.from_file(wav_file, format="wav")
format参数:默认 MP3.同时支持 "wav"和 "raw" ,其他格式需要 ffmpeg支持.
"raw"需要额外三个参数, sample_width, frame_rate, and channels,
sample_width:1 8-bit音频,2 16-bit (CD quality),4 32-bit.
channels: 1 单声道, 2 立体声.
frame_rate:通常采样率为 44100 (44.1kHz - CD audio), 或者 48000 (48kHz - DVD audio)
导出音频
AudioSegment.export(path/handle,format)
把一个AudioSegment对象导出文件,返回值为文件句柄
from pydub import AudioSegmentsound = AudioSegment.from_file("/path/to/sound.wav", format="wav")# simple exportfile_handle = sound.export("/path/to/output.mp3", format="mp3")# more complex exportfile_handle = sound.export("/path/to/output.mp3", format="mp3", bitrate="192k", tags={"album": "The Bends", "artist": "Radiohead"}, cover="/path/to/albumcovers/radioheadthebends.jpg")
export的第一个参数可以是文件输出路径或者句柄
format:默认"mp3"。支持"wav","raw" ,其他格式需要ffmpeg.
codec:有些音频格式需要额外的解码器,你可以在此定义你所需要的解码器。例如,OGG格式通常是用“libVorbis“解码器(需要ffmpeg)。
bitrate:比特率,该参数决定了解码器所使用的比特率(例如‘128k’用于压缩格式)(需要ffmpeg).每种codec所要求的比特率不同(参见ffmpeg documentation)(bitrate通常用-b, -ba or -a:b).
tags:允许你为音频添加标签,例如{"album": "1989", "artist": "Taylor Swift"} (需要ffmpeg).不是所有的音频格式都支持tag(MP3格式支持).
parameters:调用ffmpeg时的额外参数;需要是list格式,例如["-ac", "2"]。
id3v2_version:默认“4”,设置ffmpeg的ID3v2版本ffmpeg来为输出文件添加标签。If you want Windows Exlorer to display tags, use "3" here (source).
cover:允许你为音频设置封面,目前只有MP3格式支持,图片格式为png, bmp, tiff 。 例如: "/path/to/imgfile.png"
AudioSegment.empty()
创建一个空的AudioSegment.
from pydub import AudioSegmentempty = AudioSegment.empty()len(empty) == 0#This is useful for aggregation loops:from pydub import AudioSegmentsounds = [ AudioSegment.from_wav("sound1.wav"), AudioSegment.from_wav("sound2.wav"), AudioSegment.from_wav("sound3.wav"),]playlist = AudioSegment.empty()for sound in sounds: playlist += sound
- python pydub用法(1)
- python pydub 用法 (2)
- Windows python pydub 安装
- Python中pydub使用详解
- 【Python】利用pydub库操作音频文件
- pydub简单介绍
- python中的string相关用法(1)
- ubuntu Mp3 to WAV pydub install
- python input的用法1
- python的with用法(1)
- Python爬虫BeautifulSoup用法(1)
- python sorted()函数用法
- python天天进步(1)--sys.argv[]用法
- Python链表部分函数用法(1)
- python天天进步(1)--sys.argv[]用法
- Python Scapy(2.3.1)文档学习(四):高级用法
- Python Scapy(2.3.1)文档学习(四):高级用法
- python:3:列表基本用法及相关函数(1)
- 文章标题
- 采用SmartQQ 协议可制作聊天机器人
- ROS---发送自定义消息,接收消息
- 关于线性表的深入了解
- effective C++条款三十二
- python pydub用法(1)
- 48张帮助程序员梳理知识框架结构图谱
- (CodeForces
- C\C++程序员面试总结
- 洛谷p1918保龄球
- springMVC之ModelAttribute
- BZOJ2878: [Noi2012]迷失游乐园
- 程序员成长历程的四个阶段
- 编译链接--读书笔记1