flv视频加载测试结果

通过NetStream加载未缓冲的flv视频,前提条件是flv中包含关键帧(keyframes)信息,比如youku视频。服务器端每次从关键帧位置输出视频流之前,都要先将视频头部信息输出,大概13Byte,我测试的是youku视频。

 

视频文件大小: 14528194 Byte

视频时长:286s

视频加载分为3段,第1段从视频头部(0s)开始加载;第2段从2695143Byte(84.2s)处开始加载;第3段从5987609Byte(184.3s)处开始加载。

加载视频过程中,在控制台输出当前播放时间点(netStream.time)、已加载视频(netStream.bytesLoaded)、已加载视频百分比(netStream.bytesload/netStream.bytesTotal)。以下为控制台输出:
 
播放时间  已加载Byte  已加载百分比
 
2s   719650  7.551547324796284%
3.158s   1241650  13.029081825655952%
4.067s   1556650  16.33449057617472%
---------------------------------
reload! startPos=2695143
---------------------------------
84.2s   53650  0.7849659918787842%
84.381s   431650  6.3155744714720825%
85.357s   737650  10.792733716857134%
86.425s   1025650  15.006530653690122%
87.446s   1313650  19.220327590523112%
---------------------------------
reload! startPos=5987409
---------------------------------
184.267s   26650  0.7523095054941177%
184.267s   224650  6.34170095344291%
184.552s   548650  15.487977868268207%
185.481s   890650  25.142381278361576%
186.503s   1214650  34.28865819318687%
188.467s   1529650  43.180871860378126%
189.533s   2168650  61.21936244239469%
190.6s   2465650  69.60344961431788%
191.6s   2771650  78.2416000338751%
192.667s   3102950  87.59395047178134%
193.8s   3410650  96.28009061589165%
195.333s   3473650  98.0585333493299%
196.467s   3542425  100%
197.533s   3542425  100%
198.6s   3542425  100%
199.667s   3542425  100%
200.8s   3542425  100%

 

对三段数据进行计算比较,719650/7.551547324796284% == 53650/0.7849659918787842% + 2695143 == 26650/0.7523095054941177% + 5987409 == 9529835 Byte

 

9529835 Byte是整个视频流的大小,即为首次加载时的netStream.bytesTotal,与文件大小14528194 Byte之间有几兆差值,可能是flv头部信息的长度?具体是什么还不知道。

 

每次从关键帧位置重新加载视频,netStream.bytesLoaded都从0开始计数,netStream.bytesTotal是从关键帧位置开始计算的视频流大小。

 

你可能感兴趣的:(测试,服务器,byte,flv)