2020年11月07日

【メモ】数値マーキング(2乗と倍数)

記稿.2020/11/07

> 十進ベーシックホームページ

DIM zxb(250,50)
FOR z=1 TO 250
LET zxb(z,1)=z^2
FOR b=2 TO 50
LET zxb(z,b)=b*zxb(z,1)
NEXT b
NEXT z
FOR z=1 TO 250
PRINT z;zxb(z,1)
FOR b=1 TO 50
IF zxb(z,b)>6000 AND zxb(z,b) <40000 THEN PRINT zxb(z,b);
NEXT b
PRINT
PRINT
NEXT z
END


※今回は配列を使ってみました
 配列は0から始まりますが、細かい差分処理はどうでもいいので端折ってます

 ‥で、なんでこんな数値を弾き出したのかというと
 {平均ビットレート:最大ビットレート}={1:1}にすると
 いやんなシミが≒100%の確率で相殺されて消えてしまう事を発見したからです
 (2.25倍でもイケるようですが、さすがにそれは無理)


 ‥思えば、平均と最大のそもそもも、時間軸の間引きを前提にした観察です
 ヒトの感覚でのそれは、複雑な画になるとビットレートを多く必要とするから‥
 して思い込んでいるようですが、エンコードの方はそうは考えていないようです

 なので、時間軸観察の入れ子式構造がどうにもそのへんの誤差を発生させるらしい
 結果、いやんなシミがソースファイルからして発生しまっくていたりするらしい


 それのシミを剥がして綺麗にするのに
 ただ単に{平均:最大}={1:1}にすれば良いかというと
 それはそれでBフレームへのビットレート割り当てが減ると残念な結果になるので
 ソースに合ったビットレート数値が欠かせません

 その時の参考として、2乗の倍数がわりかし手頃
 ということで2乗の倍数値をレベル4.1の範囲で算出させてみました


> 但し、AVCのエンコードの方で宛がった数値が適切で無いと判断した場合、変更されちまいます


 ‥といことは大体でも良いのかというと
 特にDVDタイプでは、50の差が見映えの端境においては、大きかったりするようです
 (では、変更された値を放り込んでやれば良いかというと、そういう事でも無いらしい)
↓/続きを読む/↓
posted by 木田舎滝ゆる里 at 11:23 | Comment(0) | 月下涙焉 | 更新情報をチェックする