一個(gè)錄制帶彈幕直播流的小工具(版本2)
簡(jiǎn)介
? ? 做這個(gè)小軟件的原因是最近看MDY的錄男為了擺爛找出一大堆借口,搞得人民群眾沒錄播看,于是乎在看直播的同時(shí)寫了這樣一個(gè)小工具來幫助錄男們實(shí)現(xiàn)自動(dòng)化生產(chǎn)。
? ? 結(jié)合上個(gè)版本存在的一些問題(用AE很麻煩,然后運(yùn)行也不太穩(wěn)定),這個(gè)版本可以直接錄制帶彈幕的直播流,不需要做任何轉(zhuǎn)換。

? ??本文主要介紹從沒用過Python和命令行的萌新使用這個(gè)代碼,如果你已經(jīng)有相關(guān)基礎(chǔ)可以直接看GitHub的簡(jiǎn)介。
? ? GitHub項(xiàng)目地址:https://github.com/SmallPeaches/DanmakuRender。有更新第一時(shí)間會(huì)在GitHub上更新,有問題可以先去重新下載一份最新的代碼試試。
環(huán)境準(zhǔn)備
? ??這個(gè)版本的使用方法大致和上個(gè)版本一樣,如果之前已經(jīng)安裝好環(huán)境了就不用重新裝了,只需要重新下載一份代碼文件覆蓋之前那個(gè)就行。
? ? 首先下載代碼文件,前往GitHub項(xiàng)目地址,然后依次點(diǎn)擊Code-Download ZIP按鈕下載壓縮包,并把文件解壓到你想要的位置。

? ? 下載FFmpeg。首先下載ffmpeg壓縮包(https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-essentials.7z),下載完成后解壓,把bin/ffmpeg.exe文件復(fù)制到代碼目錄下的tools文件夾里就行了,最后tools文件夾至少有以下文件。

? ? 然后下載Python(不知道怎么下的就下載這個(gè) https://www.python.org/ftp/python/3.10.0/python-3.10.0-amd64.exe)。安裝時(shí)一定要注意選擇Add Python xxx to PATH這個(gè)選項(xiàng),至于安裝路徑什么的可以自由選擇。

? ? 下載完成后打開之前下載的代碼所在的文件夾(pyrender.py所在的文件夾),然后打開命令行窗口(win10系統(tǒng)shift+右鍵點(diǎn)擊頁面空白處,在菜單中選擇“在此處打開powershell窗口”,win11直接右鍵選擇“打開Windows Terminal窗口”)。輸入python -V并回車執(zhí)行,如果出現(xiàn)Python+版本號(hào)的輸出(例如Python 3.10.0)說明Python安裝成功,可以執(zhí)行下一步,否則檢查前面的Python安裝步驟是不是沒做好。
? ? 注意:在Windows 10 舊版本及更早的系統(tǒng)中,可能會(huì)出現(xiàn)安裝好了也無法正常顯示的情況,只要在安裝完成后重啟一下電腦就好了。
? ? 繼續(xù)之前的命令行窗口,輸入pip install -r requirements.txt安裝Python包,安裝完成后就可以開始執(zhí)行程序了。
? ? TIPS:可以使用鍵盤方向鍵(上下箭頭)選擇之前執(zhí)行過的命令,右鍵可以復(fù)制粘貼內(nèi)容。
運(yùn)行程序
? ? 這里只給出一些常見的使用指令,具體的參數(shù)請(qǐng)大家參考GitHub(https://github.com/SmallPeaches/DanmakuRender#詳細(xì)說明)
注意事項(xiàng):
理論上每次執(zhí)行都需要在代碼所在文件夾下打開命令行窗口,以下命令均在命令行窗口下輸入。如果不想輸命令的話直接雙擊pyrender.py也能運(yùn)行,不過就不能修改除了錄制路徑之外的參數(shù)了。
程序默認(rèn)使用NVIDIA的硬件編碼器,如果用A卡的話需要另外附帶參數(shù)。
程序默認(rèn)錄制碼率是15Mbps(大概一個(gè)小時(shí)6-7GB),運(yùn)行大概消耗30%-40%的CPU,10%-20%的GPU以及1GB內(nèi)存(在i7-8750H+GTX1060下測(cè)試)。
實(shí)例:
python pyrender.py -u https://www.huya.com/712416 錄制虎牙712416直播間,其他選項(xiàng)全部默認(rèn)(錄制出來就是簡(jiǎn)介圖片里的效果)
python pyrender.py -u https://www.huya.com/712416 -n 甜藥?錄制虎牙712416直播間,并將錄制名稱設(shè)置為甜藥(然后輸出文件名稱就會(huì)以甜藥xxx開頭)
python pyrender.py -u https://www.huya.com/712416?-n?甜藥?-s 3600 錄制甜藥直播間,并將文件分成一個(gè)小時(shí)一塊。
python pyrender.py -u https://www.huya.com/712416?-n?甜藥?--gpu amd 使用AMD顯卡,錄制甜藥直播間。
python pyrender.py -u https://www.huya.com/712416?-n?甜藥?--fontsize 36 錄制甜藥直播間,指定彈幕大小為36像素(默認(rèn)大小是30像素)
python pyrender.py -u https://www.huya.com/712416 --debug 錄制虎牙712416直播間,將錄制的具體信息輸出,建議在運(yùn)行之前用這個(gè)指令先試一下錄制正不正常。如果出現(xiàn)問題的話也可以用這個(gè)指令運(yùn)行然后把輸出發(fā)給我。
成功運(yùn)行的效果應(yīng)該是這個(gè)樣子(一定要后面的time在變化,speed接近1才算成功):

注意:如果信息一行顯示不完然后輸出很亂的話就把命令行窗口拉寬一點(diǎn)。
最后
????如果有bug很正常。如果出了bug可以私信或者在GitHub上面提交issue,我會(huì)盡量幫你解決。另外有什么好的改進(jìn)想法也可以和我說。
????感謝 THMonster/danmaku, wbt5/real-url, ForgQi/biliup 的工作。