這篇文章主要介紹“Python3.7 如何讀取音頻的文件名生成腳本”,在日常操作中,相信很多人在Python3.7 如何讀取音頻的文件名生成腳本問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python3.7 如何讀取音頻的文件名生成腳本”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
成都地區(qū)優(yōu)秀IDC服務(wù)器托管提供商(創(chuàng)新互聯(lián)).為客戶提供專業(yè)的移動服務(wù)器托管,四川各地服務(wù)器托管,移動服務(wù)器托管、多線服務(wù)器托管.托管咨詢專線:028-86922220python可以做什么Python是一種編程語言,內(nèi)置了許多有效的工具,Python幾乎無所不能,該語言通俗易懂、容易入門、功能強大,在許多領(lǐng)域中都有廣泛的應(yīng)用,例如最熱門的大數(shù)據(jù)分析,人工智能,Web開發(fā)等。
Warning: 僅適用于文件名即字幕本體,按音頻時常平均拆分來生成字幕,其他情況不適合。
以下為讀取 mp3 文件夾下的音頻,然后按市場,平均來生成字幕,例如文件名 a-pp-le.mp3
,字幕也將是 a pp le 三行。
make_srt.py 代碼
import librosa import os g = os.walk(r"mp3") def calTime(time): sec = int(time) micSec = time - sec timeStr = '' if (sec < 10): timeStr += '0' + str(sec) else: timeStr += str(sec) if micSec == 0: timeStr += ',000' else: timeStr += ',' + str(round(micSec * 1000)) return timeStr for path,dir_list,file_list in g: for file_name in file_list: filename = str('mp3/') + file_name time = librosa.get_duration(filename = 'mp3/' + file_name) split = file_name.strip('.mp3').split('-') count = file_name.count('-') + 1 average = time / count # y, sr = librosa.audioread('phonics_demo/' + file_name, sr=None) # print(sr) if count > 1: for inx, val in enumerate(split): # print(time) f = open("srt/" + file_name + ".srt",'a') f.write(str(inx + 1)) f.write('\n') start = calTime((inx + 1) * average) end = calTime((inx + 2) * average) if inx == 0: f.write("00:00:00,000" + " --> " + "00:00:" + start) else: f.write("00:00:" + start + " --> " + "00:00:" + end) f.write('\n') f.write(val) f.write('\n\n')
大概效果如下:
1
00:00:00,000 --> 00:00:01,659
a2
00:00:01,659 --> 00:00:03,318broad
在大量音頻文件生成字幕之后,需要校對缺失的字幕,有個快速的手段(以Windows 10為例): 在 mp3 目錄下,按住 Shift 鍵點擊右鍵吊起 Powershell 命令行工具,輸入 ls > mp3.txt
將整個目錄的文件,一行行的輸出到 mp3.txt,直接復(fù)制進一個Excel 的 Sheet1 A列中待用,同樣的操作將 srt 文件中的目錄復(fù)制到 Sheet2 A列中,然后批量將 .srt 替換為空,然后使用 Excel 提供的 vlookup 方法,在 Sheet1 B列 =IFERROR(VLOOKUP(A1,Sheet2!A:A,1,FALSE),"")
,未找到結(jié)果的在B列將填充空,篩選一下就知道哪個文件沒生成字幕文件了。
總結(jié)
到此,關(guān)于“Python3.7 如何讀取音頻的文件名生成腳本”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
分享文章:Python3.7如何讀取音頻的文件名生成腳本-創(chuàng)新互聯(lián)
標題路徑:http://weahome.cn/article/dpiiie.html