91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python從視頻中提取音頻的操作方法

發布時間:2021-04-01 11:26:55 來源:億速云 閱讀:1069 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關Python從視頻中提取音頻的操作方法的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

簡介

OpenCV中使用VideoCapture類寫的視頻是沒有音頻的,如果要進一步處理音頻則需要用到一個庫——MoviePy,這個庫是Python視頻編輯庫,可裁剪、拼接、標題插入、視頻合成、視頻處理和自定義效果。

安裝

pip install moviepy

代碼

from moviepy.editor import *
video = VideoFileClip('test.mp4')
audio = video.audio
audio.write_audiofile('test.mp3')

不安裝moviepy視頻編輯庫可以直接使用ffmpeg-python庫,見參考文獻4,代碼稍微復雜點

音頻格式

extensions_dict = { "mp4": {'type':'video', 'codec':['libx264','libmpeg4', 'aac']},
          'ogv': {'type':'video', 'codec':['libtheora']},
          'webm': {'type':'video', 'codec':['libvpx']},
          'avi': {'type':'video'},
          'mov': {'type':'video'},
          'ogg': {'type':'audio', 'codec':['libvorbis']},
          'mp3': {'type':'audio', 'codec':['libmp3lame']},
          'wav': {'type':'audio', 'codec':['pcm_s16le', 'pcm_s24le', 'pcm_s32le']},
          'm4a': {'type':'audio', 'codec':['libfdk_aac']}
         }

可看到支持ogg、mp3、wav和m4a四種格式,個人測試m4a輸出失敗,建議只用mp3和wav

測試2分鐘的視頻導出mp3為1.83Mb,wav為20.1Mb

mp3是有損格式,wav是無損格式,按需選擇

備注

要實現更底層的音視頻處理應用ffmpeg

補充:python處理mp4視頻提取音頻轉為mp3或者wav,并進行截取

mp4視頻文件提取音頻轉為mp3或者wav文件

mp3是有損文件,wav是無損文件,就像我測試的視頻,mp3導出只有幾十k,wav文件導出有3M多。

from moviepy.editor import *
video = VideoFileClip('aa.mp4')
audio = video.audio
audio.write_audiofile('test.wav')
audio.write_audiofile('test.mp3')

截取map或者wav文件

from scipy.io import wavfile
like = wavfile.read('test.wav')
# print (like)
# 音頻結果將返回一個tuple。第一維參數是采樣頻率,單位為秒;第二維數據是一個ndarray表示歌曲,如果第二維的ndarray只有一個數據表示單聲道,兩個數據表示立體聲。所以,通過控制第二維數據就能對歌曲進行裁剪。
# 對like這個元組第二維數據進行裁剪,所以是like[1];第二維數據中是對音樂數據切分。 start_s表示你想裁剪音頻的起始時間;同理end_s表示你裁剪音頻的結束時間。乘44100 是因為每秒需要進行44100次采樣
# 這里表示對該音頻的13-48秒進行截取
wavfile.write('test2.wav',44100,like[1][13*44100:48*44100])

感謝各位的閱讀!關于“Python從視頻中提取音頻的操作方法”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

屯留县| 拉萨市| 梨树县| 金秀| 高陵县| 克拉玛依市| 洛南县| 拜泉县| 左贡县| 商丘市| 辽宁省| 塔城市| 阿拉善盟| 满城县| 奇台县| 泊头市| 仁怀市| 平和县| 丹棱县| 丽水市| 南澳县| 永济市| 永川市| 抚顺市| 曲麻莱县| 仁化县| 宕昌县| 屏山县| 龙游县| 金门县| 和平县| 汾西县| 南开区| 乌兰察布市| 河北省| 施秉县| 松溪县| 璧山县| 富民县| 香河县| 台江县|