0

2 つのデータ ストリームがあります。1 つはオーディオ データ、もう 1 つはビデオ データです。私が録音した音DirectSoundは 100 ミリ秒の長さのバッファーに入れられ、DirectShow ISampleGrabbe魔女は毎秒 30 フレーム (33,33 ミリ秒ごとに 1 フレーム) でフレームを取得します。

どういうTimeStamping意味ですか?ビデオ/オーディオにフィールドをアタッチし、どのオーディオ パケットがビデオ フレームDateTimeと同じであるかを受信時に確認する必要がありますか?TimeStamp

これは非常に難しいテーマだと思いますが、アイデアを教えてください。

4

1 に答える 1

1

これは、各ビデオ/オーディオ要素には、ビデオ/オーディオが開始された時間に対していつ再生する必要があるかを示す時間オフセットがあることを意味します。したがって、受信側は受信した要素をタイムスタンプで並べ替えて順番に再生し、ビデオまたはオーディオ要素が欠落している場合も待機します。

すべての要素に DateTime 属性を追加しないでください。代わりに、ビデオ/オーディオ ヘッダーは、メディアを再生する必要があるフレームレートまたは周波数と、1 秒ごとに受け取る要素の量を示す必要があります。したがって、単純な自動番号で十分です。受け取った要素を並べ替え、すべての要素を受け取った時点がプレイを続けるのに十分な距離にあるかどうかを確認するのは、プレイヤーの責任です。

于 2012-10-10T10:04:01.797 に答える