Y.Masuyama@出先
2002-01-11 16:38:18 ( ID:s9e/mvzzc3w )
[ 削除 / 引用して返信 ]
コチラへは出遅れましたが、相変わらず TMPGEncにはお世話に
なっております。今後ともヨロシクお願いします。
◇ v2.50の変更点
> ■1つの GOP に含まれるフレーム数を制限できるようにした。
を試してみようと思い、強制ピクチャタイプを色々と弄りながら
エンコードログを比較して見ましたが、変な感じです。
・最大フレーム数指定が働いて GOP切り替わっているらしい?
位置で、ログの GOPが切り替わらない場合の方が多そう
・ログの GOPが切り替わらないケースは、自動的にI-pictureが
2frame 続けて挿入されることがある
現時点では多分「仕様」なんだと思いますが、↑に対して
(1)常にエンコードログと、実際に出力される GOPを一致させる
(2)I-pictureは、2frame続けて自動挿入しないようにする
ように修正することは出来無いでしょうか?。
可能なら是非ご検討下さい。m(_ _)m
#特に I-picture×ダブルの方は、低レートな場合に辛いです
堀
2002-01-11 23:49:39 ( ID:TMPGEnc Net )
[ 削除 / 引用して返信 ]
>・最大フレーム数指定が働いて GOP切り替わっているらしい?
> 位置で、ログの GOPが切り替わらない場合の方が多そう
エンコードログで表示される「GOP」は実際にMPEGファイルに記録された
GOPと同一ではないのです。
例えば GOP 構造に I:2 P:5 B:2 を指定してエンコードすると
I ピクチャが2枚含まれた「GOP」がエンコードログに表示されますが、
実際のMPEGファイルのGOPはこれとは異なります。
TMPGEnc は I ピクチャ毎にGOPヘッダーを付加する仕様になっているためです。
ですので、MPEGファイルを解析するとI:1 P:5 B:2 の GOP が
二つ記録されているように見えます。
「GOPの最大フレーム数制限」は、エンコードログに表示される「GOP」の
フレーム数を制限するのではなく、実際にMPEGファイルに記録される
GOPのフレーム数を制限しています。
>・ログの GOPが切り替わらないケースは、自動的にI-pictureが
> 2frame 続けて挿入されることがある
これは強制ピクチャタイプ設定の内容によってはどうしても発生してしまいます。
TMPGEnc はGOPの最大フレーム数制限をクリアでき、かつ効率が良くなるように
ピクチャタイプを自動修正したりしているのですが、最悪のケースでは
I ピクチャを2枚続けて挿入することがあります。
例えばGOPの最大フレーム数を4に設定し、強制ピクチャタイプ設定で
下記のようにピクチャタイプを指定してエンコードすると、4フレーム目で
I ピクチャが自動挿入され、さらに5フレーム目で I ピクチャが手動挿入されますので、
結果的に I ピクチャが2枚続けて挿入されたことになります。
0 1 2 3 4 5 : フレーム番号
I P P P P I : ピクチャタイプ
Y.Masuyama@まだ出先
2002-01-12 10:03:57 ( ID:s9e/mvzzc3w )
[ 削除 / 引用して返信 ]
堀さん、お忙しいところどうもです。
> エンコードログで表示される「GOP」は実際にMPEGファイルに記録された
> GOPと同一ではないのです。
> フレーム数を制限するのではなく、実際にMPEGファイルに記録される
> GOPのフレーム数を制限しています。
この二点については、認識している「ツモリ」で最初の部分は書いてます。(^^ゞ
話しを続ける前に、一点確認したいのですが、ログの「同一ではない」部分
の中で、こちらは真だと考えていました。
<ログ中で GOPが切り替われば、記録されるmpegのGOPも切り替わる>
これは、間違った認識でしょうか?。実験を進めるうちにこの部分も
「同一ではない?」ように思えるデータが増えてます。
#手持ちに解析ソフトはないため、エンコードログしか見ていません(;^-^A
> I ピクチャが自動挿入され、さらに5フレーム目で I ピクチャが手動挿入されますので、
> 結果的に I ピクチャが2枚続けて挿入されたことになります。
要望(2)は、このパターンのことではないです。日本語が下手でスミマセン。
短くまとめ様として情報を絞りすぎたのが拙かったようですので、
長くなりますが一つサンプルを上げます。
手動挿入は「P-pictureのみ」の実験例なので、I-pictureは標準の GOPの物、
または TMPGEncが自動挿入したもの「のみ」です。
<標準GOP>
I1/P4/B2
GOP中の最大フレーム数18
<強制挿入>
3,P
4,P
5,P
6,P
30,P
<ログ>
フレーム= 0 [I] 圧縮サイズ= 36096
フレーム= 3 [P] 圧縮サイズ= 20936
フレーム= 1 [B] 圧縮サイズ= 8607
フレーム= 2 [B] 圧縮サイズ= 8582
フレーム= 4 [P] 圧縮サイズ= 16459
フレーム= 5 [P] 圧縮サイズ= 16206
フレーム= 6 [P] 圧縮サイズ= 16773
フレーム= 9 [P] 圧縮サイズ= 20564
フレーム= 7 [B] 圧縮サイズ= 9085
フレーム= 8 [B] 圧縮サイズ= 9238
フレーム= 12 [P] 圧縮サイズ= 32675
フレーム= 10 [B] 圧縮サイズ= 9505
フレーム= 11 [B] 圧縮サイズ= 9025
フレーム= 15 [P] 圧縮サイズ= 24043
フレーム= 13 [B] 圧縮サイズ= 9268
フレーム= 14 [B] 圧縮サイズ= 9363
フレーム= 18 [I] 圧縮サイズ= 30095◆
フレーム= 16 [B] 圧縮サイズ= 9538
フレーム= 17 [B] 圧縮サイズ= 9252
フレーム= 19 [I] 圧縮サイズ= 30223◆
フレーム= 22 [P] 圧縮サイズ= 23573
フレーム= 20 [B] 圧縮サイズ= 9311
フレーム= 21 [B] 圧縮サイズ= 9536
フレーム= 25 [P] 圧縮サイズ= 19184
フレーム= 23 [B] 圧縮サイズ= 7879
フレーム= 24 [B] 圧縮サイズ= 8513
フレーム= 28 [P] 圧縮サイズ= 40930
フレーム= 26 [B] 圧縮サイズ= 25382
フレーム= 27 [B] 圧縮サイズ= 17896
現在のビットレート = 4118.21 kbps
フレーム= 30 [P] 圧縮サイズ= 35514
フレーム= 29 [B] 圧縮サイズ= 12194
フレーム= 33 [P] 圧縮サイズ= 40713
フレーム= 31 [B] 圧縮サイズ= 15824
フレーム= 32 [B] 圧縮サイズ= 15095
現在のビットレート = 5722.69 kbps
フレーム= 36 [I] 圧縮サイズ= 40326
フレーム= 34 [B] 圧縮サイズ= 17125
フレーム= 35 [B] 圧縮サイズ= 15320
フレーム= 39 [P] 圧縮サイズ= 36575
フレーム= 37 [B] 圧縮サイズ= 14167
(以下省略)
最初の GOPはフレーム数制限が働いて「0〜15frame」と予想してます。
要望(2)で無くして欲しかったのは、上記の 18、19frame のように
二つ自動挿入される I-pictureを指します。
<補足>
上記の設定に対して強制挿入のみ減らして「6,P」「30,P」だけにすると
「19frame」への I-picture自動挿入は、なくなります。
#上のレスには明記はされてませんが、要望(1)に対しては
#「変更の予定の無い仕様」って事ですね
堀
2002-01-13 00:30:13 ( ID:TMPGEnc Net )
[ 削除 / 引用して返信 ]
><ログ中で GOPが切り替われば、記録されるmpegのGOPも切り替わる>
>
>これは、間違った認識でしょうか?。実験を進めるうちにこの部分も
>「同一ではない?」ように思えるデータが増えてます。
仰るとおりこの部分も同一ではないのです。
強制ピクチャタイプ設定の内容によっては、Iピクチャが含まれない
「GOP」がログに表示されることもあります。これは強制ピクチャタイプ設定で
全フレームにPピクチャを指定することで再現できます。
TMPGEnc はご存じの通り、数十フレームごとに一括してエンコードを行っていますが、
エンコードログはそのエンコード単位で表示されています。
現在の仕様の方が便利なので、とりあえず現状維持とします。
>手動挿入は「P-pictureのみ」の実験例なので、I-pictureは標準の GOPの物、
>または TMPGEncが自動挿入したもの「のみ」です。
>
><標準GOP>
>I1/P4/B2
>GOP中の最大フレーム数18
><強制挿入>
>3,P
>4,P
>5,P
>6,P
>30,P
この条件でエンコードしてみると確かに I ピクチャが続けて挿入されてしまいますね。
GOP自動調整部分を見直してみます。
いろいろなパターンをうまく処理できるようにしないといけないので難しいです。
|