色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Pydub音樂文件格式轉換功能介紹

科技綠洲 ? 來源:Python實用寶典 ? 作者:Python實用寶典 ? 2023-10-31 14:51 ? 次閱讀

Pydub是一個基于ffmpeg的Python音頻處理模塊,封裝了許多ffmpeg底層接口,因此用它來做音樂歌曲文件格式轉換會非常方便。

如果你閱讀過我們之前的文章:《剪輯音樂要很久?3行語句Python瞬間搞定》,你就知道 Pydub 有多么強大了。

今天給大家介紹它的音樂文件格式轉換功能,幾乎支持所有音樂音頻格式,非常牛逼。

1.安裝

安裝Pydub前需要先安裝 ffmpeg :

**(可選一) Mac ** (打開終端(Terminal), 用 homebrew 安裝):

brew install ffmpeg --with-libvorbis --with-sdl2 --with-theora

(可選二) Linux:

apt-get install ffmpeg libavcodec-extra

(可選三) Windows:

  1. 進入 http://ffmpeg.org/download.html#build-windows,點擊 windows 對應的圖標,進入下載界面點擊 download 下載按鈕。
  2. 解壓下載好的zip文件到指定目錄。
  3. 將解壓后的文件目錄中 bin 目錄(包含 ffmpeg.exe )添加進 path 環境變量中。

**(必須) **按照上述ffmpeg安裝步驟成功后就可以打開命令提示符(cmd)或終端(Terminal),安裝pydub:

pip install pydub

2.mp3轉wav或其他格式

將單個mp3音頻文件轉化為wav音頻格式:

from pydub import AudioSegment
def trans_mp3_to_wav(filepath):
    """
    將mp3文件轉化為wav格式
    Args:
        filepath (str): 文件路徑
    """
    song = AudioSegment.from_mp3(filepath)
    filename = filepath.split(".")[0]
    song.export(f"{filename}.wav", format="wav")

可以繼續封裝該函數,將單個mp3文件轉化為任意其他音樂音頻格式:

from pydub import AudioSegment
def trans_mp3_to_any_audio(filepath, audio_type):
    """
    將mp3文件轉化為任意音頻文件格式
    Args:
        filepath (str): 文件路徑
        audio_type(str): 文件格式
    """
    song = AudioSegment.from_mp3(filepath)
    filename = filepath.split(".")[0]
    song.export(f"{filename}.{audio_type}", format=f"{audio_type}")

如ogg格式:

trans_mp3_to_any_audio("Alone.mp3", "ogg")

只要是ffmpeg支持的音樂音頻格式,它都可以轉換,支持的格式長達幾十個,下面我簡單列一些:

wavavimp4flv
oggflacapemp2
aiffvocau

3.更加通用的轉換函數

剛剛是mp3轉任意音頻格式,我希望把它寫成任意音頻格式轉任意音頻格式:

from pydub import AudioSegment
def trans_any_audio_types(filepath, input_audio_type, output_audio_type):
    """
    將任意音頻文件格式轉化為任意音頻文件格式
    Args:
        filepath (str): 文件路徑
        input_audio_type(str): 輸入音頻文件格式
        output_audio_type(str): 輸出音頻文件格式
    """
    song = AudioSegment.from_file(filepath, input_audio_type)
    filename = filepath.split(".")[0]
    song.export(f"{filename}.{output_audio_type}", format=f"{output_audio_type}")

比如將ogg音樂音頻格式轉化為flv音樂音頻格式:

trans_any_audio_types("Alone.ogg", "ogg", "flv")

或者MP4格式,總之,一般你需要的格式它都能滿足。

trans_any_audio_types("Alone.ogg", "ogg", "mp4")

4.批量轉化音頻格式

現在,嘗試將一個文件夾下的所有非mp3音頻格式的文件轉化為mp3音頻格式:

def trans_all_file(files_path, target="mp3"):
    """
    批量轉化音頻音樂格式
    Args:
        files_path (str): 文件夾路徑
        target (str, optional): 目標音樂格式. Defaults to "mp3".
    """
    for filepath in os.listdir(files_path):
        # 路徑處理
        modpath = os.path.dirname(os.path.abspath(sys.argv[0]))
        datapath = os.path.join(modpath, files_path + filepath)
        # 分割為文件名字和后綴并載入文件
        input_audio = os.path.splitext(datapath)
        song = AudioSegment.from_file(datapath, input_audio[-1].split(".")[-1])
        # 導出
        song.export(f"{input_audio[0]}.{target}", format=target)

只要輸入文件夾名稱,即可全部轉化該文件夾下的音樂文件格式為mp3格式:

trans_all_file("F:push20200607music")

看了我們今天的教程,學會這招后,你再也不用擔心格式之間的轉化問題,通過使用** pydub**模塊你能輕易地解決這些問題。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 接口
    +關注

    關注

    33

    文章

    8687

    瀏覽量

    151674
  • 音頻
    +關注

    關注

    29

    文章

    2899

    瀏覽量

    81789
  • 終端
    +關注

    關注

    1

    文章

    1152

    瀏覽量

    29971
  • 格式轉換
    +關注

    關注

    0

    文章

    8

    瀏覽量

    8246
收藏 人收藏

    評論

    相關推薦

    MP3 文件格式資料

    MP3 文件格式資料
    發表于 04-08 03:37 ?22次下載

    如何光繪輸出AutoCAD文件格式

    教你光繪輸出AutoCAD文件格式
    發表于 06-07 15:16 ?36次下載

    .mpp文件格式打開軟件下載

    .mpp文件格式打開
    發表于 07-07 13:14 ?2517次下載

    LabVIEW數據文件格式的視頻教程

    LabVIEW數據文件格式的視頻教程 LabVIEW數據文件格式之華山論
    發表于 03-26 12:16 ?113次下載

    數碼相機伴侶的文件格式

    數碼相機伴侶的文件格式              文件格式指的是數碼相機伴侶獨特的文件系統結構在
    發表于 12-23 10:05 ?888次閱讀

    電子書的文件格式詳細介紹

    電子書的文件格式詳細介紹
    發表于 12-23 10:50 ?6636次閱讀

    GIF圖形文件格式文檔

    GIF圖形文件格式文檔 GIF圖形文件格式文檔 GIF圖形文件格式文檔
    發表于 05-24 10:53 ?2次下載

    GIF文件格式詳解

    GIF文件格式詳解 GIF文件格式詳解 GIF文件格式詳解
    發表于 05-24 10:53 ?2次下載

    HEX與BIN文件格式轉換工具應用程序免費下載

    本文檔的主要內容詳細介紹的是HEX與BIN文件格式轉換工具應用程序免費下載。
    發表于 01-11 17:08 ?60次下載
    HEX與BIN<b class='flag-5'>文件格式</b><b class='flag-5'>轉換</b>工具應用程序免費下載

    MIDI文件格式的協議說明

    標準的MIDI文件格式就像奇異的獸。總體看來,它是那樣的讓你無法抗拒。當然,你怎樣看它無關緊要,可是用足夠多的描述符描述一段音樂并使它能夠重現,可不是很少的工作就可以完成的。然而,它雖然復雜,但是真正理解之后,MIDI文件格式
    發表于 05-14 08:00 ?3次下載
    MIDI<b class='flag-5'>文件格式</b>的協議說明

    解開PCB文件格式的神秘面紗:Gerber與CAD

    PCB 文件格式可能不是 PCB 設計中最令人興奮的部分,但它們在傳達如何在制造廠實現您的設計的生命中起著關鍵作用。在本文中,我們將介紹您會遇到的兩種最流行的文件格式背后的基礎知識: Gerber
    的頭像 發表于 09-17 19:32 ?8449次閱讀

    將MacOLM文件轉換為OutlookPST文件格式的工具

    ? 將MacOLM文件轉換為OutlookPST文件格式的工具 SysTools OLM to PSTConverter軟件允許用戶一次性將項目從OLM文件遷移到OutlookPST,
    的頭像 發表于 06-16 10:56 ?3151次閱讀
    將MacOLM<b class='flag-5'>文件</b><b class='flag-5'>轉換</b>為OutlookPST<b class='flag-5'>文件格式</b>的工具

    Pydub:一個基于ffmpeg的Python音頻處理模塊

    Python瞬間搞定》 ,你就知道 Pydub 有多么強大了。 今天給大家介紹它的音樂文件格式轉換功能,幾乎支持所有
    的頭像 發表于 10-21 10:40 ?1612次閱讀

    常用對象文件格式

    電子發燒友網站提供《常用對象文件格式.pdf》資料免費下載
    發表于 10-15 09:25 ?0次下載
    常用對象<b class='flag-5'>文件格式</b>

    EPS文件格式如何轉換 EPS和SVG文件的區別

    EPS文件格式轉換 EPS(Encapsulated PostScript)是一種用于存儲矢量圖形的文件格式,最初由Adobe公司開發。由于EPS文件在打印時能夠保持極高的質量,并且廣
    的頭像 發表于 11-19 10:31 ?838次閱讀
    主站蜘蛛池模板: 亚洲AVAV天堂AV在线网爱情 | 99久久精品国产一区二区三区| 贵妇局长的蕾丝乳罩| 快穿之诱受双性被灌满h| 少妇高潮久久久久7777 | 97夜夜澡人人爽人人模人人喊| 九九国产精品成人AV麻豆| 特黄特黄aaaa级毛片免费看| 91精品一区二区三区在线观看| 韩剧甜性涩爱| 天天操人人射| 精彩国产萝视频在线| 亚洲理论片在线中文字幕| 国产精品成人啪精品视频免费观看| 日本高清无人区影院| 野花韩国中文版免费观看| 国产精人妻无码一区麻豆| 玩两个少妇女邻居| 国产精品亚洲第一区二区三区| 亚洲一区日韩一区欧美一区a| 久久大胆视频| 野花日本大全免费观看3中文版 | 动漫H片在线播放免费高清| 欧美人成在线观看ccc36| 2021扫黑风暴在线观看免费完整版| 久久午夜伦理| 123成人站| 秋霞久久久久久一区二区| 厕所RXXX| 色欲AV亚洲情无码AV蜜桃| 久久精品黄AA片一区二区三区 | 国产偷国产偷亚洲高清app | 香港论理午夜电影网| 黑人强伦姧人妻日韩那庞大的| av老司机色爱区综合| 热99re久久精品国产首页| 精品国产成人a区在线观看| 亚洲国产女人aaa毛片在线| 久久久久久极精品久久久| 91久久精品一区二区三区| 亚洲 欧美 制服 视频二区|