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

Reply via email to