PDA

View Full Version : Streaming MP4 - how does Youtube do it?


Blue_MiSfit
21st July 2008, 21:10
Hi folks,

I'm experimenting with streaming MP4 using a broadcom 7504 based box.

The hardware is pretty good, and can handle level 4 high profile H.264.

However, we're having issues streaming an MP4 generated by Handbrake.

If we map a network share, MP4s will play just fine. However, if we try to literally stream/download at the same time (i.e. copy the file, and play while it's downloading), it fails immediately.

The error log reports that the box tries to seek to the end of the file, which of course isn't available when streaming. It almost looks like MP4 stores the header information at the end of the file?

I'm not up on the details of the MP4 container... where is the header typically stored? I know it's possible to stream an MP4, because Youtube does it :) Ideas?

Thanks,

~MiSfit

smok3
21st July 2008, 21:21
i belive mp4box should be able to move the atom to the beginning, but i'am not sure what the correct cli is (maybe yamb will know more), and you are probably talking about progressive download, streaming is a bit different.

mp4box -isma somefile.mp4

should do the trick i belive.

Dark Shikari
21st July 2008, 22:13
That isn't streaming, that's progressive download ;)

And yes, all you have to do is remux with mp4box. Here's an example video (http://mirror05.x264.nl/Dark/Flash/index_lowbitrate.html) embedded with the JW Media Player and muxed with mp4box.

Blue_MiSfit
21st July 2008, 22:36
Sweet!

Thanks guys!

~MiSfit