• 3

請問利用 HandBrake 軟體 NVEnc編碼效率疑問?

jjx874 wrote:
利用 NVEnc編碼 (GPU轉檔) 壓制的處理效率會因為顯示卡的等級 不同會有差異嗎?

1.同一代显卡大概分两阶,同阶效率一样
具体看这里NVENC - Encoding展开下的规格,规格一样速度就一样
https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new

2.4K-60P補幀,转一部电影要一周时间的,你打算搞么


1.我查看過,您給的網址,如果以4070TI 和 4070兩張來看,兩者看起來唯一差別只有TOTAL OF NVENC 數字差1,這個意思是?

通常 4K影片軟體用GPU硬轉成4K或2K.H265 10BIT,時間長短效率跟CUDA數量沒有關係是嗎?

小少爺丹 wrote:
1.我查看過,您給的網址,如果以4070TI 和 4070兩張來看,兩者看起來唯一差別只有TOTAL OF NVENC 數字差1,這個意思是?

通常 4K影片軟體用GPU硬轉成4K或2K.H265 10BIT,時間長短效率跟CUDA數量沒有關係是嗎?


1应该是指显卡上nvenc的芯片数量

nvenc跟cuda数量无关,它是用专门一块芯片来编码的
编码能力每代显卡不同,但是同规格的性能应该相同:
https://docs.nvidia.com/video-technologies/video-codec-sdk/12.1/nvenc-application-note/index.html
小少爺丹 wrote:
1.我查看過,您給的網址,如果以4070TI 和 4070兩張來看,兩者看起來唯一差別只有TOTAL OF NVENC 數字差1,這個意思是?


這就是encoder engine的數目, 兩個NVENC可以
1. Split encoding: 超過4K的畫面會分割成兩部分, 分給兩個NVENC編碼, 因此編碼速度會變快(僅限HEVC跟AV1)
2. Encoding more streams in parallel: 處理多個stream時, 可將不同的stream交給不同的NVENC進行編碼, 因此throughput會增加. 但若只有一個(不超過4K的)stream, 雖然frame仍能分配給多個NVENC處理, 但frame的編碼是有順序的, 一個frame做完才能做下一個(因需處理P及B frame), 因此總體編碼速度並不會變快
3. 是 2.的一種應用, 在影片剪輯完要導出時, 各個片段(可視為獨立的stream)可交給不同的NVENC進行編碼, 導出速度更快

參考資料: 這邊, 從 NVIDIA Video Codec SDK 12.0 features 開始
1tac wrote:
這就是encoder engine的數目, 兩個NVENC可以
1. Split encoding: 超過4K的畫面會自動分割成兩部分, 分給兩個NVENC編碼, 因此編碼速度會變快
2.在影片片剪輯完要導出時, 各個片段(可視為獨立的stream)可交給不同的NVENC進行編碼, 導出速度更快


謝謝 1tac大大,願意無私花時間看原文幫忙解答疑問,所以TOTAL OF NVENC = 2 的GPU,NVENC編碼處理的效率會更快,本想說如兩張卡片影片編碼效率相同的話,有打算換成較省電的 4070顯卡說。
小少爺丹 wrote:
謝謝 1tac大大,...(恕刪)

4070用nvenc编码和4050 laptop同一个水平
4070ti往上才有差别




按照nvidia的数据,如果是纯nvenc编码的话,1060都好过4090

p1 12 E..V...... fastest (lowest quality)
p2 13 E..V...... faster (lower quality)
p3 14 E..V...... fast (low quality)
p4 15 E..V...... medium (default)
p5 16 E..V...... slow (good quality)
p6 17 E..V...... slower (better quality)
p7 18 E..V...... slowest (best quality)

P7是最慢最高质量转码预设,一般转码都用这个
jjx874 wrote:
4070用nvenc编码和4050 laptop同一个水平
4070ti往上才有差别


JIX大大,想請問,如果我把4070TI換成4060TI或4060級別的話,轉檔編碼2K或4K影片檔,HandBrake 軟體相同編碼設定參數,GPU硬解轉出來的影片畫質和速率會有差嗎? 因為我後來考量,4070TI雖有雙編碼單元,但
爬文友看到需軟體有支援才可以,不然一樣沒作動,只會用到單一個編碼單元。
我是在電影相關做了7年多但還不算資深的中年人,針對你提的問題,大概回覆,不過我個人對升格這件事很在意,所以那方面的解釋會佔較大篇幅(挑我自己想講的部份),自以為是或有錯誤之處請別介意。

① HandBrake 編碼設相同參數,轉出來的檔案就不會有差異,不因顯卡不同而變化。

② 24格或23.98的電影,絕對不要改變格率或升到60格,不會比較好,反而可能畫質變差或佔空間。
電影不是電玩,沒有人在追求"格率越高越好"這件事。
根據設定的不同,將24格升至60格會發生以下幾種情況:
1. 採相近影格的設定時,原本一秒24格的影片,會以一個影格重複(凍結)2到3格方式,視覺上仍是每秒24格,但影片格式標示為每秒60格,由於60除以24是2.5倍無法整除,所以某些影格會凍結3格,視覺上也許固定每過幾秒會有停頓感。
2. 採混合影格的設定時,插補的影格會取前後影格重疊再混合,大動作時會出現明顯的疊影/鬼影。
3. 採光流或AI計算的設定時,插補的影格會取前後影格,透過CPU無中生有計算出該有的影格,現階段來說還是相當不自然。



③ 關於畫質:假設同樣是H.264編碼,每秒24格的影片,每秒流量(碼率Bitrate)是25Mbps,升格至60格之後,每一秒裡的畫面張數變多,但碼率設為相同,代表每一秒25Mbps要分給60張畫面去分配,勢必每一張畫面要壓縮成更低的畫質(註:雖然MPEG4的IPB編碼方式不像ALL-Intra幀內壓縮那樣將流量分給每一幀(格),但概念上可以這樣理解)。

所以你透過轉檔的主要目的,應該是在將AVC(H.264)轉成HEVC(H.265)時,因為編碼演算的進步,使得HEVC在相同或接近畫質之下,能以較低的每秒流量(碼率Bitrate)播放、以較小的容量儲存,而不是在轉檔過程中改變、提升格率,那不會讓畫質變好,我們只求盡量接近原始畫質,而不是想辦法去增強它。

可以提升影片格率的情況只有在,例如你正在看運動比賽,而你的電視有支援升頻的情況下,你可以試試看打開該電視的功能。

否則,就算你有每秒刷新率244Hz的電競螢幕,有N家4090顯卡,你還是得用24格看電影,因為電影就是用24格拍攝的,以原生格率播放便是最接近原始畫質的觀看方法。

即使AI現在好像要起飛了,假設下一代50的卡能在AI加持下,計算出毫無鬼影的插補幀,你也不該將24格的電影升格到60幀,因為那樣就不像電影了,在有人嘗試將電影以電視29.97格式,拍攝且播放的時候,有個名詞叫肥皂劇效果,就是在講這件事,電影看起來像電視般廉價,但電影本來就是為了營造一種似真非真的感受,所以電影才會堅持住每秒24格這一點。
關於這種"情懷",我之前翻過一部YT影片字幕,有興趣可以參考看看。



④ 關於影片編碼,一直以來編碼靠的都是CPU(軟體編碼),但為了避免作業系統因編碼而損失效能,所以Intel使用CPU裡的核顯/內顯,來做到硬體加速,Intel核顯裡的硬體編碼加速,稱為Intel Quick Sync。
HEVC編碼出現以後,因為其編碼的演算法太過複雜,而GPU顯卡擅長同時處理大量複雜的計算,所以Nvidia跳出來以支援HEVC編碼及AVC編碼的顯卡NVENC技術,來做為影像硬體編碼加速。
所以當你沒有用NVENC技術來做硬體加速編碼時, GPU不動是很正常的,這時轉檔軟體也許正在用Quick Sync硬體加速編碼,但Quick Sync使用的內顯使用率,也不一定會秀在CPU使用率上,要看你用什麼資源監控程式來看。

⑤ AV1編碼,即便它開源,但聽說編碼又比HEVC複雜,需要的時間也更多,雖然有少數的卡,及少數的YT 4K影片支援AV1播放了,但以這個發展速度來看,到時AV1可能還沒普及,H.266可能又跳出來搶盡風頭了。

⑥ 樓上有提到「IPB frame的編碼是有順序的, 一個frame做完才能做下一個」(應該是說要先有I關鍵影格,才能接著有P預測影格及B雙向預測影格),因此目前的"硬體加速編碼",都還不支援 2 Pass 二次編碼。
至於你提到的有部分卡,有兩個NVENC編碼單元,NVENC這部份我不熟就不敢亂說,不過我在用的Mac Studio,是有四個影像編碼引擎,所以能不能一次用多個引擎,真的就是看你的轉檔軟體了,至於會不會比較快呢,不一定,有時候反而會因為AVC mp4 本身的編碼效率不佳,而卡住瓶頸CPU上不去,而不是CPU不夠力。
Ghostwriter

升頻還是比較適合用在動畫,而且很多時候每部都要動手自己調,AI沒有普通人想的那麼無所不能

2023-07-05 23:40
BILLBODY

請問一下,如果是平時自己拍的生活記錄影片只要單純換掉H.264成H.265來降低影片容量就好呢?生活記錄類的影片的格率會有什麼建議嗎?

2023-08-13 13:07
msns90046 wrote:
1.
要看你改壓成哪種編碼
H.264/AVC轉H.265/HEVC最多可以壓到1/2容量(但肉眼畫質無顯著影響)
雖然4070Ti有支援最新的AV1,不過轉非H.264/AVC要注意是不是能在你要用的裝置上撥放
若無特殊需求單純要庫存那H.265/HEVC即可

畫質差異看GPU世代的新舊
其實都會有GPU硬壓比軟壓爛的觀念,但現在GPU硬壓的品質相當強勁
但若是強迫症收藏黨還是別去考慮重編碼了,對強迫症來說只要動過就必定有差
(收藏黨我建議多備份)

轉檔完一定要用眼睛親自檢視一次,多測試幾次不同設定可接受再刪原檔
GPU硬壓遇到問題先改用CPU軟壓來測試


2.
其實開源軟體底下幾乎都是用ffmpeg為核心,Handbrake也不例外
Handbrake是如同傻瓜相機走簡單易用路線

比較講究還是得從ffmpeg的命令列用法下手
缺點是要慢慢研究指令,很多得手動定義,這已經遠遠超出進階設定的範圍了

不想都用命令列慢慢輸入我推薦可用ffbatch,雖然依舊要打指令至少介面好用很多
除了GPU加速以外要細還得研究B-frame、CQP、CRF、VBR、2-pass、look ahead等專業術語


3&4.
你需要的是補幀,單純輸出拉高FPS沒有太大用處
現在有AI補幀可以用顯卡加速,可參考Gigapixel AI

當然補進去的內容是電腦算出來的,強迫症的話還是務必保留原檔
再次強調轉檔完一定要用眼睛親自檢視一次,多測試幾次不同設定可接受再刪原檔

有用
人家解釋了那麼多,我只想說
請不要浪費生命、浪費硬體做這種事,沒意義啊
本人多年影片壓製經驗,依序回答樓主問題
1、NVEnc編碼 (GPU轉檔) 壓制的處理效率會因為顯示卡的等級 不同會有差異嗎? 還是都一樣?
答:
同一代幾乎都一樣,但4090開始旗艦卡有雙NVEnc晶片,有翻倍編碼性能。

加碼回答,如果要求畫質,還是用x264、x265軟壓

2、有其他推薦的軟體嗎?
德國老牌免費軟體XMedia Recode 64bit,支援各種格式邊、解碼,進階編碼設定,也支援答:
NVEnc,舊的版本有支援舊卡CUDA

3、一般電影原始為 24P 如果我轉檔時影格率選 60P ,這樣影像會比較流暢,還是根本沒差?
答:
如果你是用一轉檔軟體,可以跟你說流暢度沒差,轉檔軟體只會插入相同禎,頂多可以避免顯示器影片禎率不同步(英語Judder),如果要追求流暢度,現階段只能依靠AI軟體(例如Topaz)但是曠日廢時,建議買有MEMC功能的電視,或者用SVP之類軟體比較實際。

4、
Topaz Video AI,可以Upscale(1080p>>4K)或補禎(24FPS>>60FPS)
但需要高階顯卡,依需要的品質而定,處理一部電影可能要幾天
小少爺丹
小少爺丹 樓主

感謝JKKGGOODD大大回復,我不糾結60P影片,因太損畫質,確實要追求畫質,欲收藏片子一定用CPU軟壓2PASS才會好,NVEnc編碼求的是效率快,畫質達9成,肉眼不仔細比較已經沒差很多。

2024-10-02 20:21
JJKKGGOODD

那我會建議樓主【小少爺丹】使用二次編碼可變位元率,設定檔High、編碼速度最慢,等級Level 6.2,音軌部分直接選擇【複製】不要再編碼,我自己是使用AMD R9 5900X編碼速度還可以

2024-10-03 3:15
  • 3
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?