Lighttpd - byte range request doesn't work. can't stream mp4

Posted by w-01 on Server Fault See other posts from Server Fault or by w-01
Published on 2012-10-13T00:03:57Z Indexed on 2012/10/13 3:39 UTC
Read the original article Hit count: 443

Filed under:
|

Am attempting to use the lastest flowplayer. (if it could work it would be pretty awesome btw) http://flowplayer.org

One of the cool things about it is it uses the new HTML5 video element and supports random seeking/playback. In order to do this, you need a byte range request capable server on the backend. Luckily I'm using Lighttpd 1.5.0 on the backend.

Unfortunately the current behavior is that when I do a random seek, the video simply restarts itself from the beginning.

the docs say:

"For HTML5 video you don't have to do any client side configuration. If your server supports byte range requests then seeking should work on the fly. Most servers including Apache, Nginx and Lighttpd support this."

On my page, using chrome web developer tools, i can see when the video is requested, the server response headers indicate it is able to acce[t byte ranges.

Accept-Ranges:bytes

when I do random seek in the player, I can see that that byte ranges are request appropriately in the request header:

Range: bytes=5668-10785

I can also verify the moov atom is at the front of the video file.

My question here is if there is something else on the lighttpd side i'm missing in order to enable byte-range requests?

The reason i ask is because the current behavior suggests that the lighttpd simply doesn't understand the byte range request and is just reserving the video from the beginning.

Update

it's clearer to put this here. As per RJS' suggestion I ran a curl command. in the response it looks like lighttpd is working as expected.

Content-Range: bytes 1602355-18844965/18844966
Content-Length: 17242611

© Server Fault or respective owner

Related posts about lighttpd

Related posts about video-streaming