MediaSource error: This SourceBuffer has been removed from the parent media source
Ultimately the issue was that I was sending h264 video down the websocket. The MediaSource API only supports MPEG-DASH and VP8 with keyframed segments currently (on Chrome 35).
Additionally, once I tried VP8, I saw that I was adding some frames out of order.
- Adding
if (buffer.updating || queue.length > 0)
inwebsocket.onmessage
was required. - Adding
if (queue.length > 0 && !buffer.updating)
inbuffer.addEventListener('update', ...)
was also required.
Note: I applied the edits mentioned here to the code in the question, so the only issue with the code in the question is that the codec is wrong