2020/10/17

SVT-AV1が良くわからん

9月ごろにver0.8.5が出ました。
僕が使う分には0.8.4とあまり変わらない気がしますが、ちょうど良い素材があったのでいろいろと試してみました。
・・・が、なんかまともに動きません。
前からなのかもしれませんが・・・

症状
1.メモリを異様に食う
12core/24threadのCPUでエンコードしていると、いつの間にかコミットサイズもワーキングセットも30GBになっていたりします。
いや、流石におかしいでしょ・・・
自分でビルドした奴(少し進んだコミットの)がいかんのかとおもって公式のでも試したけど症状変わらず。

2.エンコードしたものがシークしにくい
「できない」わけではないところが良くわかりません。
が、シークさせた時の症状としてはキーフレームがはるか彼方に飛んでるような感じで延々と演算するものの結局辿りつけず?絵が出てこない、という感じに見えます
短いジャンプなら行けるところがまた怪しい。

等で良くわからなかったのですが、エンコードガイドを2~3度読み返していたら
デフォルトでopen gopになってる、ということなので、これじゃね?と思ってClosedGOPで試しています。

・・・いかんせんサンプルが2時間番組なもんだからエンコードに時間がかかるというのが面倒です
とりあえず寝るか・・・

その結果
--rc 0 -q 30 --preset 8		
--keyint -2 --irefresh-type 2 --hierarchical-levels 5	
--progress 0		
-------------------------------------------
SVT [version]:	SVT-AV1 Encoder Lib v0.8.5
SVT [build]  :	Visual Studio 2019 64 bit
LIB Build date: Sep  7 2020 07:25:49
-------------------------------------------
Number of logical cores available: 24
Number of PPCS 125
[asm level on system : up to avx2]
[asm level selected : up to avx2]
------------------------------------------- 
SVT [config]: Main Profile	Tier (auto)	Level (auto)	
SVT [config]: Preset 							: 8 
SVT [config]: EncoderBitDepth / EncoderColorFormat / CompressedTenBitFormat	: 8 / 1 / 0
SVT [config]: SourceWidth / SourceHeight					: 1920 / 1080 
SVT [config]: Fps_Numerator / Fps_Denominator / Gop Size / IntraRefreshType 	: 24000 / 1001 / 33 / 2
SVT [config]: HierarchicalLevels  / PredStructure				: 5 / 2
SVT [config]: BRC Mode / QP  / LookaheadDistance / SceneChange			: CQP / 30 / 16 / 0 
------------------------------------------- 
Encoding          
SUMMARY --------------------------------- Channel 1  --------------------------------
Total Frames		Frame Rate		Byte Count		Bitrate
      161527		23.98 fps		1575347929		1870.68 kbps


Channel 1
Average Speed:		19.312 fps
Total Encoding Time:	8364050 ms
Total Execution Time:	8364780 ms
Average Latency:	7353 ms
Max Latency:		64935 ms

ということでエンコードが途中で止まることもなく、シークできないファイルが出来上がることもなく、求めていたものが出来上がりました。
preset 8で19fpsなので、まぁこれならいいかな?
あとは10bitエンコードか・・・
と思ったら普通に10bit素材を投入したらそのままエンコードできました。


11/03追加
やっぱりみんな同じことを思うようで、#1551でirefreshのデフォルト値が修正されていました

0 件のコメント:

コメントを投稿