以前我覺得這種小工具,在網路上很好找,搜尋一下,很多線上工具,
上傳後馬上可以轉換,雖然很方便。開始學python後,才發現原來會寫
程式的人為什麼會選擇用寫程式的方法來解決一些須求,不外乎成就感,
一鍵快速解決多個須求,而且可以客製化,我自己覺得以上這些要點外,
另一個是很用終端機處理"很酷"。
今天來紀錄一下FFmpeg這套影音轉檔程式。
首先先下載ffmpeg的免安裝程式
https://www.ffmpeg.org/download.html
下載完後會解壓縮,會有三個資料匣
ffmpeg---bin---/ffmpeg.exe
/ffplay.exe
/ffprobe.exe
---doc
---presets
---README.txt
---LICENSE.txt
把下載下來的mp4檔放在bin裡,這樣下指令才讀的到ffmpeg.exe
接下來先看mp4的資訊內容
在終端機進入剛下載下來的ffmpeg裡的bin裡
然後鍵入ffmpeg -i 影片名.mp4
它可用的指令有
-ab:設定音訊位元速率
-ar:設定音訊取樣頻率,22050,44100,48000HZ
-ac:設定聲道數
-vn:不要輸出影音檔的視訊,只截音頻
例如:我現在要把影音檔轉成音頻,在終端機鍵入ffmpeg -i 檔名.mp4 -vn -ab 128k 檔名.mp3
按下anter它就會問你要執行轉換否?按y執行
轉換好的音頻檔會出現在視頻同個資料匣裡
接下來直接用python裡的os庫來轉換看看
- # -*- coding: utf-8 -*-
- import os
- #os.system('ffmpeg -i 過渡期.mp4 -vn -ab 128k 過渡期.mp3')
- binpath=r'C:\Users\blair\Downloads\ffmpeg-4.2.1-win64-static\bin'#程式所以路徑
- bps='128k'#位元率
- file=os.path.join(binpath,'過渡期.mp4')#視頻來源
- name=os.path.join(binpath,'過渡期.mp3')#輸出檔名
- os.system(binpath+r'\ffmpeg -i {} -vn -ab {} {}.mp3'.format(file,bps,name))
執行後所得結果和終端機直接執行一樣