[Live-devel] Errors when streaming HD H.264 using Live555
팜반푸
phuocpham at ssu.ac.kr
Fri Dec 13 01:26:24 PST 2013
Hi Ross, thank you for your response,
All our boards IPNC DM368, DM8148 that use Live555 for streaming commit that problem. But when I use VLC to playback the HD H.264 from a streaming board I don't get that kinda error. (Actually I don't know what kind of streaming libraries they use inside ). When I use RTSPClient to retrieve and save that stream to a .h264 file and use live555 to stream out that file over rtsp, at the client side I also use VLC player to playback then the errors happen. I don't know but are you sure this problem is not caused by Live555?
BTW, I read the VLC source code then I find out that they have a module call 'access->mms->mmstu.h' which is used to initially retrieve data from the server has a buffer of 100000 bytes. I increase that buffer to have enough room for incoming I-frames. But it doesn't help me out. Do you have any ideas?
I appreciate your help.
Re: [Live-devel] Errors when streaming HD H.264 using Live555
VLC is not our software, and problems with VLC should be posted on a VLC mailing list - not here. However, in this case, I know the answer to your question.
Your problem is that your stream's I-frames are too large. VLC uses an initial buffer size of 100,000 bytes when receiving data. If a data frame (in this case, your stream's first I-frame) is larger than this, then the remaining data will be truncated (i.e., lost). VLC recovers from this by doubling the size of the buffer for receiving future frames, but it cannot recover the data that was lost from the first I-frame.
The solution is to not send very large I-frames as single NAL units. Instead, you should encode these I-frames into multiple 'slice' NAL units. (Alternatively, if you can't do that, then try to encode I-frame NAL units to be smaller than 100,000 bytes.)
Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20131213/de06582b/attachment.html>
More information about the live-devel
mailing list