<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
<META NAME="GENERATOR" CONTENT="GtkHTML/3.18.1">
</HEAD>
<BODY>
This may turn out to be a big chunk, but I know it is doable with vlc.<BR>
<BR>
Here are the steps that I know we need to get working:<BR>
1. change the getMoovAtom() to accept a bool value to determine if it's a the end of the stream. If not then set the duraction to some big number. <BR>
<BR>
2. Add the getMoovAtom() to the addStream() <BR>
<BR>
3. Get Stream-out to accept mp4-mux as a stream<BR>
<BR>
4. write that moov-atom to sout and mark it so stream-out module can give it as header<BR>
<BR>
Easy enough?<BR>
<BR>
1. <BR>
change modules/mux/mp4.c line 1539 "static bo_t *GetMoovBox( sout_mux_t *p_mux )" to "static bo_t *GetMoovBox( sout_mux_t *p_mux, bool b_end_of_movie)"<BR>
<BR>
Then after line 1562 so that the duration is something large so that it'll work for a live stream.<BR>
<BR>
2.<BR>
add after line 439 something like:<BR>
moov = GetMoovBox( p_mux ,false );<BR>
sout_AccessOutSeek( p_mux->p_access, i_moov_pos ); //but without the seek and i_moov_pos<BR>
box_send( p_mux, moov );<BR>
<BR>
3.<BR>
???<BR>
<BR>
4.<BR>
<BR>
Similiar to how it's done here:<BR>
<A HREF="http://git.videolan.org/?p=vlc.git;a=blob;f=modules/codec/ffmpeg/mux.c;h=309b2e5420ee5afda239e41322e2d67fa8b19378;hb=HEAD#l400">http://git.videolan.org/?p=vlc.git;a=blob;f=modules/codec/ffmpeg/mux.c;h=309b2e5420ee5afda239e41322e2d67fa8b19378;hb=HEAD#l400</A><BR>
<BR>
<BR>
Let me know if any of you are willing to help. I have a system setup right now that can test any code changes. I have a live h264 stream, and a website with a flashplayer setup and ready.<BR>
<BR>
-William V
</BODY>
</HTML>