10

I'm trying to do live realtime streaming of H264 video from a server to the browser. The H264 stream is not wrapped inside a MP4 container, but instead it finds it's way to the browser (through web sockets) in the form of raw H264 frames.

The question is: Is it possible to feed the media source extensions with raw frames instead of a file container such as MP4 or WebM?

The mp4 solutions such as MPEG-DASH do not give me the flexibility that I need with regard to low latency, multiple video synchronization and other elements that I need to achieve.

galbarm
  • 2,441
  • 3
  • 32
  • 52
  • The question is still relevant... – galbarm Feb 08 '15 at 16:03
  • did you find any way to stream raw h264 frames? – thunderbird Mar 10 '15 at 08:56
  • No. I stopped the research for the time being but I'll get back to this later. I'll share my conclusions here. – galbarm Mar 10 '15 at 11:25
  • It's impossible to use MSE for raw H264 but I found a way streaming live h264 with relatively low latency. The following 2 questions I asked will show you how: http://stackoverflow.com/questions/30617673/live-streaming-dash-content-using-mp4box & http://stackoverflow.com/questions/30868854/flush-latency-issue-with-fragmented-mp4-creation-in-ffmpeg – galbarm Jun 26 '15 at 17:08

1 Answers1

4

MP4 boxing is required for MSE, and far too cumbersome to implement in a browser.

With raw h264, you can try to use Broadway, a h264 decoder (via emscripten) implementation for the browser.

See a real time example in my dedicated project https://github.com/131/h264-live-player

131
  • 3,071
  • 31
  • 32