私は約100ミリ秒離れたキーフレームを持つH.264エンコードされたビデオを持っています。私は特定のキーフレームを探すことができないことを知りました。シークした後、再生ヘッドは希望の時間(キーフレーム時間)にジャンプし、数ミリ秒前または後にジャンプします。 2.86
ns.t:2.86
ns.t:2.86
[10時12分01秒GMT + 0100] VideoPlayerNetStream: - のNetStreamたNetStatusEvent NetStream.timeは私のためのトレース出力リレーはNetStream.seek(ミリ秒単位)
ns.tのように見えます。 Seek.Notify時間:ns.time = 2.86
[10時12分02秒GMT + 0100] VideoPlayerNetStream:Seek.Notify info.seekPoint:未定義
ns.t:2.76
ns.t:2.76
NS。 t:2.76
ns.t:2.76
ns.t:2.8
ns.t:2.8
私は2.76(thats 2秒と76ミリ秒)を探しています。あなたが望むキーフレーム(2.76のキーフレームがあります)を探していますが、2.8にジャンプしています。これは、フレームを後方に機能させるために多くの問題を引き起こします。 奇妙なことに、いくつかのキーフレームでは機能し、一部のキーフレームでは機能しません。ビデオに問題はありますか?ビデオが正しくエンコードされているかどうかテストできますか? Googleで検索したところ、人々はキーフレーム以外のものを探すのに問題があることが示されました。しかしここで私はキーフレームを探しています。このアプリケーションは、数秒離れたキーフレームを持つビデオに使用できます。この問題は、ビデオのエンコーディングが異なってエンコードされたときに発生し、ミリ秒単位の機能を実現しました。
私は長い間この問題に苦しんでおり、解決のためのヒント/ポインタを受け取っていただければ幸いです。
Vrushali
私の問題は、ビデオが一時停止状態であるにもかかわらず、再生ヘッドの時間が希望の値に更新された後、再度変更される(数ミリ秒先に進みます)ということです。この新しい時間はキーフレーム時間でもありません。したがって、シークが完了した後でも、再生ヘッドは期待値を表示しません。私が質問で説明したように、私は時間2.76でキーフレームを求めます。再生ヘッドの時間プロパティは2.76に更新され、2.8に変更されます。次のフレームで前のフレームを検索すると、2.76が前のフレーム(2.76 <2.8)になります。だから私は再び2.76を求めなければなりません。しかし、それは2.76ではなく、2.8になることは決してありません。 – Vrushali
"seekは、*指定された時間の後の最初のキーフレーム*の時間に移動します"ので、 "ジャンプ"の前進は "通常"の動作です:指定した時間後に再生ヘッドが最初のキーフレームにスナップします。キーフレームの前にちょっとした時間を探してみてください。デルタが0.04秒(2.8-2.76 = 25pfs)の場合、2.72(2.76-0.04)の時間に達すると、再生ヘッドが2.76(2.72の後の最初のキーフレーム)にスナップされる可能性があります。それ以外の場合は、1秒間に多くのキーフレームをエンコードすることができます(15秒ごとではなく5秒ごとまたは10秒ごとに)、それはもっと激しくスナップしますが、問題+大きなファイルをシフトします。 – nicoptere