Re: [Xiph-dev] What's the status of Xiph codecs support in the Helix project?

2007-12-23 Thread Ralph Giles
On Mon, Nov 19, 2007 at 12:12:15AM -0500, Samuel Klein wrote:

  Has this been formally made a requirement yet? It seems like this is
  still being hashed out on the xiph lists. I have yet to comment on the
  proposal because I haven't completely groked the whole thread yet. For
  now Skeleton is not supported.

It's a SHOULD in the current draft of RFC 3534, so it seems we're stuck 
with in. Not that for the purposes of helix, silently ignore the 
skeleton stream goes most of the way to proper support.

More urgent is to add support the .ogv, .oga and .ogx 
filename extensions.

 -r

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [Xiph-dev] What's the status of Xiph codecs support in the Helix project?

2007-11-18 Thread Samuel Klein
Ivo, perhaps we could come up wit ha set of compliance elements that
typical users of OLPC laptops will need, as a case study for what free
formats should be supported for other users to be considered
'complete'.

Aaron, it would be tremendous to have speex working cleanly on the XOs,
since a primary use case is sharing voice data via the cleanest
lightweight recordings.   (I would like to have that working
seamlessly both in Helix and in gstreamer, but that's another issue.)

SJ

On Oct 8, 2007 12:06 PM, Aaron Colwell [EMAIL PROTECTED] wrote:
 Comments inline

 Ivo Emanuel Gonçalves wrote:
  Hello lists,
 
  Personally, I have not yet had an opportunity to test the different
  components in the Helix project.  As such, most of what I know comes
  from Wikipedia.
 
  In Wikipedia, it is stated that the Helix DNA Client supports Vorbis
  and Theora, but apparently, not Speex.  Is it this true?

 This is true.

   How hard
  would it be to port an implementation of Speex to the Helix Client?

 Not that hard.

  Is anyone working in it?
 Not at the moment. I'm essentially the maintainer of the Xiph related
 code and haven't had the time lately to add speex support. At a minimum
 I'm hoping to do a new release with the Theora Beta 1 decoder in the
 next week or so.

   What about Ogg Skeleton, which is now a
  requirement for Theora videos served under the video/ogg media type?
 
 Has this been formally made a requirement yet? It seems like this is
 still being hashed out on the xiph lists. I have yet to comment on the
 proposal because I haven't completely groked the whole thread yet. For
 now Skeleton is not supported.

  In Wikipedia, it is stated that the Helix DNA Server only supports
  streaming of MP3 and Real Media formats.  Why??
 Because streaming of Ogg has not been implemented yet.

   The Ogg format was
  created mostly for streaming.
 Ogg was created mostly for _HTTP_ streaming. The Helix server is
 traditional RTSP streaming server.

  That means that streaming Vorbis and
  Theora is (in theory) an easy process to implement for developers.
 Not true. Since Ogg allows arbitrary chaining of streams, implementing
 something that handles all of the various cases is quite difficult.
 Ogg's ability to chain segments together that have different numbers of
 streams in them are particularly taxing on the Helix Media Engine
 implementation.

  Then there's also streaming through RTP.  Vorbis, Speex, and Theora
  may be streamed through RTP.
 Implementing this has been on my list of things to do. This is
 non-trivial especially if I want to properly handle chained streams.

 
  With the Helix software becoming part of the XO laptop (the OLPC
  project) it is highly important that free formats work properly in
  Helix, but that doesn't seem to be the case right now.

 Since you haven't even used the Helix code I find it difficult to accept
 your criticism that it isn't working properly. The code works great for
 the codecs and modes of playback that I have implemented. My primary
 focus was to get the most robust local playback of Theora  Vorbis files
 that I could. Making the ogg file format plugin work with the Helix
 Server and supporting Speex were secondary goals. I plan on adding
 Speex, and RTP delivery when I get a chance.

 Since there isn't a compliance document for ogg support and no specified
 minimal codec support, I think it is a stretch to say that Helix doesn't
 support free formats properly. Ogg is woefully under specified
 especially in the chained and multi-stream cases. Having a document that
strictly outlines how to handle funky chained files (ie. audio-only,
 followed by audio/video, followed by a segment with 2 video streams) as
 well as files with say 2 audio tracks or 2 video streams would be of
 great help and would provide a way for all of the implementations out
 there to converge on a single interpretation.

 This has been a side project of mine for several years. I haven't spent
 much time on it lately because I have gotten little to no feedback on it
   . I've pretty much interpreted that as any of several things; users
 are happy with the current code, they don't care about this work, or
 they are unhappy but don't post anything to the list so I can fix it. In
 all of these cases there isn't much incentive to work on the code since
 there is no outside feedback. Also since there really isn't a minimum
 bar for claiming compliance, spec compliance isn't a motivator either.

 Aaron
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [Xiph-dev] What's the status of Xiph codecs support in the Helix project?

2007-11-17 Thread Aaron Colwell
Comments inline

Ivo Emanuel Gonçalves wrote:
 Hello lists,
 
 Personally, I have not yet had an opportunity to test the different
 components in the Helix project.  As such, most of what I know comes
 from Wikipedia.
 
 In Wikipedia, it is stated that the Helix DNA Client supports Vorbis
 and Theora, but apparently, not Speex.  Is it this true?  

This is true.

  How hard
 would it be to port an implementation of Speex to the Helix Client?

Not that hard.

 Is anyone working in it?
Not at the moment. I'm essentially the maintainer of the Xiph related 
code and haven't had the time lately to add speex support. At a minimum
I'm hoping to do a new release with the Theora Beta 1 decoder in the 
next week or so.

  What about Ogg Skeleton, which is now a
 requirement for Theora videos served under the video/ogg media type?
 
Has this been formally made a requirement yet? It seems like this is 
still being hashed out on the xiph lists. I have yet to comment on the
proposal because I haven't completely groked the whole thread yet. For
now Skeleton is not supported.

 In Wikipedia, it is stated that the Helix DNA Server only supports
 streaming of MP3 and Real Media formats.  Why??  
Because streaming of Ogg has not been implemented yet.

  The Ogg format was
 created mostly for streaming.
Ogg was created mostly for _HTTP_ streaming. The Helix server is 
traditional RTSP streaming server.

 That means that streaming Vorbis and
 Theora is (in theory) an easy process to implement for developers.
Not true. Since Ogg allows arbitrary chaining of streams, implementing 
something that handles all of the various cases is quite difficult. 
Ogg's ability to chain segments together that have different numbers of 
streams in them are particularly taxing on the Helix Media Engine 
implementation.

 Then there's also streaming through RTP.  Vorbis, Speex, and Theora
 may be streamed through RTP.
Implementing this has been on my list of things to do. This is 
non-trivial especially if I want to properly handle chained streams.

 
 With the Helix software becoming part of the XO laptop (the OLPC
 project) it is highly important that free formats work properly in
 Helix, but that doesn't seem to be the case right now.

Since you haven't even used the Helix code I find it difficult to accept
your criticism that it isn't working properly. The code works great for 
the codecs and modes of playback that I have implemented. My primary 
focus was to get the most robust local playback of Theora  Vorbis files 
that I could. Making the ogg file format plugin work with the Helix 
Server and supporting Speex were secondary goals. I plan on adding 
Speex, and RTP delivery when I get a chance.

Since there isn't a compliance document for ogg support and no specified 
minimal codec support, I think it is a stretch to say that Helix doesn't 
support free formats properly. Ogg is woefully under specified 
especially in the chained and multi-stream cases. Having a document that 
   strictly outlines how to handle funky chained files (ie. audio-only, 
followed by audio/video, followed by a segment with 2 video streams) as 
well as files with say 2 audio tracks or 2 video streams would be of 
great help and would provide a way for all of the implementations out 
there to converge on a single interpretation.

This has been a side project of mine for several years. I haven't spent 
much time on it lately because I have gotten little to no feedback on it 
  . I've pretty much interpreted that as any of several things; users 
are happy with the current code, they don't care about this work, or 
they are unhappy but don't post anything to the list so I can fix it. In 
all of these cases there isn't much incentive to work on the code since 
there is no outside feedback. Also since there really isn't a minimum 
bar for claiming compliance, spec compliance isn't a motivator either.

Aaron

 
 -Ivo
 
 ___
 Xiph-dev mailing list
 [EMAIL PROTECTED]
 http://lists.helixcommunity.org/mailman/listinfo/xiph-dev
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel