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

1 に答える
0
各 FLVTag の時間を取得するには、次のようにします。
- 最初に 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 に答える