Hrm, I just looked those over (I had been familiar with oggz). It looks like those both are thin wrappers around the stream protocol itself to handle all the little nuisances, like filling pages etc. What I think I am looking for is more of the multiplexer itself. When I didnt immediately find a standard library that multiplexes over a single TCP connection, I assumed it because with all the stream issues worked out in something like Ogg, it would be trivial to implement. I gave it a shot earlier today, and there are a whole number of issues that I didnt consider when writing a MUX, like QoS. You would think you could just have a big loop in the heart of the mux that select()s and does the read/write accordingly, but there are anumber of issues introduced when you dynamically add a "channel", or if a channel hangs, etc. So the multiplexer has to be a little beefier than I was first assuming. Its still pretty surprising that a generic library to multiplex over TCP is not more common. Something that would let you create a in initial stream and then create "sub-streams" and expose a "mux_write()" and "mux_read()" or something, and have the library transparently handle all the mux/demux and messaging in between.  If something like this *does* exist, please share!
<br><br><br><div><span class="gmail_quote">On 3/8/07, <b class="gmail_sendername">Jean-Marc Valin</b> &lt;<a href="mailto:jean-marc.valin@usherbrooke.ca">jean-marc.valin@usherbrooke.ca</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Have you looked at liboggz and libfishsound?<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Jean-Marc<br><br>S. A. Ridley wrote:<br>&gt; Hey folks,<br>&gt;&nbsp;&nbsp; I just unsubscribed from the vorbis-dev mailinglist (several days ago)<br>&gt; after&nbsp;&nbsp;a year or so of being subscribed, and today I run into a project
<br>&gt; that will probably require using Ogg :-).<br>&gt; The project I am working on has a fairly quick timeline, and as a result<br>&gt; have to cut corners. The core of it will be wrapped around a<br>&gt; multiplexer. Ogg is obviously ideal for this, but I was wondering if
<br>&gt; anyone knew of projects or libraries that exposed a simple multiplexer<br>&gt; for rapid development projects like this. Something that maybe allows<br>&gt; customization of the critical sections but has all the logic of adding
<br>&gt; &quot;streams&quot;, round-robining, and qos, stuff worked out. I am on win32<br>&gt; (this is important for the rotation type &quot;event driven&quot; or just a simple<br>&gt; loop).<br>&gt; If not a library then perhaps a project that has a simple multiplexer
<br>&gt; that uses ogg for its streams.<br>&gt; Any information would be greatly appreciated.<br>&gt; Stephen<br>&gt;<br>&gt; --<br>&gt; ...tomorrow, the world.<br>&gt;<br>&gt;<br>&gt; ------------------------------------------------------------------------
<br>&gt;<br>&gt; _______________________________________________<br>&gt; ogg-dev mailing list<br>&gt; <a href="mailto:ogg-dev@xiph.org">ogg-dev@xiph.org</a><br>&gt; <a href="http://lists.xiph.org/mailman/listinfo/ogg-dev">
http://lists.xiph.org/mailman/listinfo/ogg-dev</a><br></blockquote></div><br><br clear="all"><br>-- <br>...tomorrow, the world.