[theora] Live Stream Encoding

Conrad Parker conrad at metadecks.org
Sun Jun 20 06:17:34 PDT 2010


On 20 June 2010 22:05, Mario Doerr <mailinglist at xyphur.de> wrote:
> Hi Conrad,
>
>> So this is a streaming application that you are writing? Is it
>> streaming out as HTTP? Are the pictures from files or live?
>
> I have written a simple HTTP server which streams a "virtual" file. The
> file doesn't exist in real, my pictures grabbed directly from the frame
> buffer (OpenGL), encoded via Theora and sent with the windows socket
> functions to the client (Firefox 3.6.3). For response i am using this header
>
> HTTP/1.1 206 Partial Content
> Accept-Ranges: bytes
> Content-Type: video/ogg
> Connection: keep-alive
>
> and attached the output from Theora directly after this header.
>
>> To show the duration in VLC, I think the streaming application needs
>> to support byte-range requests, which allow seeking over HTTP. You
>> will also of course need to output a Content-Length HTTP response
>> header.
>
> Additionally for debugging i can write the Theora output to a file. This
> file can be played correctly in VLC but without the correct duration. In
> Firefox it doesn't play the first two seconds.
>
>
>> For Firefox, byte-range requests are also useful, as are a
>> Content-Duration HTTP response header or an OggIndex in the generated
>> stream.
>
> The stream is "infinite".

So you are sending "Accept-Ranges: bytes", but not actually supporting
range requests?

> What do you mean with "OggIndex"?

http://wiki.xiph.org/Ogg_Index

Conrad.


More information about the theora mailing list