Yes I have tried that. The MOOV atom (some header in the file) is relocated at the start of the file by qt-faststart. That will make the file progressive downloadable. If hosted on a HTTP server, the file should start playing even before it is completely downloaded.
I am using ffserver to stream the file. I think that the FFserver will again place the MOOV atom at the end of file. so ffplay show me following error - "mov,mp4,m4a,3gp,3g2,mj2 @ 0x8ae27b0]moov atom not found" I think, that as Andrew suggested, there is probably no straight forward solution right now Regards, Yadnesh On Fri, Jul 2, 2010 at 6:27 PM, Billy Mays <[email protected]> wrote: > > Hi, >> >> I happen to have been looking into this issue too. The 3gp and mpeg4 >> formats are based on the Quicktime mov format. This format works by having >> several sections in the file with tags, with each tag needing to specify the >> size of the tag at the start. One of these tags is the size of all the data >> in the file, which is not known in advance of encoding (only a worst guess >> can be made based on the bitrate and bitrate tolerance). Unlike ASF format, >> for example, these formats must have the size element specified, or else >> they won't work. So libavformat must first write the data to a file, and >> then go back and fill in the size of the elements, which it obviously can't >> do with an http stream (since the data will be at the client by the time it >> needs to go back and fill it in). >> >> The best solution to this just now is to pre-convert any videos into 3gp >> format and then stream them directly. A future solution (which I am looking >> at a bit) is to take the worst guess of the data size and then fill in any >> space not used with some sort of padding. This will result in files that >> are always a bit too big, but will at least allow the streaming of the data. >> >> In the long long run, someone should come up with a better file format for >> streaming that can be indexed that doesn't need to know the size of the data >> in advance (flv could actually be quite good at this as it is searchable >> from the end as well as the start, meaning that you could add a key-frame >> index to the end of the file after streaming it - unfortunately, most >> standard media players can't play flv and others wouldn't know to look at >> the end of the file for the index). >> >> Andrew :) >> >> >> > > Have you tried running the qt-faststart program that comes in the tools > directory of ffmpeg? It (I think) rearranges mp4/3gp files so that they can > be streamed more easily. > > _______________________________________________ > libav-user mailing list > [email protected] > https://lists.mplayerhq.hu/mailman/listinfo/libav-user > -- ---------------------------------------------------------------------- Christopher Morley - There is only one success - to be able to spend your life in your own way. _______________________________________________ libav-user mailing list [email protected] https://lists.mplayerhq.hu/mailman/listinfo/libav-user
