[xiph-commits] r8622 - trunk/oggdsf/src/lib/core/ogg/libOOOgg

ozone at motherfish-iii.xiph.org ozone at motherfish-iii.xiph.org
Wed Jan 5 05:22:59 PST 2005


Author: ozone
Date: 2005-01-05 05:22:59 -0800 (Wed, 05 Jan 2005)
New Revision: 8622

Modified:
   trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.h
   trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.h
Log:
oggdsf:
 * Add some basic documentation to OggPageInterleaver and OggMuxStream classes

Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.h	2005-01-05 13:21:39 UTC (rev 8621)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.h	2005-01-05 13:22:59 UTC (rev 8622)
@@ -28,15 +28,21 @@
 //NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 //SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 //===========================================================================
+
 #pragma once
 
+
 #include <libOOOgg/OggPage.h>
 #include <libOOOgg/IOggCallback.h>
 #include <libOOOgg/INotifyArrival.h>
 #include <math.h>
 #include <deque>
 #include <fstream>
+
+
 using namespace std;
+
+
 class LIBOOOGG_API OggMuxStream
 	:	public IOggCallback
 {

Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.h	2005-01-05 13:21:39 UTC (rev 8621)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.h	2005-01-05 13:22:59 UTC (rev 8622)
@@ -28,24 +28,48 @@
 //NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 //SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 //===========================================================================
+
 #pragma once
+
+
 #include <libOOOgg/IOggCallback.h>
 #include <libOOOgg/INotifyComplete.h>
 #include <libOOOgg/OggMuxStream.h>
+
 #include <vector>
+//#include <fstream>  // Debugging only
 
-//DEBUG ONLY
-//#include <fstream>
-//
+
+/** @class OggPageInterleaver
+
+    @brief Use OggPageInterleaver to interleave two or more Ogg logical
+	       bitstreams into one physical bitstream.
+
+    To feed data into OggPageInterleaver, you will need to create one
+	OggMuxStream for every logical bitstream that you wish to interleave.  Use the
+	newStream() method to do this (don't create your own OggMuxStreams, otherwise
+	OggPageInterleaver won't know anything about them, which is Bad).  Feed your
+	pages to each OggMuxStream using its OggMuxStream::acceptOggPage() method.
+	(If you have your data in packets instead of pages, you'll need to use
+	OggPaginator to put them into pages first: see its documentation for details).
+	Note that you'll probably need to set the conversion parameters in
+	OggMuxStream using OggMuxStream::setConversionParams() to get proper Ogg
+	pages.  Again, see its documentation for details.
+  */
+
+
 using namespace std;
+
+
 class LIBOOOGG_API OggPageInterleaver
 	:	public INotifyArrival
 {
 public:
-	//TODO::: Shuoldn't be called file writer... just output or something.
-	OggPageInterleaver(IOggCallback* inFileWriter, INotifyComplete* inNotifier);
+	/// Construct a new OggPageInterleaver, which sends its output and completeness notification to inDataWriter and inNotifier, respectively
+	OggPageInterleaver(IOggCallback* inDataWriter, INotifyComplete* inNotifier);
 	virtual ~OggPageInterleaver(void);
 
+	/// Create a new OggMuxStream.  You need one OggMuxStream per logical bitstream you wish to interleave.
 	virtual OggMuxStream* newStream();
 	virtual void processData();
 	virtual void writeLowest();



More information about the commits mailing list