[vorbis-dev] BeOS on PPC compile, thread question.
Jeff Squyres
jsquyres at lsc.nd.edu
Wed Nov 15 17:01:37 PST 2000
On Wed, 15 Nov 2000, Monty wrote:
> Thread safety is almost never a yes/no issue (Sun wrote a great short
> essay proposing five or six level of thread safety and the official
> terms to go with them); all 'thread-safe' libraries have restrictions
> of one sort or another (even if the restrictions are hidden with
> locking) and libogg/libvorbis/libvorbisfile/libvorbisenc are no
> exception. Within these restrictions, the libs are thread safe.
Good point. I didn't mention that. What I'd be truly interested in is
fully thread concurrent code. You can imagine the level necessary for
multiple threads to be encoding a single stream.
> Right now, the restriction is that any given data structure (ogg_* or
> vorbis_* or OggVorbis_File) can be referenced by only one thread at a
> time. There's an additional restriction that some data structures do
> reference memory in the others; the arrangement is careful and stable
> and I probably should document it :-) Encode is more restricted than
> decode because frame analysis serialized over several frames. That's
> not escapable without disabling some chunks of encode analysis.
Forgive me -- I'm not an audio specialist -- are you saying that removing
these restrictions is impossible without degrading sound quality (given
the vorbis/ogg algorithms), or just would take extra programming work?
...or something else?
> Kim: If I write an unpolished but fact-filled 'Threading and
> libvorbis' guide, do you have time to polish it into something
> intelligible?
Mmmm... that would be a *most* helpful document...
{+} Jeff Squyres
{+} squyres at cse.nd.edu
{+} Perpetual Obsessive Notre Dame Student Craving Utter Madness
{+} "I came to ND for 4 years and ended up staying for a decade"
--- >8 ----
List archives: http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body. No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.
More information about the Vorbis-dev
mailing list