Streaming video using media source extension show error "pipeline_error demuxer: could not open"

2,102 views
Skip to first unread message

Rishi Ranjan

unread,
May 12, 2014, 2:30:22 PM5/12/14
to chromiu...@chromium.org
Hi,
   I am trying to play a video using media source extension in chromium-browser. But when I try to play this video using html5rocks example, I get an error "pipeline_error demuxer: could not open" in chrome://media-internals/. 

I have attached my html file and movie that I am trying to play. 

Some more information: 

  1. I am able to stream the video without any problem if I just stream it using  video element. I have attached the index.html for this also. \
  2. I tried debugging this using --enable-debugging --v=1 but could not find anymore information compared to chrome://media-internals/
  3. The movie was created from a gaming platform so duration is not set.
  4. In the end I want to stream it using Websocket. Once XHR works, I think websocket should work. 

Can someone point me to right direction how to debug this? 

Thanks,
Rishi


movie_out.mp4
websocketxhr.ejs
index.html

PhistucK

unread,
May 13, 2014, 2:22:05 AM5/13/14
to Rishi Ranjan, Chromium HTML5
Sounds like your MP4 is just corrupt.


PhistucK


--
You received this message because you are subscribed to the Google Groups "Chromium HTML5" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-html...@chromium.org.
To post to this group, send email to chromiu...@chromium.org.
Visit this group at http://groups.google.com/a/chromium.org/group/chromium-html5/.
For more options, visit https://groups.google.com/a/chromium.org/d/optout.

Rishi Ranjan

unread,
May 13, 2014, 9:16:05 AM5/13/14
to PhistucK, Chromium HTML5
I was able to play the mp4 using VLC player and using video element in HTML. Also I didi ananlyze the mp4 using isoviewer but could not find anything wrong.

Rishi Ranjan

unread,
May 13, 2014, 2:43:30 PM5/13/14
to PhistucK, Chromium HTML5
Analyzed the mp4 with ffmpeg using following command:

ffmpeg -v error -i movie_out.mp4 -f null - 2> error_movie.log

It generates error:
ffmpeg -v error -i movie_out.mp4 -f null - 2> error_movie.log

I am looking at this now.

Rishi Ranjan

unread,
May 14, 2014, 4:05:29 PM5/14/14
to PhistucK, Chromium HTML5
>>>I am not sure what "express" means, but chunked encoding may be problematic. Try without it and see if it helps.
I have tried with range request making sure headers are set correctly set. But still seeing same issue. >>>
I don't use sendFile();

>>> I assume with "express" you are referring to the node framework. Are
you using sendFile() so you are actually sending byte ranges on the
server?

I don't use sendFile(); I read the file in a raw buffer(file is small to this works) when server starts and then slice the data as requested by client.


Some updates from today:

1. I extracted initialization segment first and appended it to the mediasource. I added a logic to wait for "updateend" event before start appending the media fragment.  https://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html indicates that if we try to append new segment before "updateend" is received, INVALID_STATE_ERR will be triggered.
2. After above change, I don't see any error with init segment but as soon as I append first media segment, I get INVALID_STATE_ERR again but this time  I am getting "pipeline: decode error" in chrome://media-internals/. Media source gets closed. FFMpeg shows some error in my file. I will focus on that error.

Reply all
Reply to author
Forward
0 new messages