主頁 >  其他 > 實戰詳細講解ffmpeg命令的使用(來自一線的經驗,視頻合并&avi轉MP4&補空白音頻【收藏下來一定用的到】)

實戰詳細講解ffmpeg命令的使用(來自一線的經驗,視頻合并&avi轉MP4&補空白音頻【收藏下來一定用的到】)

2021-08-23 09:05:35 其他

您好,我是碼農飛哥,感謝您閱讀本文,歡迎一鍵三連哦
本文從實戰的角度出發詳細講解ffmpeg命令的使用,
干貨滿滿,建議收藏,需要用到時常看看, 小伙伴們如有問題及需要,歡迎踴躍留言哦~ ~ ~,

文章目錄

    • ffmpeg的介紹以及安裝
    • 基本概念說明
    • ffmpeg命令使用的通用格式
    • ffmpeg一些常用命令引數
      • 通用選項
      • 視頻選項
      • 音頻選項
    • ffmpeg的實戰
      • 1.webm轉mp4的命令
      • 2. 視頻合并命令
      • 3. 視頻剪切
      • 4. 提取音頻
      • 5. 音量調整
      • 6. 音頻同軌
      • 7. 配音音頻補空白音頻
      • 8. 給視頻添加聲音(視頻和音頻結合)
      • 9. avi轉mp4
    • 總結
    • 參考
    • Python知識圖譜

ffmpeg的介紹以及安裝

ffmpeg是一個非常快速的視頻和音頻轉換器,也可以從實時音頻/視頻源中抓取,它還可以在任意采樣率之間進行轉換,并使用高質量的多相濾波器動態調整視頻大小,他能夠兼容Windows,Linux以及mac三種作業系統(說白了就是這三種作業系統都能用),
ffmpeg的下載地址是:ffmpeg的下載地址
安裝程序沒啥好說的,按照提示一直點下一步就行了,這里需要說明的一點是ffmpeg安裝好之后最好在PATH中配置ffmpeg的環境變數,配置好之后在命令列中輸入ffmpeg會出現如下結果:

在這里插入圖片描述

基本概念說明

位元率:指的是每秒傳送的位元(bit)數,單位是bps,
幀速率:指的是每秒重繪的圖片的幀數,也可以理解為圖形處理器每秒鐘能夠重繪幾次,單位是fps(Frames per Second)或者"赫茲(Hz)",

ffmpeg命令使用的通用格式

ffmpeg命令使用的通用格式如下所示:

ffmpeg [ global_options ] {[ input_file_options ] -i 輸入檔案地址} ... {[ output_file_options ] 輸出檔案地址} ...

ffmpeg :表示呼叫ffmpeg程式的命令,如果沒有配置環境變數的話則需要指定ffmpeg.exe的絕對路徑,就像下面這樣D:\\develop\\ffmpeg-4.3.2-2021-02-20-full_build\\bin\\ffmpeg.exe
global_options:用于指定全域操作引數,比如 -y 引數,可選的引數,
input_file_options:用于指定輸入檔案的操作引數,比如:-f concat 引數等
-i: 指定輸入檔案的地址,必要引數,
output_file_options: 用于指定輸出檔案的操作引數,可選引數,

ffmpeg一些常用命令引數

要想熟練的使用ffmpeg命令,就需要掌握ffmpeg的一些常用命令引數,

通用選項

通用選項就是指對音頻視頻都使用的命令引數,

引數作用作用范圍示例
-f強制輸入或輸出檔案格式,通常會自動檢測輸入檔案的格式,并根據輸出檔案的檔案擴展名猜測格式,因此在大多數情況下不需要此選項全域
-i 地址輸入檔案的地址輸入
-y覆寫輸出檔案,即當output.mp4存在時,不經提示覆寫該檔案全域
-i指定輸入檔案的地址,如果跟ffmpeg則可以寫 xxx.mp4,否則則需要寫全路徑輸入
-n不要覆寫輸出檔案,即如果指定的輸出檔案已經存在,則立即退出全域
-stream_loop編號設定輸入流應回圈的次數,回圈 0 表示不回圈,回圈 -1 表示無限回圈,輸入
-c[: stream_specifier ]編解碼器輸入/輸出,每個流-c copy (就是按照輸入流的編碼稱呼輸出流)
-codec[: stream_specifier ]編解碼器,為一個或多個流選擇編碼器(在輸出檔案之前使用時)或者解碼器(在輸入檔案之前使用時)輸入/輸出,每個流ffmpeg -i 輸入 -map 0 -c:v libx264 -c:a 復制輸出 (使用 libx264 編碼所有視頻流并復制所有音頻流,)
-t持續時間輸入/輸出,當用作輸入選項時,限制從輸入檔案讀取資料的持續時間,當用作輸出選項時(在輸出url之前),在其持續時間達到duration后停止寫入輸出,duration必須是持續時間-t 20 (持續20秒)
-fs limit_size是指檔案大小限制,以位元組為單位,超出限制后不會再寫入更多的位元組塊,輸出檔案的大小略大于請求的檔案大小,輸出
-ss位置當用作輸入選項時,在輸入檔案中尋找位置,多用于視頻剪切輸入/輸出-ss 15 (從第15秒開始)
-ss位置當用作輸入選項時,在輸入檔案中尋找位置,多用于視頻剪切輸入/輸出-ss 15 (從第15秒開始)
-dn作為輸入選項,阻止檔案的所有資料流被過濾或自動選擇或映射用于任何輸出輸入/輸出-ss 15 (從第15秒開始)
-frames[: stream_specifier ]幀數即是生成指定幀數的視頻輸出
-filter[: stream_specifier ] filtergraph ( output,per-stream )創建由filtergraph指定的filtergraph并使用它來過濾流,filtergraph是對應用于流的 filtergraph 的描述,并且必須具有相同型別的流的單個輸入和單個輸出,輸出

視頻選項

視頻選項,指的是只作用于視頻的命令引數,

引數作用作用范圍示例
-vframes數設定要輸出的視頻幀數
-r fps設定幀率(HZ值、分數或縮寫),作為輸入選項,會忽略視頻檔案的視頻時長,而是假設恒定幀速率fps生成時間戳,作為輸出選項,復制或洗掉輸入幀以實作恒定的輸出幀速率fps,輸入/輸出-r 30 (30幀/秒)
-s 大小設定幀大小,格式為’寬高’輸入/輸出,每個流
-vn作為輸入選項,阻止檔案的所有視頻流被過濾或自動選擇或映射到任何輸出,作為輸出選項,即自動選擇或映射任何視頻流,可用于從視頻中提取音頻輸入/輸出

音頻選項

音頻選項,指的是只作用于音頻的命令引數,

引數作用作用范圍示例
-aframes編號設定要輸出的音頻幀數輸出
-ar 頻率設定音頻采樣頻率,對于輸出流,它默認設定為相應輸入流的頻率,對于輸入流,此選項僅對音頻抓取設備和原始解復用器有意義輸入/輸出-ar 24000 (以24000Hz采集音頻)
-aq q設定音頻質量(只作用于編解碼器,VBR)輸出
-ac 通道設定音頻通道數,對于輸出流,它默認設定為輸入音頻通道的數量輸入/輸出,每個流-ac 2 (聲道數設定為2)
-an作為輸入選項,阻止檔案的所有音頻流被過濾或自動選擇或映射到任何輸出,作為輸出選項,禁用音頻記錄,即任何音頻流的自動選擇或映射輸入/輸出
-acodec編解碼器設定音頻編解碼器輸入/輸出-acodec aac (音頻編碼用aac)
-vol 百分比設定百分之多少的音量輸入/輸出-vol 150(150%的音量)
-map file:stream設定輸入/輸出流映射輸入/輸出

ffmpeg的實戰

說完了ffmpeg的命令引數,接著就讓我們來實戰一下,示例中的所有視頻和音頻都放在了D:\\ffmpeg_test目錄下,

1.webm轉mp4的命令

webm格式的視頻是所有瀏覽器支持的視頻格式,前端在錄制好視頻之后傳入給后端一個webm格式的視頻,通常我們需要將webm格式的視頻轉成mp4格式的視頻,

ffmpeg -y -i  D:\\ffmpeg_test\\1.webm  -r 30  D:\\ffmpeg_test\\1.mp4

這里就是將1.webm的視頻轉成每秒30幀的視頻1.mp4,這里指定1.mp4的絕對路徑,如果不指定的話則生成的視頻檔案會落到當前ffmpeg命令的執行目錄下, 運行結果是:
在這里插入圖片描述
在這里插入圖片描述

2. 視頻合并命令

當上傳的視頻比較大時或者用戶分段錄制視頻時,前端會傳入多段視頻給后端,這時候就需要進行視頻的合并操作,使用ffmpeg命令進行視頻合并操作分為兩步,

  1. 首先新建一個名為filelist.txt 的檔案,在該檔案中將需要合并的視頻地址寫入該檔案,比如D:\ ffmpeg_test目錄下有 1.mp4和2.mp4需要合并,則寫入的格式如下:
    在這里插入圖片描述
  2. 執行視頻合并的ffmpeg的命令:
ffmpeg -f concat -safe 0 -y -i D:\\ffmpeg_test\\filelist.txt -c copy -strict -2 D:\\ffmpeg_test\\concated.mp4

命令的解釋:這里就是將前面的filelist.txt記錄的1.mp4和2.mp4兩個視頻合并成一個名為concated.mp4的視頻,
-f concat:指定該操作是合并操作
-safe 0:用于避免操作輸入流的權限問題
-c copy:用于指定輸出視頻流和輸入視頻流的編碼格式保持一致
-strict -2: 用于避免opus in MP4 support is experimental這個問題,
詳細可以參考使用ffmpeg進行視頻合并時幾個問題記錄 Operation not permitted
運行結果是:
在這里插入圖片描述
在這里插入圖片描述

3. 視頻剪切

原始視頻弄好之后,用戶可能對視頻不太滿意,需要將不好的視頻片段剪切掉,其操作命令也很簡單,
這就就是將原始視頻concated.mp4從第15秒開始剪切,剪切成一個25秒的新視頻clip.mp4,

ffmpeg -ss 15 -t 25 -i D:\\ffmpeg_test\\concated.mp4  -c:v libx264 -c:a aac -strict experimental D:\\ffmpeg_test\\clip.mp4

引數介紹:
-ss 15 :從第15秒開始剪切視頻,
-t 25 :指定剪切后的視頻時長為25秒,
-c:v libx264: 指定視頻的編碼格式為libx264格式,
-c:a aac :指定音頻的編碼格式為aac格式,
-strict experimental :安全處理,
運行結果是:
在這里插入圖片描述
在這里插入圖片描述

4. 提取音頻

現在用戶滿意的視頻剪切好了,用戶可以進入配音環節了,在進行配音之前我們首先需要將原視頻的音頻從原視頻中分離出來,提取音頻的操作比較簡單,其命令是:

ffmpeg -y -i D:\\ffmpeg_test\\concated.mp4 -vn D:\\ffmpeg_test\\output.wav

這里就是從concated.mp4視頻中提測其原音頻,原音頻的名字是output.wav,這里 -vn 指定了輸出音頻的編碼格式跟視頻的音頻格式保持一致,運行結果是:
在這里插入圖片描述
在這里插入圖片描述

5. 音量調整

原視頻的音頻分離出來之后,用戶可以一邊播放原音頻,一邊錄制配音了,這時候用戶可能需要想調整音頻的音量,調整音量的操作也很簡單,
下面就是將音頻的音量調整為原來的80%,

ffmpeg -y -i D:\\ffmpeg_test\\output.wav -af "volume=0.8" D:\\ffmpeg_test\\output_80.wav
或者
ffmpeg -y -i D:\\ffmpeg_test\\output.wav -vol 80 D:\\ffmpeg_test\\output_80.wav

這里需要注意的是如果是第一種方式的話-af "volume=數值" volume的數值必須是除以100之后的值,而-vol 數值 數值直接傳入百分比,
運行結果是:
在這里插入圖片描述
在這里插入圖片描述

6. 音頻同軌

配音配好之后,我們想著將原音頻和配音音頻合并成一條音頻,這里就需要進行音頻同軌了,其命令是:

ffmpeg -y -i D:\\ffmpeg_test\\org_video_sound_input.wav -i D:\\ffmpeg_test\\org_voice_input.wav -filter_complex amix=inputs=2:duration=longest D:\\ffmpeg_test\\org_voice_output.wav

這里就是將音頻org_video_sound_input.wav和org_voice_input.wav音頻合并成一條音頻org_voice_output.wav,其核心的命令引數是:
-filter_complex amix=inputs=2:duration=longest: 這里使用-filter_complex指定復雜的過濾器圖,amix=inputs=2:duration=longest采用amix過濾器指定輸入音頻的數量是2個,時長取最長的那個音頻的時長,運行結果是:
在這里插入圖片描述

7. 配音音頻補空白音頻

配音配好之后,但是一般情況下配音音頻的時長不等于原音頻的時長,這時候就需要將沒有配音的時長補空白音頻,補空白音頻的操作稍微有點復雜,其操作思路分為三步,

  1. 生成一個跟原音頻時長一樣的空白音頻,其命令是:
    這里假設原音頻的時長是20秒,所以就生成一個時長為20秒的空白音頻,
ffmpeg -y -f lavfi -i anullsrc -t 20 D:\\ffmpeg_test\\silence.wav
  1. 將配音音頻開頭部分補空白音頻(比如用戶是從原音頻的第2秒處還是配音,那么配音音頻的前2秒就需要補空白音頻),其命令是:
ffmpeg -y -i D:\\ffmpeg_test\\silence.wav -i D:\\ffmpeg_test\\org_voice_input.wav  -filter_complex "aevalsrc=0:d=2 [s1];[s1][1:a]concat=n=2:v=0:a=1[aout]" -c:v copy -map [aout]  D:\\ffmpeg_test\\org_voice_output_silence.wav

其中:D:\ffmpeg_test\silence.wav 是第一步生成的空白音頻,D:\ffmpeg_test\org_voice_input.wav 是用戶配音的音頻,
d=2 :用于指定是補空白的點,就將0秒到2秒這段時長補空白,
-c:v copy:音頻的編碼格式不變,
4. 將補完空白音頻的配音音頻跟第一步生成的空白音頻同軌就得到了一個和原音頻時長一樣的配音音頻,其命令是同第前面的第6節,在此就不在贅述了,

ffmpeg -y -i D:\\ffmpeg_test\\org_voice_output_silence.wav -i D:\\ffmpeg_test\\silence.wav -filter_complex amix=inputs=2:duration=longest D:\\ffmpeg_test\\org_voice_output_result.wav

運行結果是:
在這里插入圖片描述

8. 給視頻添加聲音(視頻和音頻結合)

視頻和音頻的結合,就是將前面生成的帶配音的音頻和原視頻結合,其命令是:

ffmpeg  -y -i D:\\ffmpeg_test\\user_video.avi  -i D:\\ffmpeg_test\\org_voice_output_result.wav -c:v copy -c:a aac -strict experimental D:\\ffmpeg_test\\user_video_target.avi

輸入視頻是:user_video.mp4,輸入音頻是:org_voice_output_result.wav,輸出視頻是:org_voice_output_result.avi
-c:v copy: 指定輸出視頻的格式和輸入視頻的格式保持一致,
-c:a aac : 指定輸出視頻的音頻編碼格式是aac格式,
運行結果是:
在這里插入圖片描述

9. avi轉mp4

有點遺憾的是生成的avi格式的視頻不能在瀏覽器上直接播放,所以,我們需要將avi格式的視頻轉成mp4格式的視頻,其轉換命令是:

ffmpeg -y -i D:\\ffmpeg_test\\user_video_target.avi -c:v libx264 -crf 19 -preset slow -c:a aac -b:a 192k -ac 2 D:\\ffmpeg_test\\user_video_target.mp4

這里輸入視頻是:user_video_target.avi,輸出視頻是:user_video_target.mp4,
-c:v libx264 :指定視頻的編碼格式是libx264格式,
-c:a aac :指定音頻的編碼格式是aac格式,
-b:a 192k :指定輸出視頻的位元率是192kbits,
運行結果是:
在這里插入圖片描述

總結

本文從實戰的角度出發詳細介紹了ffmpeg的使用,相信對讀者朋友們一定大有幫助,

參考

ffmpeg 常用命令總結:(avi轉MP4、MP4轉ts、視頻壓縮、去除視頻聲音、合并音頻和視頻)
ffmpeg的官方檔案

Python知識圖譜

為了更好幫助更多的小伙伴對Python從入門到精通,我從CSDN官方那邊搞來了一套 《Python全堆疊知識圖譜》,尺寸 870mm x 560mm,展開后有一張辦公桌大小,也可以折疊成一本書的尺寸,有興趣的小伙伴可以了解一下------掃描下圖中的二維碼即可購買,

在這里插入圖片描述
我本人也已經用上了,感覺非常好用,圖譜桌上放,知識心中留,
在這里插入圖片描述

我是碼農飛哥,再次感謝您讀完本文

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/295763.html

標籤:其他

上一篇:Python OpenCV9:OpenCV 影像特征提取

下一篇:《零基礎安裝 Oracle 資料庫》單機系列 ② 一鍵快速安裝 Oracle 12CR2 資料庫

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more