[vorbis-dev] Vorbize Multiple Files

David Terrell dbt at meat.net
Fri Jun 23 12:54:47 PDT 2000



On Fri, Jun 23, 2000 at 11:59:57AM -0400, Kenneth C. Arnold wrote:
> Well it seems I'm still around for another day (but still can't really do
> much coding).
> 
> Here's a project for anyone interested: add buffering to ogg123. I've tried
> to do a dynamic buffer (i.e., the buffer can grow as much as it wants), but
> I/O killed any improvements it would have made. That problem could easily
> be solved with clone(2). But this is only available on Linux!
> 
> Maybe whatever sound output library somebody finds will have buffering that
> works.

You have to have separate processes in the scheduler, or buffering
doesn't gain you much (the point is to separate the pseudo-realtime
needs of output from the high processor usage decode -- high processor
usage is penalized by most schedulers).  The other option is to
assign your process higher priority with the (relatively) cross-platform
setpriority(PRIO_PROCESS,0,-20), but this can be a performance problem.

I think defining multiple buffer methods and choosing which one is
optimal for a particular platform at configure time is appropriate.
A clone-based method for linux would not be unacceptable, in my
opinion, since there's no way buffering and multiprocessing is going
to be 100% crossplatform.  Just have an alternative for non-linux
systems. :)

Dave, *sigh*, hopefully I'll have code time this weekend.


-- 
David Terrell            | But remember that "layman" is just a polite 
dbt at meat.net             | word for "idiot." 
http://wwn.nebcorp.com/  |  - Neal Stephenson

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/




More information about the Vorbis-dev mailing list