[xiph-commits] r8422 - in trunk/vorbis-tools: . debian ogg123 oggenc ogginfo

giles at motherfish-iii.xiph.org giles at motherfish-iii.xiph.org
Wed Dec 15 12:01:23 PST 2004


Author: giles
Date: 2004-12-15 12:01:22 -0800 (Wed, 15 Dec 2004)
New Revision: 8422

Modified:
   trunk/vorbis-tools/AUTHORS
   trunk/vorbis-tools/debian/copyright
   trunk/vorbis-tools/ogg123/audio.c
   trunk/vorbis-tools/ogg123/audio.h
   trunk/vorbis-tools/ogg123/buffer.c
   trunk/vorbis-tools/ogg123/buffer.h
   trunk/vorbis-tools/ogg123/cfgfile_options.c
   trunk/vorbis-tools/ogg123/cfgfile_options.h
   trunk/vorbis-tools/ogg123/cmdline_options.h
   trunk/vorbis-tools/ogg123/compat.h
   trunk/vorbis-tools/ogg123/http_transport.c
   trunk/vorbis-tools/ogg123/ogg123.1
   trunk/vorbis-tools/ogg123/ogg123.c
   trunk/vorbis-tools/ogg123/ogg123.h
   trunk/vorbis-tools/ogg123/playlist.h
   trunk/vorbis-tools/ogg123/status.c
   trunk/vorbis-tools/ogg123/status.h
   trunk/vorbis-tools/oggenc/encode.c
   trunk/vorbis-tools/oggenc/oggenc.c
   trunk/vorbis-tools/oggenc/platform.c
   trunk/vorbis-tools/ogginfo/Makefile.am
   trunk/vorbis-tools/ogginfo/ogginfo2.c
Log:
List Stan Seibert as the primary contributer for ogg123 and update
Kenneth Arnold's email. Changes made by request of Mr. Arnold.
Closes issue 536.


Modified: trunk/vorbis-tools/AUTHORS
===================================================================
--- trunk/vorbis-tools/AUTHORS	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/AUTHORS	2004-12-15 20:01:22 UTC (rev 8422)
@@ -5,7 +5,7 @@
 Michael Smith <msmith at xiph.org>
 
 ogg123:
-Kenneth Arnold <ogg123 at arnoldnet.net>
+Kenneth Arnold <kcarnold-xiph at arnoldnet.net>
 Stan Seibert <volsung at xiph.org>
 Segher Boessenkool <segher at xiph.org>
 

Modified: trunk/vorbis-tools/debian/copyright
===================================================================
--- trunk/vorbis-tools/debian/copyright	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/debian/copyright	2004-12-15 20:01:22 UTC (rev 8422)
@@ -3,7 +3,7 @@
 
 It was downloaded from http://www.vorbis.com/download_unix.psp
 
-Upstream Authors: Kenneth Arnold <ogg123 at arnoldnet.net>
+Upstream Authors: Kenneth Arnold <kcarnold-xiph at arnoldnet.net>
                   Segher Boessenkool <segher at xiph.org>
 		  Stan Seibert <volsung at xiph.org>
                   Michael Smith <msmith at xiph.org>

Modified: trunk/vorbis-tools/ogg123/audio.c
===================================================================
--- trunk/vorbis-tools/ogg123/audio.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/audio.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/audio.h
===================================================================
--- trunk/vorbis-tools/ogg123/audio.h	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/audio.h	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/buffer.c
===================================================================
--- trunk/vorbis-tools/ogg123/buffer.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/buffer.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/buffer.h
===================================================================
--- trunk/vorbis-tools/ogg123/buffer.h	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/buffer.h	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/cfgfile_options.c
===================================================================
--- trunk/vorbis-tools/ogg123/cfgfile_options.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/cfgfile_options.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/cfgfile_options.h
===================================================================
--- trunk/vorbis-tools/ogg123/cfgfile_options.h	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/cfgfile_options.h	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/cmdline_options.h
===================================================================
--- trunk/vorbis-tools/ogg123/cmdline_options.h	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/cmdline_options.h	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/compat.h
===================================================================
--- trunk/vorbis-tools/ogg123/compat.h	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/compat.h	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/http_transport.c
===================================================================
--- trunk/vorbis-tools/ogg123/http_transport.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/http_transport.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/ogg123.1
===================================================================
--- trunk/vorbis-tools/ogg123/ogg123.1	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/ogg123.1	2004-12-15 20:01:22 UTC (rev 8422)
@@ -307,12 +307,12 @@
 .TP
 Program Authors:
 .br
-Kenneth Arnold <kcarnold at yahoo.com>
+Kenneth Arnold <kcarnold-xiph at arnoldnet.net>
 .br
-Stan Seibert <indigo at aztec.asu.edu>
+Stan Seibert <volsung at xiph.org>
 .br
 
 .TP
 Manpage Author:
 .br
-Stan Seibert <indigo at aztec.asu.edu>
+Stan Seibert <volsung at xiph.org>

Modified: trunk/vorbis-tools/ogg123/ogg123.c
===================================================================
--- trunk/vorbis-tools/ogg123/ogg123.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/ogg123.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -1,4 +1,4 @@
-/* ogg123.c by Kenneth Arnold <ogg123 at arnoldnet.net> */
+/* ogg123.c by Kenneth Arnold <kcarnold-xiph at arnoldnet.net> */
 /* Maintained by Stan Seibert <volsung at xiph.org> */
 
 /********************************************************************
@@ -9,7 +9,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/ogg123.h
===================================================================
--- trunk/vorbis-tools/ogg123/ogg123.h	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/ogg123.h	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/playlist.h
===================================================================
--- trunk/vorbis-tools/ogg123/playlist.h	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/playlist.h	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2002                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/status.c
===================================================================
--- trunk/vorbis-tools/ogg123/status.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/status.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/ogg123/status.h
===================================================================
--- trunk/vorbis-tools/ogg123/status.h	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogg123/status.h	2004-12-15 20:01:22 UTC (rev 8422)
@@ -6,7 +6,7 @@
  * PLEASE READ THESE TERMS BEFORE DISTRIBUTING.                     *
  *                                                                  *
  * THE Ogg123 SOURCE CODE IS (C) COPYRIGHT 2000-2001                *
- * by Kenneth C. Arnold <ogg at arnoldnet.net> AND OTHER CONTRIBUTORS  *
+ * by Stan Seibert <volsung at xiph.org> AND OTHER CONTRIBUTORS        *
  * http://www.xiph.org/                                             *
  *                                                                  *
  ********************************************************************

Modified: trunk/vorbis-tools/oggenc/encode.c
===================================================================
--- trunk/vorbis-tools/oggenc/encode.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/oggenc/encode.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -5,7 +5,7 @@
  **
  ** Copyright 2000-2002, Michael Smith <msmith at xiph.org>
  **
- ** Portions from Vorbize, (c) Kenneth Arnold <kcarnold at yahoo.com>
+ ** Portions from Vorbize, (c) Kenneth Arnold <kcarnold-xiph at arnoldnet.net>
  ** and libvorbis examples, (c) Monty <monty at xiph.org>
  **/
 

Modified: trunk/vorbis-tools/oggenc/oggenc.c
===================================================================
--- trunk/vorbis-tools/oggenc/oggenc.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/oggenc/oggenc.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -5,7 +5,7 @@
  *
  * Copyright 2000-2002, Michael Smith <msmith at xiph.org>
  *
- * Portions from Vorbize, (c) Kenneth Arnold <kcarnold at yahoo.com>
+ * Portions from Vorbize, (c) Kenneth Arnold <kcarnold-xiph at arnoldnet.net>
  * and libvorbis examples, (c) Monty <monty at xiph.org>
  */
 

Modified: trunk/vorbis-tools/oggenc/platform.c
===================================================================
--- trunk/vorbis-tools/oggenc/platform.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/oggenc/platform.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -5,7 +5,7 @@
  **
  ** Copyright 2000, Michael Smith <msmith at xiph.org>
  **
- ** Portions from Vorbize, (c) Kenneth Arnold <kcarnold at yahoo.com>
+ ** Portions from Vorbize, (c) Kenneth Arnold <kcarnold-xiph at arnoldnet.net>
  ** and libvorbis examples, (c) Monty <monty at xiph.org>
  **/
 

Modified: trunk/vorbis-tools/ogginfo/Makefile.am
===================================================================
--- trunk/vorbis-tools/ogginfo/Makefile.am	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogginfo/Makefile.am	2004-12-15 20:01:22 UTC (rev 8422)
@@ -13,10 +13,10 @@
 mandir = @MANDIR@
 man_MANS = $(mans)
 
-INCLUDES = @SHARE_CFLAGS@ @OGG_CFLAGS@ @VORBIS_CFLAGS@ @I18N_CFLAGS@
+INCLUDES = @SHARE_CFLAGS@ @OGG_CFLAGS@ @VORBIS_CFLAGS@ @I18N_CFLAGS@ 
 
-ogginfo_LDADD = @SHARE_LIBS@ @VORBIS_LIBS@ @OGG_LIBS@ @LIBICONV@ @I18N_LIBS@
-ogginfo_DEPENDENCIES = @SHARE_LIBS@
+ogginfo_LDADD = @SHARE_LIBS@ @VORBIS_LIBS@ @OGG_LIBS@ @LIBICONV@ @I18N_LIBS@ -ltheora
+ogginfo_DEPENDENCIES = @SHARE_LIBS@ -ltheora
 
 ogginfo_SOURCES = $(ogginfosources)
 EXTRA_ogginfo_SOURCES = $(man_MANS) 

Modified: trunk/vorbis-tools/ogginfo/ogginfo2.c
===================================================================
--- trunk/vorbis-tools/ogginfo/ogginfo2.c	2004-12-15 19:23:54 UTC (rev 8421)
+++ trunk/vorbis-tools/ogginfo/ogginfo2.c	2004-12-15 20:01:22 UTC (rev 8422)
@@ -16,6 +16,7 @@
 
 #include <ogg/ogg.h>
 #include <vorbis/codec.h>
+#include <theora/theora.h>
 
 #include <locale.h>
 #include "utf8.h"
@@ -37,6 +38,7 @@
         {"Xiph.Org libVorbis I 20020717", "1.0"},
         {"Xiph.Org libVorbis I 20030909", "1.0.1"},
         {"Xiph.Org libVorbis I 20040629", "1.1.0"},
+        {"Xiph.Org libVorbis I 20040629", "1.1.0"},
         {NULL, NULL},
     };
 
@@ -88,6 +90,17 @@
     int doneheaders;
 } misc_vorbis_info;
 
+typedef struct {
+   theora_info ti;
+   theora_comment tc;
+
+    ogg_int64_t bytes;
+    ogg_int64_t lastgranulepos;
+    ogg_int64_t firstgranulepos;
+
+    int doneheaders;
+} misc_theora_info;
+
 static int printinfo = 1;
 static int printwarn = 1;
 static int verbose = 1;
@@ -415,6 +428,118 @@
     free(stream->data);
 }
 
+static void theora_process(stream_processor *stream, ogg_page *page )
+{
+    ogg_packet packet;
+    misc_theora_info *inf = stream->data;
+    int i, header=0;
+    int k;
+
+    ogg_stream_pagein(&stream->os, page);
+    if(inf->doneheaders < 3)
+        header = 1;
+
+    while(ogg_stream_packetout(&stream->os, &packet) > 0) {
+        if(inf->doneheaders < 3) {
+			if(theora_decode_header(&inf->ti,&inf->tc,&packet)){
+				printf("Error parsing Theora stream headers; corrupt stream?\n");
+				exit(1);
+			}
+            inf->doneheaders++;
+            if(inf->doneheaders == 3) {
+				printf("Theora headers parsed for stream %d, information follows...\n\n",stream->num);
+				printf("Vendor: %s\n",inf->tc.vendor);
+				printf("Version: %d.%d.%d\n",inf->ti.version_major,inf->ti.version_minor,inf->ti.version_subminor);
+
+				printf("Size: %dx%d \n",inf->ti.width,inf->ti.height);
+				if(inf->ti.aspect_denominator){
+					printf("Pixel Aspect Ratio: %.2f/1 \n",(float)inf->ti.aspect_numerator/inf->ti.aspect_denominator);
+					printf("Frame Aspect Ratio: %.2f/1 \n",(float)(inf->ti.aspect_numerator*inf->ti.width)/(inf->ti.aspect_denominator*inf->ti.height));
+				}
+				else{
+					printf("No Aspect Ratio defined.\n");
+				}
+				
+				printf("Colorspace: ");
+				switch(inf->ti.colorspace){
+					case OC_CS_ITU_REC_470BG:
+						printf("ITU_REC_470BG");
+						break;
+					case OC_CS_ITU_REC_470M:
+						printf("ITU_REC_470M");
+						break;
+					
+				}
+				printf("\n");
+				
+				printf("Quality: %.2f\n",(float)inf->ti.quality/6.3);
+				printf("Target Bitrate: %d \n",inf->ti.target_bitrate);
+				
+				printf("\n");
+			}
+        }
+    }
+    if(!header) {
+        ogg_int64_t gp = ogg_page_granulepos(page);
+        if(gp >= 0) {
+            if(gp < inf->lastgranulepos)
+#ifdef _WIN32
+                warn(_("Warning: granulepos in stream %d decreases from %I64d to %I64d" ),
+                        stream->num, inf->lastgranulepos, gp);
+#else
+                warn(_("Warning: granulepos in stream %d decreases from %lld to %lld" ),
+                        stream->num, inf->lastgranulepos, gp);
+#endif
+            inf->lastgranulepos = gp;
+        }
+        else {
+            warn(_("Negative granulepos on theora stream outside of headers. This file was created by a buggy encoder\n"));
+        }
+        if(inf->firstgranulepos < 0) {
+        }
+        inf->bytes += page->header_len + page->body_len;
+    }
+
+}
+
+static void theora_end(stream_processor *stream) 
+{
+    misc_theora_info *inf = stream->data;
+    long minutes, seconds, milliseconds;
+    double bitrate, time;
+
+	
+    /* This should be lastgranulepos - startgranulepos, or something like that*/
+	//no theora stat in misc_theora_info
+    /*
+	time = theora_granule_time(&inf->td,inf->lastgranulepos);
+    minutes = (long)time / 60;
+    seconds = (long)time - minutes*60;
+    milliseconds = (long)((time - minutes*60 - seconds)*1000);
+    bitrate = inf->bytes*8 / time / 1000.0;
+
+#ifdef _WIN32
+    info(_("Vorbis stream %d:\n"
+           "\tTotal data length: %I64d bytes\n"
+           "\tPlayback length: %ldm:%02ld.%03lds\n"
+           "\tAverage bitrate: %f kbps\n"), 
+            stream->num,inf->bytes, minutes, seconds, milliseconds, bitrate);
+#else
+    info(_("Vorbis stream %d:\n"
+           "\tTotal data length: %lld bytes\n"
+           "\tPlayback length: %ldm:%02ld.%03lds\n"
+           "\tAverage bitrate: %f kbps\n"), 
+            stream->num,inf->bytes, minutes, seconds, milliseconds, bitrate);
+#endif
+*/
+    theora_comment_clear(&inf->tc);
+    theora_info_clear(&inf->ti);
+
+    free(stream->data);
+}
+
+
+
 static void process_null(stream_processor *stream, ogg_page *page)
 {
     /* This is for invalid streams. */
@@ -495,6 +620,23 @@
 
 }
 
+static void theora_start(stream_processor *stream)
+{
+    misc_theora_info *info;
+	
+    stream->type = "theora";
+    stream->process_page = theora_process;
+    stream->process_end = theora_end;
+
+    stream->data = calloc(1, sizeof(misc_theora_info));
+
+    info = stream->data;
+
+    theora_comment_init(&info->tc);
+    theora_info_init(&info->ti);
+}
+
+
 static stream_processor *find_stream_processor(stream_set *set, ogg_page *page)
 {
     ogg_uint32_t serial = ogg_page_serialno(page);
@@ -793,4 +935,3 @@
 
     return ret;
 }
-



More information about the commits mailing list