0

H.264 チャンク (SPS、PPS、IDR、および非 IDR) からのフラッシュ プレーヤーのストリームがあります。これまでのところ、FLV 構造は bytearray から生成されています。私に残された唯一の問題は、FLVTag が必要とするTimestamp UI24を取得する方法を理解することです。 ここに画像の説明を入力

4

1 に答える 1

0

各 FLVTag の時間を取得するには、次のようにします。

  1. 最初に SPS ファイルからフレーム レートを取得します 。timing_info_present_flagが 1 であることを確認する必要があります。

timing_info_present_flag: 1

num_units_in_tick : 1000

time_scale :120000

fixed_frame_rate_flag : 1

したがって、次のように数えます。

time_scale / (2 * num_units_in_tick) = frame_rate fps;
120000 /

2 * 1000 = 60 fps

その後、フレームあたりのミリ秒を取得します - > 1 / 60 = 0.01666(6) したがって、フレーム (IDR と NDR) をカウントし、それに応じてタイムスタンプを増やします。SPS および PPS フレームの場合、現在のタイムスタンプを現在の場所にドロップします。

于 2015-10-11T20:52:11.120 に答える