[Live-devel] Why H264 annexB bytestream transported incompletely?
Felix
xuwei_felix at yahoo.cn
Sat Mar 29 06:13:15 PDT 2008
Hi:
Thank you for answering my question!
I checked the packet loss by using the "-Q" option to "openRTSP", and the statistics are below:
begin_QOS_statistics
server_availability 100
stream_availability 100
subsession video/H264
num_packets_received 6153
num_packets_lost 941
elapsed_measurement_time 3.003171
kBytes_received_total 2793.262000
measurement_sampling_interval_ms 1000
kbits_per_second_min 6510.232637
kbits_per_second_ave 7440.833705
kbits_per_second_max 8846.432576
packet_loss_percentage_min 1.653747
packet_loss_percentage_ave 13.264731
packet_loss_percentage_max 18.069058
inter_packet_gap_ms_min 0.038000
inter_packet_gap_ms_ave 0.486910
inter_packet_gap_ms_max 111.935000
end_QOS_statistics
1. On the server, I checked that all datas are correctly write to the socket,
but on the client, less data can be read from that socket. What causes data loss?
The frame rate of my bytestream is fixed(0.02s), so I set durationTime as 20ms, and send one frame every 20ms.
On the server, I just added my own H264VideoFileServerMediaSession and xH264VideoStreamFramer.
On the client, I just added one sentence in MediaSession.cpp's MediaSession::lookupPayloadFormat():
case 96: {temp = "H264"; freq = 90000; nCh = 1; break;}
2. The num of bytes received on the client is not constant, it changes every time. It's so puzzling!
My network is Ok, I used livemediaServer to transport a MPEG2/TS file to openRTSP,
and found no packet loss.
3.Increasing Socket send & receive buffer size from 50*1024 Bytes to 1000*1024 Bytes makes no difference.
4.When I increase the duration from 20ms to 40ms, less packets lost. Why?
---------------------------------
雅虎邮箱,您的终生邮箱!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.live555.com/pipermail/live-devel/attachments/20080329/11511b79/attachment.html
More information about the live-devel
mailing list