[xiph-commits] r16516 - in branches/theora-monty-post-1-1: . debian examples include/theora lib lib/x86 lib/x86_vc tests win32 win32/VS2005/libtheora win32/VS2008/libtheora

xiphmont at svn.xiph.org xiphmont at svn.xiph.org
Tue Aug 25 07:59:32 PDT 2009


Author: xiphmont
Date: 2009-08-25 07:59:31 -0700 (Tue, 25 Aug 2009)
New Revision: 16516

Added:
   branches/theora-monty-post-1-1/lib/theora.def
Removed:
   branches/theora-monty-post-1-1/win32/libtheora.def
Modified:
   branches/theora-monty-post-1-1/
   branches/theora-monty-post-1-1/AUTHORS
   branches/theora-monty-post-1-1/CHANGES
   branches/theora-monty-post-1-1/COPYING
   branches/theora-monty-post-1-1/README
   branches/theora-monty-post-1-1/configure.ac
   branches/theora-monty-post-1-1/debian/copyright
   branches/theora-monty-post-1-1/examples/dump_psnr.c
   branches/theora-monty-post-1-1/examples/dump_video.c
   branches/theora-monty-post-1-1/examples/encoder_example.c
   branches/theora-monty-post-1-1/examples/player_example.c
   branches/theora-monty-post-1-1/examples/png2theora.c
   branches/theora-monty-post-1-1/examples/splayer.c
   branches/theora-monty-post-1-1/include/theora/codec.h
   branches/theora-monty-post-1-1/include/theora/theora.h
   branches/theora-monty-post-1-1/lib/analyze.c
   branches/theora-monty-post-1-1/lib/apiwrapper.c
   branches/theora-monty-post-1-1/lib/apiwrapper.h
   branches/theora-monty-post-1-1/lib/bitpack.c
   branches/theora-monty-post-1-1/lib/bitpack.h
   branches/theora-monty-post-1-1/lib/cpu.c
   branches/theora-monty-post-1-1/lib/cpu.h
   branches/theora-monty-post-1-1/lib/dct.h
   branches/theora-monty-post-1-1/lib/decapiwrapper.c
   branches/theora-monty-post-1-1/lib/decinfo.c
   branches/theora-monty-post-1-1/lib/decint.h
   branches/theora-monty-post-1-1/lib/decode.c
   branches/theora-monty-post-1-1/lib/defexp.awk
   branches/theora-monty-post-1-1/lib/dequant.c
   branches/theora-monty-post-1-1/lib/dequant.h
   branches/theora-monty-post-1-1/lib/encfrag.c
   branches/theora-monty-post-1-1/lib/encint.h
   branches/theora-monty-post-1-1/lib/encode.c
   branches/theora-monty-post-1-1/lib/encoder_disabled.c
   branches/theora-monty-post-1-1/lib/enquant.c
   branches/theora-monty-post-1-1/lib/fdct.c
   branches/theora-monty-post-1-1/lib/fragment.c
   branches/theora-monty-post-1-1/lib/huffdec.c
   branches/theora-monty-post-1-1/lib/huffdec.h
   branches/theora-monty-post-1-1/lib/huffman.h
   branches/theora-monty-post-1-1/lib/idct.c
   branches/theora-monty-post-1-1/lib/info.c
   branches/theora-monty-post-1-1/lib/internal.c
   branches/theora-monty-post-1-1/lib/internal.h
   branches/theora-monty-post-1-1/lib/mcenc.c
   branches/theora-monty-post-1-1/lib/ocintrin.h
   branches/theora-monty-post-1-1/lib/quant.c
   branches/theora-monty-post-1-1/lib/quant.h
   branches/theora-monty-post-1-1/lib/rate.c
   branches/theora-monty-post-1-1/lib/state.c
   branches/theora-monty-post-1-1/lib/tokenize.c
   branches/theora-monty-post-1-1/lib/x86/mmxfrag.c
   branches/theora-monty-post-1-1/lib/x86/mmxidct.c
   branches/theora-monty-post-1-1/lib/x86/mmxstate.c
   branches/theora-monty-post-1-1/lib/x86/x86enc.c
   branches/theora-monty-post-1-1/lib/x86/x86int.h
   branches/theora-monty-post-1-1/lib/x86/x86state.c
   branches/theora-monty-post-1-1/lib/x86_vc/mmxfrag.c
   branches/theora-monty-post-1-1/lib/x86_vc/mmxidct.c
   branches/theora-monty-post-1-1/lib/x86_vc/mmxstate.c
   branches/theora-monty-post-1-1/lib/x86_vc/x86enc.c
   branches/theora-monty-post-1-1/lib/x86_vc/x86int.h
   branches/theora-monty-post-1-1/lib/x86_vc/x86state.c
   branches/theora-monty-post-1-1/tests/comment.c
   branches/theora-monty-post-1-1/tests/comment_theora.c
   branches/theora-monty-post-1-1/tests/granulepos.c
   branches/theora-monty-post-1-1/tests/granulepos_theora.c
   branches/theora-monty-post-1-1/tests/noop.c
   branches/theora-monty-post-1-1/tests/noop_theora.c
   branches/theora-monty-post-1-1/tests/tests.h
   branches/theora-monty-post-1-1/theoraenc-uninstalled.pc.in
   branches/theora-monty-post-1-1/theoraenc.pc.in
   branches/theora-monty-post-1-1/win32/VS2005/libtheora/libtheora_dynamic.vcproj
   branches/theora-monty-post-1-1/win32/VS2008/libtheora/libtheora_dynamic.vcproj
Log:
Bring yuv4ogg capable branch up to date with trunk HEAD




Property changes on: branches/theora-monty-post-1-1
___________________________________________________________________
Modified: svn:mergeinfo
   - /trunk/theora:14138-15320,15741
   + /trunk/theora:14138-15320,15741,16465-16515

Modified: branches/theora-monty-post-1-1/AUTHORS
===================================================================
--- branches/theora-monty-post-1-1/AUTHORS	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/AUTHORS	2009-08-25 14:59:31 UTC (rev 16516)
@@ -35,8 +35,8 @@
 Michael Smith
 Andre Pang
 calc
-ccheney
-brendan
+Chris Cheney
+Brendan Cully
 Edward Hervey
 Adam Moss
 Colin Ward

Modified: branches/theora-monty-post-1-1/CHANGES
===================================================================
--- branches/theora-monty-post-1-1/CHANGES	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/CHANGES	2009-08-25 14:59:31 UTC (rev 16516)
@@ -1,8 +1,19 @@
-libtheora 1.1beta2 (unreleased)
+libtheora 1.1beta4 (unreleased)
 
+ - no changes recorded
+
+libtheora 1.1beta3 (2009 August 22)
+
+ - Rate control fixes to smooth quality
+ - MSVC build now exports all of the 1.0 api
+ - Assorted small bug fixes
+
+libtheora 1.1beta2 (2009 August 12)
+
  - Fix a rate control problem with difficult input
- - Build fixes for OpenBSD
+ - Build fixes for OpenBSD and Apple Xcode
  - Examples now all use the 1.0 api
+ - TH_ENCCTL_SET_SPLEVEL works again
  - Various bug fixes and source tree rearrangement
 
 libtheora 1.1beta1 (2009 August 5)

Modified: branches/theora-monty-post-1-1/COPYING
===================================================================
--- branches/theora-monty-post-1-1/COPYING	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/COPYING	2009-08-25 14:59:31 UTC (rev 16516)
@@ -1,4 +1,4 @@
-Copyright (C) 2002-2007 Xiph.org Foundation
+Copyright (C) 2002-2009 Xiph.org Foundation
 
 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions

Modified: branches/theora-monty-post-1-1/README
===================================================================
--- branches/theora-monty-post-1-1/README	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/README	2009-08-25 14:59:31 UTC (rev 16516)
@@ -1,19 +1,21 @@
 -------------------------------------------------------------------------
-             The Xiph.org Foundation's libtheora 1.1 alpha release
+             The Xiph.org Foundation's libtheora 1.1 beta release
 -------------------------------------------------------------------------
 
 *** What is Theora?
 
 Theora is Xiph.Org's first publicly released video codec, intended
 for use within the Foundation's Ogg multimedia streaming system.
-Theora is derived directly from On2's VP3 codec; Currently the 
-encoders are nearly identical, but Theora will make use of new
-features supported by the decoder to improve on what is possible
-with VP3.
+Theora is derived directly from On2's VP3 codec, adds new features
+while allow it a longer useful lifetime as an competitive codec.
 
+The 1.0 release decoder supports all the new features, but the
+encoder is nearly identical to the VP3 code.
+
 The 1.1 release features a completely rewritten encoder, offering
 better performance and compression, and making more complete use
-of the format's feature set.
+of the format's feature set. Files produced by both encoders can
+be decoded by either release.
 
 *** Where is Theora?
 

Modified: branches/theora-monty-post-1-1/configure.ac
===================================================================
--- branches/theora-monty-post-1-1/configure.ac	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/configure.ac	2009-08-25 14:59:31 UTC (rev 16516)
@@ -4,7 +4,7 @@
 dnl Initialization and Versioning
 dnl ------------------------------------------------
 
-AC_INIT(libtheora,[1.1beta2svn])
+AC_INIT(libtheora,[1.1beta4svn])
 
 AC_CANONICAL_HOST
 AC_CANONICAL_TARGET
@@ -22,21 +22,21 @@
 dnl - interfaces removed -> AGE = 0
 
 TH_LIB_CURRENT=3
-TH_LIB_REVISION=6
+TH_LIB_REVISION=8
 TH_LIB_AGE=3
 AC_SUBST(TH_LIB_CURRENT)
 AC_SUBST(TH_LIB_REVISION)
 AC_SUBST(TH_LIB_AGE)
 
 THDEC_LIB_CURRENT=2
-THDEC_LIB_REVISION=0
+THDEC_LIB_REVISION=2
 THDEC_LIB_AGE=1
 AC_SUBST(THDEC_LIB_CURRENT)
 AC_SUBST(THDEC_LIB_REVISION)
 AC_SUBST(THDEC_LIB_AGE)
 
 THENC_LIB_CURRENT=2
-THENC_LIB_REVISION=0
+THENC_LIB_REVISION=2
 THENC_LIB_AGE=1
 AC_SUBST(THENC_LIB_CURRENT)
 AC_SUBST(THENC_LIB_REVISION)

Modified: branches/theora-monty-post-1-1/debian/copyright
===================================================================
--- branches/theora-monty-post-1-1/debian/copyright	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/debian/copyright	2009-08-25 14:59:31 UTC (rev 16516)
@@ -7,7 +7,7 @@
 
 Copyright:
 
-Copyright (c) 2002-2004, Xiph.org Foundation
+Copyright (c) 2002-2009 Xiph.org Foundation
 
 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions

Modified: branches/theora-monty-post-1-1/examples/dump_psnr.c
===================================================================
--- branches/theora-monty-post-1-1/examples/dump_psnr.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/examples/dump_psnr.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/examples/dump_video.c
===================================================================
--- branches/theora-monty-post-1-1/examples/dump_video.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/examples/dump_video.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2006                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/examples/encoder_example.c
===================================================================
--- branches/theora-monty-post-1-1/examples/encoder_example.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/examples/encoder_example.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -1752,10 +1752,12 @@
     if(video_q==-1)
       video_q=0;
   }else{
-    if(video_r>0)
-      video_q=0;
-    if(video_q==-1)
-      video_q=48;
+    if(video_q==-1){
+      if(video_r>0)
+        video_q=0;
+      else
+        video_q=48;
+    }
   }
 
   if(keyframe_frequency<=0){
@@ -1790,11 +1792,11 @@
 
   /* Set up Ogg output stream */
   srand(time(NULL));
-  if(audio)ogg_stream_init(&vo,rand());
   ogg_stream_init(&to,rand()); /* oops, add one ot the above */
 
   /* initialize Vorbis assuming we have audio to compress. */
   if(audio && twopass!=1){
+    ogg_stream_init(&vo,rand());
     vorbis_info_init(&vi);
     if(audio_q>-99)
       ret = vorbis_encode_init_vbr(&vi,audio_ch,audio_hz,audio_q);

Modified: branches/theora-monty-post-1-1/examples/player_example.c
===================================================================
--- branches/theora-monty-post-1-1/examples/player_example.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/examples/player_example.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/examples/png2theora.c
===================================================================
--- branches/theora-monty-post-1-1/examples/png2theora.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/examples/png2theora.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007,2009           *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009,2009           *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/examples/splayer.c
===================================================================
--- branches/theora-monty-post-1-1/examples/splayer.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/examples/splayer.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2003                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/include/theora/codec.h
===================================================================
--- branches/theora-monty-post-1-1/include/theora/codec.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/include/theora/codec.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -24,10 +24,10 @@
  * implementation for <a href="http://www.theora.org/">Theora</a>, a free,
  * patent-unencumbered video codec.
  * Theora is derived from On2's VP3 codec with additional features and
- *  integration for Ogg multimedia formats by
+ *  integration with Ogg multimedia formats by
  *  <a href="http://www.xiph.org/">the Xiph.Org Foundation</a>.
  * Complete documentation of the format itself is available in
- * <a href="http://www.theora.org/doc/Theora_I_spec.pdf">the Theora
+ * <a href="http://www.theora.org/doc/Theora.pdf">the Theora
  *  specification</a>.
  *
  * \subsection Organization
@@ -92,9 +92,9 @@
 /*@}*/
 
 /**The currently defined color space tags.
- * See <a href="http://www.theora.org/doc/Theora_I_spec.pdf">the Theora
- *  specification</a>, Chapter 4, for exact details on the meaning of each of
- *  these color spaces.*/
+ * See <a href="http://www.theora.org/doc/Theora.pdf">the Theora
+ *  specification</a>, Chapter 4, for exact details on the meaning
+ *  of each of these color spaces.*/
 typedef enum{
   /**The color space was not specified at the encoder.
       It may be conveyed by an external means.*/
@@ -108,13 +108,13 @@
 }th_colorspace;
 
 /**The currently defined pixel format tags.
- * See <a href="http://www.theora.org/doc/Theora_I_spec.pdf">the Theora
+ * See <a href="http://www.theora.org/doc/Theora.pdf">the Theora
  *  specification</a>, Section 4.4, for details on the precise sample
  *  locations.*/
 typedef enum{
   /**Chroma decimation by 2 in both the X and Y directions (4:2:0).
-     The Cb and Cr chroma planes are half the width and half the height of the
-      luma plane.*/
+     The Cb and Cr chroma planes are half the width and half the
+      height of the luma plane.*/
   TH_PF_420,
   /**Currently reserved.*/
   TH_PF_RSVD,
@@ -133,11 +133,11 @@
 
 /**A buffer for a single color plane in an uncompressed image.
  * This contains the image data in a left-to-right, top-down format.
- * Each row of pixels is stored contiguously in memory, but successive rows
- *  need not be.
+ * Each row of pixels is stored contiguously in memory, but successive
+ *  rows need not be.
  * Use \a stride to compute the offset of the next row.
- * The encoder accepts both positive \a stride values (top-down in memory) and
- *  negative (bottom-up in memory).
+ * The encoder accepts both positive \a stride values (top-down in memory)
+ *  and negative (bottom-up in memory).
  * The decoder currently always generates images with positive strides.*/
 typedef struct{
   /**The width of this plane.*/
@@ -151,18 +151,18 @@
 }th_img_plane;
 
 /**A complete image buffer for an uncompressed frame.
- * The chroma planes may be decimated by a factor of two in either direction,
- *  as indicated by th_info#pixel_fmt.
+ * The chroma planes may be decimated by a factor of two in either
+ *  direction, as indicated by th_info#pixel_fmt.
  * The width and height of the Y' plane must be multiples of 16.
- * They may need to be cropped for display, using the rectangle specified by
- *  th_info#pic_x, th_info#pic_y, th_info#pic_width, and
- *  th_info#pic_height.
+ * They may need to be cropped for display, using the rectangle
+ *  specified by th_info#pic_x, th_info#pic_y, th_info#pic_width,
+ *  and th_info#pic_height.
  * All samples are 8 bits.
  * \note The term YUV often used to describe a colorspace is ambiguous.
- * The exact parameters of the RGB to YUV conversion process aside, in many
- *  contexts the U and V channels actually have opposite meanings.
- * To avoid this confusion, we are explicit: the name of the color channels are
- *  Y'CbCr, and they appear in that order, always.
+ * The exact parameters of the RGB to YUV conversion process aside, in
+ *  many contexts the U and V channels actually have opposite meanings.
+ * To avoid this confusion, we are explicit: the name of the color
+ *  channels are Y'CbCr, and they appear in that order, always.
  * The prime symbol denotes that the Y channel is non-linear.
  * Cb and Cr stand for "Chroma blue" and "Chroma red", respectively.*/
 typedef th_img_plane th_ycbcr_buffer[3];
@@ -192,7 +192,7 @@
  *
  * It is also generally recommended that the offsets and sizes should still be
  *  multiples of 2 to avoid chroma sampling shifts when chroma is sub-sampled.
- * See <a href="http://www.theora.org/doc/Theora_I_spec.pdf">the Theora
+ * See <a href="http://www.theora.org/doc/Theora.pdf">the Theora
  *  specification</a>, Section 4.4, for more details.
  *
  * Frame rate, in frames per second, is stored as a rational fraction, as is
@@ -230,8 +230,8 @@
    *  #frame_height-#pic_height-#pic_y must be no larger than 255.
    * This slightly funny restriction is due to the fact that the offset is
    *  specified from the top of the image for consistency with the standard
-   *  graphics left-handed coordinate system used throughout this API, while it
-   *  is stored in the encoded stream as an offset from the bottom.*/
+   *  graphics left-handed coordinate system used throughout this API, while
+   *  it is stored in the encoded stream as an offset from the bottom.*/
   ogg_uint32_t  pic_y;
   /**\name Frame rate
    * The frame rate, as a fraction.
@@ -311,7 +311,7 @@
  * A particular tag may occur more than once, and order is significant.
  * The character set encoding for the strings is always UTF-8, but the tag
  *  names are limited to ASCII, and treated as case-insensitive.
- * See <a href="http://www.theora.org/doc/Theora_I_spec.pdf">the Theora
+ * See <a href="http://www.theora.org/doc/Theora.pdf">the Theora
  *  specification</a>, Section 6.3.3 for details.
  *
  * In filling in this structure, th_decode_headerin() will null-terminate

Modified: branches/theora-monty-post-1-1/include/theora/theora.h
===================================================================
--- branches/theora-monty-post-1-1/include/theora/theora.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/include/theora/theora.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -42,7 +42,7 @@
  *
  * libtheora is the reference implementation for
  * <a href="http://www.theora.org/">Theora</a>, a free video codec.
- * Theora is derived from On2's VP3 codec with improved integration for
+ * Theora is derived from On2's VP3 codec with improved integration with
  * Ogg multimedia formats by <a href="http://www.xiph.org/">Xiph.Org</a>.
  * 
  * \section overview Overview

Modified: branches/theora-monty-post-1-1/lib/analyze.c
===================================================================
--- branches/theora-monty-post-1-1/lib/analyze.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/analyze.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2008                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************
@@ -2055,7 +2055,7 @@
           if(modes[OC_MODE_GOLDEN_NOMV].cost<modes[mb_mode].cost){
             mb_mode=OC_MODE_GOLDEN_NOMV;
           }
-          mb_mv_bits_0=mb_gmv_bits_0;
+          mb_mv_bits_0=mb_gmv_bits_0=0;
         }
         mb_modes[mbi]=mb_mode;
         /*Propagate the MVs to the luma blocks.*/

Modified: branches/theora-monty-post-1-1/lib/apiwrapper.c
===================================================================
--- branches/theora-monty-post-1-1/lib/apiwrapper.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/apiwrapper.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/apiwrapper.h
===================================================================
--- branches/theora-monty-post-1-1/lib/apiwrapper.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/apiwrapper.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/bitpack.c
===================================================================
--- branches/theora-monty-post-1-1/lib/bitpack.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/bitpack.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE OggTheora SOURCE CODE IS (C) COPYRIGHT 1994-2008             *
+ * THE OggTheora SOURCE CODE IS (C) COPYRIGHT 1994-2009             *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/bitpack.h
===================================================================
--- branches/theora-monty-post-1-1/lib/bitpack.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/bitpack.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE OggTheora SOURCE CODE IS (C) COPYRIGHT 1994-2008             *
+ * THE OggTheora SOURCE CODE IS (C) COPYRIGHT 1994-2009             *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/cpu.c
===================================================================
--- branches/theora-monty-post-1-1/lib/cpu.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/cpu.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2008                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/cpu.h
===================================================================
--- branches/theora-monty-post-1-1/lib/cpu.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/cpu.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/dct.h
===================================================================
--- branches/theora-monty-post-1-1/lib/dct.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/dct.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/decapiwrapper.c
===================================================================
--- branches/theora-monty-post-1-1/lib/decapiwrapper.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/decapiwrapper.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2008                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/decinfo.c
===================================================================
--- branches/theora-monty-post-1-1/lib/decinfo.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/decinfo.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/decint.h
===================================================================
--- branches/theora-monty-post-1-1/lib/decint.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/decint.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/decode.c
===================================================================
--- branches/theora-monty-post-1-1/lib/decode.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/decode.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2008                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/defexp.awk
===================================================================
--- branches/theora-monty-post-1-1/lib/defexp.awk	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/defexp.awk	2009-08-25 14:59:31 UTC (rev 16516)
@@ -8,7 +8,7 @@
 /^\w*;.*/ {next}
 
 # remember and propagate the library name
-/LIBRARY/ {name = $2; print "\# export list for", name; next}
+/LIBRARY/ {name = $2; print "# export list for", name; next}
 
 # skip various other lines
 /^\w*NAME/ ||

Modified: branches/theora-monty-post-1-1/lib/dequant.c
===================================================================
--- branches/theora-monty-post-1-1/lib/dequant.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/dequant.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/dequant.h
===================================================================
--- branches/theora-monty-post-1-1/lib/dequant.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/dequant.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/encfrag.c
===================================================================
--- branches/theora-monty-post-1-1/lib/encfrag.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/encfrag.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/encint.h
===================================================================
--- branches/theora-monty-post-1-1/lib/encint.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/encint.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2008                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************
@@ -35,7 +35,6 @@
 typedef struct oc_mb_enc_info         oc_mb_enc_info;
 typedef struct oc_mode_scheme_chooser oc_mode_scheme_chooser;
 typedef struct oc_iir_filter          oc_iir_filter;
-typedef struct oc_log_linear_fit      oc_log_linear_fit;
 typedef struct oc_frame_metrics       oc_frame_metrics;
 typedef struct oc_rc_state            oc_rc_state;
 typedef struct th_enc_ctx             oc_enc_ctx;
@@ -183,17 +182,6 @@
 
 
 
-/*A linear fit for the log-domain scale factors used in 2-pass.*/
-struct oc_log_linear_fit{
-  ogg_int64_t  x;
-  ogg_int64_t  y;
-  ogg_int64_t  x2;
-  ogg_int64_t  xy;
-  ogg_uint32_t n;
-};
-
-
-
 /*The 2-pass metrics associated with a single frame.*/
 struct oc_frame_metrics{
   /*The log base 2 of the scale factor for this frame in Q24 format.*/
@@ -243,6 +231,9 @@
   unsigned char      cap_underflow;
   /*Second-order lowpass filters to track scale and VFR.*/
   oc_iir_filter      scalefilter[2];
+  int                inter_count;
+  int                inter_delay;
+  int                inter_delay_target;
   oc_iir_filter      vfrfilter;
   /*Two-pass mode state.
     0 => 1-pass encoding.
@@ -282,8 +273,8 @@
   /*The frame count of each type in the current 2-pass window; this does not
      include dup frames.*/
   int                nframes[3];
-  /*Bias correction fits for the 1st-pass scale factors.*/
-  oc_log_linear_fit  corr[2];
+  /*The total accumulated estimation bias.*/
+  ogg_int64_t        rate_bias;
 };
 
 

Modified: branches/theora-monty-post-1-1/lib/encode.c
===================================================================
--- branches/theora-monty-post-1-1/lib/encode.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/encode.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************
@@ -1258,6 +1258,7 @@
       if(_enc==NULL||_buf==NULL)return TH_EFAULT;
       if(_buf_sz!=sizeof(keyframe_frequency_force))return TH_EINVAL;
       keyframe_frequency_force=*(ogg_uint32_t *)_buf;
+      if(keyframe_frequency_force<=0)keyframe_frequency_force=1;
       if(_enc->packet_state==OC_PACKET_INFO_HDR){
         /*It's still early enough to enlarge keyframe_granule_shift.*/
         _enc->state.info.keyframe_granule_shift=OC_CLAMPI(

Modified: branches/theora-monty-post-1-1/lib/encoder_disabled.c
===================================================================
--- branches/theora-monty-post-1-1/lib/encoder_disabled.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/encoder_disabled.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/enquant.c
===================================================================
--- branches/theora-monty-post-1-1/lib/enquant.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/enquant.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2005                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/fdct.c
===================================================================
--- branches/theora-monty-post-1-1/lib/fdct.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/fdct.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/fragment.c
===================================================================
--- branches/theora-monty-post-1-1/lib/fragment.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/fragment.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/huffdec.c
===================================================================
--- branches/theora-monty-post-1-1/lib/huffdec.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/huffdec.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/huffdec.h
===================================================================
--- branches/theora-monty-post-1-1/lib/huffdec.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/huffdec.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/huffman.h
===================================================================
--- branches/theora-monty-post-1-1/lib/huffman.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/huffman.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/idct.c
===================================================================
--- branches/theora-monty-post-1-1/lib/idct.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/idct.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/info.c
===================================================================
--- branches/theora-monty-post-1-1/lib/info.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/info.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/internal.c
===================================================================
--- branches/theora-monty-post-1-1/lib/internal.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/internal.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/internal.h
===================================================================
--- branches/theora-monty-post-1-1/lib/internal.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/internal.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************
@@ -72,7 +72,7 @@
 
 
 /*This library's version.*/
-# define OC_VENDOR_STRING "Xiph.Org libtheora 1.1 20090806 (Thusnelda)"
+# define OC_VENDOR_STRING "Xiph.Org libtheora 1.1 20090822 (Thusnelda)"
 
 /*Theora bitstream version.*/
 # define TH_VERSION_MAJOR (3)

Modified: branches/theora-monty-post-1-1/lib/mcenc.c
===================================================================
--- branches/theora-monty-post-1-1/lib/mcenc.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/mcenc.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2008                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/ocintrin.h
===================================================================
--- branches/theora-monty-post-1-1/lib/ocintrin.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/ocintrin.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/quant.c
===================================================================
--- branches/theora-monty-post-1-1/lib/quant.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/quant.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/quant.h
===================================================================
--- branches/theora-monty-post-1-1/lib/quant.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/quant.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/rate.c
===================================================================
--- branches/theora-monty-post-1-1/lib/rate.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/rate.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************
@@ -45,10 +45,14 @@
   return (int)(((ogg_int64_t)t0<<32)+(t1-t0<<8)*(ogg_int64_t)d>>32);
 }
 
-/*Initialize a 2nd order low-pass Bessel filter with the corresponding delay
-   and initial value.
-  _value is Q24.*/
-void oc_iir_filter_init(oc_iir_filter *_f,int _delay,ogg_int32_t _value){
+/*Re-initialize the Bessel filter coefficients with the specified delay.
+  This does not alter the x/y state, but changes the reaction time of the
+   filter.
+  Altering the time constant of a reactive filter without alterning internal
+   state is something that has to be done carefuly, but our design operates at
+   high enough delays and with small enough time constant changes to make it
+   safe.*/
+static void oc_iir_filter_reinit(oc_iir_filter *_f,int _delay){
   int         alpha;
   ogg_int64_t one48;
   ogg_int64_t warp;
@@ -85,6 +89,13 @@
   _f->c[0]=(ogg_int32_t)(b1+((ogg_int64_t)1<<31)>>32);
   _f->c[1]=(ogg_int32_t)(b2+((ogg_int64_t)1<<31)>>32);
   _f->g=(ogg_int32_t)(a+128>>8);
+}
+
+/*Initialize a 2nd order low-pass Bessel filter with the corresponding delay
+   and initial value.
+  _value is Q24.*/
+static void oc_iir_filter_init(oc_iir_filter *_f,int _delay,ogg_int32_t _value){
+  oc_iir_filter_reinit(_f,_delay);
   _f->y[1]=_f->y[0]=_f->x[1]=_f->x[0]=_value;
 }
 
@@ -288,13 +299,19 @@
   _enc->rc.log_drop_scale=OC_Q57(0);
   /*Set up second order followers, initialized according to corresponding
      time constants.*/
-  oc_iir_filter_init(&_enc->rc.scalefilter[0],2,
+  oc_iir_filter_init(&_enc->rc.scalefilter[0],4,
    oc_q57_to_q24(_enc->rc.log_scale[0]));
-  inter_delay=_enc->rc.twopass?
-   OC_MAXI(_enc->keyframe_frequency_force,12):_enc->rc.buf_delay;
-  oc_iir_filter_init(&_enc->rc.scalefilter[1],inter_delay>>1,
+  inter_delay=(_enc->rc.twopass?
+   OC_MAXI(_enc->keyframe_frequency_force,12):_enc->rc.buf_delay)>>1;
+  _enc->rc.inter_count=0;
+  /*We clamp the actual inter_delay to a minimum of 10 to work within the range
+     of values where later incrementing the delay works as designed.
+    10 is not an exact choice, but rather a good working trade-off.*/
+  _enc->rc.inter_delay=10;
+  _enc->rc.inter_delay_target=inter_delay;
+  oc_iir_filter_init(&_enc->rc.scalefilter[1],_enc->rc.inter_delay,
    oc_q57_to_q24(_enc->rc.log_scale[1]));
-  oc_iir_filter_init(&_enc->rc.vfrfilter,2,
+  oc_iir_filter_init(&_enc->rc.vfrfilter,4,
    oc_bexp64_q24(_enc->rc.log_drop_scale));
 }
 
@@ -303,6 +320,7 @@
   _rc->twopass_buffer_bytes=0;
   _rc->twopass_force_kf=0;
   _rc->frame_metrics=NULL;
+  _rc->rate_bias=0;
   if(_enc->state.info.target_bitrate>0){
     /*The buffer size is set equal to the keyframe interval, clamped to the
        range [12,256] frames.
@@ -328,6 +346,7 @@
   /*If encoding has not yet begun, reset the buffer state.*/
   if(_enc->state.curframe_num<0)oc_enc_rc_reset(_enc);
   else{
+    int idt;
     /*Otherwise, update the bounds on the buffer, but not the current
        fullness.*/
     _enc->rc.bits_per_frame=(_enc->state.info.target_bitrate*
@@ -343,8 +362,15 @@
     _enc->rc.max=_enc->rc.bits_per_frame*_enc->rc.buf_delay;
     _enc->rc.target=(_enc->rc.max+1>>1)+(_enc->rc.bits_per_frame+2>>2)*
      OC_MINI(_enc->keyframe_frequency_force,_enc->rc.buf_delay);
-    oc_iir_filter_init(&_enc->rc.scalefilter[1],_enc->rc.buf_delay>>1,
-     oc_q57_to_q24(_enc->rc.log_scale[1]));
+    /*Update the INTER-frame scale filter delay.
+      We jump to it immediately if we've already seen enough frames; otherwise
+       it is simply set as the new target.*/
+    _enc->rc.inter_delay_target=idt=OC_MAXI(_enc->rc.buf_delay>>1,10);
+    if(idt<OC_MINI(_enc->rc.inter_delay,_enc->rc.inter_count)){
+      oc_iir_filter_init(&_enc->rc.scalefilter[1],idt,
+       _enc->rc.scalefilter[1].y[0]);
+      _enc->rc.inter_delay=idt;
+    }
   }
   /*If we're in pass-2 mode, make sure the frame metrics array is big enough
      to hold frame statistics for the full buffer.*/
@@ -436,15 +462,22 @@
 
 int oc_enc_select_qi(oc_enc_ctx *_enc,int _qti,int _clamp){
   ogg_int64_t  rate_total;
+  ogg_int64_t  rate_bias;
   int          nframes[2];
   int          buf_delay;
+  int          buf_pad;
   ogg_int64_t  log_qtarget;
   ogg_int64_t  log_scale0;
+  ogg_int64_t  log_cur_scale;
+  ogg_int64_t  log_qexp;
+  int          exp0;
   int          old_qi;
   int          qi;
   /*Figure out how to re-distribute bits so that we hit our fullness target
      before the last keyframe in our current buffer window (after the current
      frame), or the end of the buffer window, whichever comes first.*/
+  log_cur_scale=(ogg_int64_t)_enc->rc.scalefilter[_qti].y[0]<<33;
+  buf_pad=0;
   switch(_enc->rc.twopass){
     default:{
       ogg_uint32_t next_key_frame;
@@ -473,7 +506,6 @@
     case 2:{
       ogg_int64_t scale_sum[2];
       int         qti;
-      int         buf_pad;
       /*Pass 2 mode: we know exactly how much of each frame type there is in
          the current buffer window, and have estimates for the scales.*/
       nframes[0]=_enc->rc.nframes[0];
@@ -539,46 +571,12 @@
         nframes[qti]--;
         scale_sum[qti]-=oc_bexp_q24(_enc->rc.cur_metrics.log_scale);
       }
-      /*Compute corrected log_scale estimates for each frame type from the
-         pass-1 scales we measured in the current window.*/
+      /*Compute log_scale estimates for each frame type from the pass-1 scales
+         we measured in the current window.*/
       for(qti=0;qti<2;qti++){
-        oc_log_linear_fit *fit;
-        ogg_int64_t        x;
-        x=nframes[qti]>0?
+        _enc->rc.log_scale[qti]=nframes[qti]>0?
          oc_blog64(scale_sum[qti])-oc_blog64(nframes[qti])-OC_Q57(24):
          -_enc->rc.log_npixels;
-        fit=_enc->rc.corr+qti;
-        if(fit->n>0){
-          ogg_int64_t  var;
-          ogg_uint32_t n_2;
-          n_2=fit->n>>1;
-          var=fit->x2;
-          var-=(fit->x+2048>>12)*(((fit->x+2048>>12)+n_2)/fit->n);
-          if(var>fit->n){
-            ogg_int64_t cov;
-            ogg_int64_t beta;
-            ogg_int64_t alpha;
-            ogg_int64_t y;
-            cov=fit->xy;
-            cov-=(fit->y+2048>>12)*(((fit->x+2048>>12)+n_2)/fit->n);
-            /*beta is Q33.*/
-            beta=((cov+n_2)/fit->n<<33)/((var+n_2)/fit->n);
-            /*alpha is Q57.*/
-            alpha=((fit->y+n_2)/fit->n<<33)-beta*((fit->x+n_2)/fit->n);
-            /*Predict the mean y from the mean x.
-              What we're really trying to compensate for is error in exp[], not
-               error in the scales, and hence we can apply the correction to
-               the mean scale instead of applying it to each pass-1 scale and
-               then taking the mean.*/
-            y=(x+((ogg_int64_t)1<<32)>>33)*beta+alpha;
-            /*If we have enough points for a good estimation, use the corrected
-               predictor value directly.*/
-            if(fit->n>=(128<<qti))x=y;
-            /*Otherwise interpolate between the two.*/
-            else x+=fit->n*(y-x>>7+qti);
-          }
-        }
-        _enc->rc.log_scale[qti]=x;
       }
       /*If we're not using the same frame type as in pass 1, add a scale
          estimate for the corresponding frame using the current low-pass
@@ -594,10 +592,11 @@
          oc_bexp64(_enc->rc.log_scale[_qti]+OC_Q57(24)):0x7FFFFFFFFFFFLL;
         scale*=nframes[_qti];
         nframes[_qti]++;
-        scale+=oc_bexp_q24(_enc->rc.scalefilter[_qti].y[0]);
+        scale+=oc_bexp_q24(log_cur_scale>>33);
         _enc->rc.log_scale[_qti]=oc_blog64(scale)
          -oc_blog64(nframes[qti])-OC_Q57(24);
       }
+      else log_cur_scale=(ogg_int64_t)_enc->rc.cur_metrics.log_scale<<33;
       /*Add the padding from above.
         This basically reverts to 1-pass estimations in the last keyframe
          interval.*/
@@ -618,8 +617,11 @@
       }
     }break;
   }
+  /*If we've been missing our target, add a penalty term.*/
+  rate_bias=(_enc->rc.rate_bias/(_enc->state.curframe_num+1000))*
+   (buf_delay-buf_pad);
   /*rate_total is the total bits available over the next buf_delay frames.*/
-  rate_total=_enc->rc.fullness-_enc->rc.target
+  rate_total=_enc->rc.fullness-_enc->rc.target+rate_bias
    +buf_delay*_enc->rc.bits_per_frame;
   log_scale0=_enc->rc.log_scale[_qti]+_enc->rc.log_npixels;
   /*If there aren't enough bits to achieve our desired fullness level, use the
@@ -658,12 +660,11 @@
      next buf_delay frames.
     However, we could overflow the buffer on the very next frame, so check for
      that here, if we're not using a soft target.*/
+  exp0=_enc->rc.exp[_qti];
   if(_enc->rc.cap_overflow){
     ogg_int64_t margin;
     ogg_int64_t soft_limit;
     ogg_int64_t log_soft_limit;
-    ogg_int64_t log_qexp;
-    int         exp0;
     /*Allow 3% of the buffer for prediction error.
       This should be plenty, and we don't mind if we go a bit over; we only
        want to keep these bits from being completely wasted.*/
@@ -672,7 +673,6 @@
     soft_limit=_enc->rc.fullness+_enc->rc.bits_per_frame-(_enc->rc.max-margin);
     log_soft_limit=oc_blog64(soft_limit);
     /*If we're predicting we won't use that many...*/
-    exp0=_enc->rc.exp[_qti];
     log_qexp=(log_qtarget-OC_Q57(2)>>6)*exp0;
     if(log_scale0-log_qexp<log_soft_limit){
       /*Scale the adjustment based on how far into the margin we are.*/
@@ -698,16 +698,17 @@
      next buf_delay frames.
     However, we could bust the budget on the very next frame, so check for that
      here, if we're not using a soft target.*/
-  if(!_enc->rc.cap_underflow||_enc->rc.drop_frames){
+  /* Disabled when our minimum qi > 0; if we saturate log_qtarget to
+     to the maximum possible size when we have a minimum qi, the
+     resulting lambda will interact very strangely with SKIP.  The
+     resulting artifacts look like waterfalls. */
+  if(_enc->state.info.quality==0){
     ogg_int64_t log_hard_limit;
-    ogg_int64_t log_qexp;
-    int         exp0;
     /*Compute the maximum number of bits we can use in the next frame.
       Allow 50% of the rate for a single frame for prediction error.
       This may not be enough for keyframes or sudden changes in complexity.*/
     log_hard_limit=oc_blog64(_enc->rc.fullness+(_enc->rc.bits_per_frame>>1));
     /*If we're predicting we'll use more than this...*/
-    exp0=_enc->rc.exp[_qti];
     log_qexp=(log_qtarget-OC_Q57(2)>>6)*exp0;
     if(log_scale0-log_qexp>log_hard_limit){
       /*Force the target to hit our limit exactly.*/
@@ -717,6 +718,9 @@
       log_qtarget=OC_MINI(log_qtarget,OC_QUANT_MAX_LOG);
     }
   }
+  /*Compute a final estimate of the number of bits we plan to use.*/
+  log_qexp=(log_qtarget-OC_Q57(2)>>6)*_enc->rc.exp[_qti];
+  _enc->rc.rate_bias+=oc_bexp64(log_cur_scale+_enc->rc.log_npixels-log_qexp);
   qi=oc_enc_find_qi_for_target(_enc,_qti,old_qi,
    _enc->state.info.quality,log_qtarget);
   /*Save the quantizer target for lambda calculations.*/
@@ -730,6 +734,8 @@
   ogg_int64_t log_scale;
   int         dropped;
   dropped=0;
+  /* Drop frames also disabled for now in the case of infinite-buffer
+     two-pass mode */
   if(!_enc->rc.drop_frames||_enc->rc.twopass&&_enc->rc.frame_metrics==NULL){
     _droppable=0;
   }
@@ -759,29 +765,6 @@
     }break;
     case 2:{
       /*Pass 2 mode:*/
-      /*Accumulate statistics for estimation bias correction.
-        Everything is done in Q24 format.*/
-      if(_bits>0&&_enc->rc.cur_metrics.frame_type==_qti){
-        oc_log_linear_fit *fit;
-        ogg_int64_t        x;
-        ogg_int64_t        y;
-        x=_enc->rc.cur_metrics.log_scale;
-        y=log_scale>>33;
-        fit=_enc->rc.corr+_qti;
-        /*Use long-term exponential moving averages for the fit statistics.*/
-        if(fit->n>=1000){
-          fit->n>>=1;
-          fit->x>>=1;
-          fit->y>>=1;
-          fit->x2>>=1;
-          fit->xy>>=1;
-        }
-        fit->n++;
-        fit->x+=x;
-        fit->y+=y;
-        fit->x2+=(x+2048>>12)*(x+2048>>12);
-        fit->xy+=(x+2048>>12)*(y+2048>>12);
-      }
       if(!_trial){
         ogg_int64_t next_frame_num;
         int         qti;
@@ -823,6 +806,12 @@
       _enc->rc.log_scale[_qti]=log_scale;
     }
     else{
+      /*Lengthen the time constant for the INTER filter as we collect more
+         frame statistics, until we reach our target.*/
+      if(_enc->rc.inter_delay<_enc->rc.inter_delay_target&&
+       _enc->rc.inter_count>=_enc->rc.inter_delay&&_qti==OC_INTER_FRAME){
+        oc_iir_filter_reinit(&_enc->rc.scalefilter[1],++_enc->rc.inter_delay);
+      }
       /*Otherwise update the low-pass scale filter for this frame type,
          regardless of whether or not we dropped this frame.*/
       _enc->rc.log_scale[_qti]=oc_iir_filter_update(
@@ -850,6 +839,8 @@
         _enc->rc.prev_drop_count=_enc->dup_count;
       }
     }
+    /*Increment the INTER frame count, for filter adaptation purposes.*/
+    if(_enc->rc.inter_count<INT_MAX)_enc->rc.inter_count+=_qti;
   }
   /*Increase the drop count.*/
   else _enc->rc.prev_drop_count+=1+_enc->dup_count;
@@ -866,6 +857,8 @@
     if(_enc->rc.cap_underflow&&_enc->rc.fullness<0){
       _enc->rc.fullness=0;
     }
+    /*Adjust the bias for the real bits we've used.*/
+    _enc->rc.rate_bias-=_bits;
   }
   return dropped;
 }
@@ -1024,7 +1017,6 @@
       }
       _enc->rc.exp[0]=exp[0];
       _enc->rc.exp[1]=exp[1];
-      memset(_enc->rc.corr,0,sizeof(_enc->rc.corr));
       /*Clear the header data from the buffer to make room for packet data.*/
       _enc->rc.twopass_buffer_fill=0;
       _enc->rc.twopass_buffer_bytes=0;

Modified: branches/theora-monty-post-1-1/lib/state.c
===================================================================
--- branches/theora-monty-post-1-1/lib/state.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/state.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Copied: branches/theora-monty-post-1-1/lib/theora.def (from rev 16515, trunk/theora/lib/theora.def)
===================================================================
--- branches/theora-monty-post-1-1/lib/theora.def	                        (rev 0)
+++ branches/theora-monty-post-1-1/lib/theora.def	2009-08-25 14:59:31 UTC (rev 16516)
@@ -0,0 +1,56 @@
+LIBRARY	libtheora
+EXPORTS
+	theora_version_string
+	theora_version_number
+	theora_encode_init
+	theora_encode_YUVin
+	theora_encode_packetout
+	theora_encode_header
+	theora_encode_comment
+	theora_encode_tables
+	theora_decode_header
+	theora_decode_init
+	theora_decode_packetin
+	theora_decode_YUVout
+	theora_control
+	theora_packet_isheader
+	theora_packet_iskeyframe
+	theora_granule_shift
+	theora_granule_frame
+	theora_granule_time
+	theora_info_init
+	theora_info_clear
+	theora_clear
+	theora_comment_init
+	theora_comment_add
+	theora_comment_add_tag
+	theora_comment_query
+	theora_comment_query_count
+	theora_comment_clear
+	th_version_string
+	th_version_number
+	th_decode_headerin
+	th_decode_alloc
+	th_setup_free
+	th_decode_ctl
+	th_decode_packetin
+	th_decode_ycbcr_out
+	th_decode_free
+	th_packet_isheader
+	th_packet_iskeyframe
+	th_granule_frame
+	th_granule_time
+	th_info_init
+	th_info_clear
+	th_comment_init
+	th_comment_add
+	th_comment_add_tag
+	th_comment_query
+	th_comment_query_count
+	th_comment_clear
+	th_encode_alloc
+	th_encode_ctl
+	th_encode_flushheader
+	th_encode_packetout
+	th_encode_ycbcr_in
+	th_encode_free

Modified: branches/theora-monty-post-1-1/lib/tokenize.c
===================================================================
--- branches/theora-monty-post-1-1/lib/tokenize.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/tokenize.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2008                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86/mmxfrag.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86/mmxfrag.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86/mmxfrag.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2003                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86/mmxidct.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86/mmxidct.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86/mmxidct.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86/mmxstate.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86/mmxstate.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86/mmxstate.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86/x86enc.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86/x86enc.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86/x86enc.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86/x86int.h
===================================================================
--- branches/theora-monty-post-1-1/lib/x86/x86int.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86/x86int.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86/x86state.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86/x86state.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86/x86state.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86_vc/mmxfrag.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86_vc/mmxfrag.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86_vc/mmxfrag.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2003                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86_vc/mmxidct.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86_vc/mmxidct.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86_vc/mmxidct.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86_vc/mmxstate.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86_vc/mmxstate.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86_vc/mmxstate.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86_vc/x86enc.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86_vc/x86enc.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86_vc/x86enc.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86_vc/x86int.h
===================================================================
--- branches/theora-monty-post-1-1/lib/x86_vc/x86int.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86_vc/x86int.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/lib/x86_vc/x86state.c
===================================================================
--- branches/theora-monty-post-1-1/lib/x86_vc/x86state.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/lib/x86_vc/x86state.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/tests/comment.c
===================================================================
--- branches/theora-monty-post-1-1/tests/comment.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/tests/comment.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/tests/comment_theora.c
===================================================================
--- branches/theora-monty-post-1-1/tests/comment_theora.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/tests/comment_theora.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/tests/granulepos.c
===================================================================
--- branches/theora-monty-post-1-1/tests/granulepos.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/tests/granulepos.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2008                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/tests/granulepos_theora.c
===================================================================
--- branches/theora-monty-post-1-1/tests/granulepos_theora.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/tests/granulepos_theora.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/tests/noop.c
===================================================================
--- branches/theora-monty-post-1-1/tests/noop.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/tests/noop.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/tests/noop_theora.c
===================================================================
--- branches/theora-monty-post-1-1/tests/noop_theora.c	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/tests/noop_theora.c	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/tests/tests.h
===================================================================
--- branches/theora-monty-post-1-1/tests/tests.h	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/tests/tests.h	2009-08-25 14:59:31 UTC (rev 16516)
@@ -5,7 +5,7 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2007                *
+ * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009                *
  * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************

Modified: branches/theora-monty-post-1-1/theoraenc-uninstalled.pc.in
===================================================================
--- branches/theora-monty-post-1-1/theoraenc-uninstalled.pc.in	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/theoraenc-uninstalled.pc.in	2009-08-25 14:59:31 UTC (rev 16516)
@@ -8,7 +8,7 @@
 Name: theora uninstalled
 Description: Theora video codec (encoder) (not installed)
 Version: @VERSION@
-Requires: ogg >= 1.1
+Requires: theoradec, ogg >= 1.1
 Conflicts:
 Libs: ${libdir}/libtheoraenc.la
 Cflags: -I${includedir}

Modified: branches/theora-monty-post-1-1/theoraenc.pc.in
===================================================================
--- branches/theora-monty-post-1-1/theoraenc.pc.in	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/theoraenc.pc.in	2009-08-25 14:59:31 UTC (rev 16516)
@@ -8,7 +8,7 @@
 Name: theora
 Description: Theora video codec (encoder)
 Version: @VERSION@
-Requires: ogg >= 1.1
+Requires: theoradec, ogg >= 1.1
 Conflicts:
 Libs: -L${libdir} -ltheoraenc
 Cflags: -I${includedir}

Modified: branches/theora-monty-post-1-1/win32/VS2005/libtheora/libtheora_dynamic.vcproj
===================================================================
--- branches/theora-monty-post-1-1/win32/VS2005/libtheora/libtheora_dynamic.vcproj	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/win32/VS2005/libtheora/libtheora_dynamic.vcproj	2009-08-25 14:59:31 UTC (rev 16516)
@@ -76,7 +76,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -153,7 +153,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -230,7 +230,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -306,7 +306,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -382,7 +382,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -464,7 +464,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -548,7 +548,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -633,7 +633,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -717,7 +717,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -801,7 +801,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -884,7 +884,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -968,7 +968,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -1053,7 +1053,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -1137,7 +1137,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -1221,7 +1221,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -1304,7 +1304,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -1388,7 +1388,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -1473,7 +1473,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -1557,7 +1557,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -1641,7 +1641,7 @@
 				AdditionalOptions=""
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2005\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 			/>
 			<Tool
 				Name="VCALinkTool"

Modified: branches/theora-monty-post-1-1/win32/VS2008/libtheora/libtheora_dynamic.vcproj
===================================================================
--- branches/theora-monty-post-1-1/win32/VS2008/libtheora/libtheora_dynamic.vcproj	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/win32/VS2008/libtheora/libtheora_dynamic.vcproj	2009-08-25 14:59:31 UTC (rev 16516)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="Windows-1252"?>
 <VisualStudioProject
 	ProjectType="Visual C++"
-	Version="9,00"
+	Version="9.00"
 	Name="libtheora"
 	ProjectGUID="{653F3841-3F26-49B9-AFCF-091DB4B67031}"
 	RootNamespace="libtheora"
@@ -77,7 +77,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2008\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 				RandomizedBaseAddress="1"
 				DataExecutionPrevention="0"
 			/>
@@ -153,7 +153,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2008\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 				RandomizedBaseAddress="1"
 				DataExecutionPrevention="0"
 			/>
@@ -235,7 +235,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2008\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 				RandomizedBaseAddress="1"
 				DataExecutionPrevention="0"
 			/>
@@ -318,7 +318,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2008\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 				RandomizedBaseAddress="1"
 				DataExecutionPrevention="0"
 			/>
@@ -401,7 +401,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2008\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 				RandomizedBaseAddress="1"
 				DataExecutionPrevention="0"
 			/>
@@ -484,7 +484,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2008\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 				RandomizedBaseAddress="1"
 				DataExecutionPrevention="0"
 			/>
@@ -567,7 +567,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2008\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 				RandomizedBaseAddress="1"
 				DataExecutionPrevention="0"
 			/>
@@ -650,7 +650,7 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="libogg.lib"
 				AdditionalLibraryDirectories="..\..\..\..\libogg\win32\VS2008\$(PlatformName)\$(ConfigurationName)"
-				ModuleDefinitionFile="..\..\libtheora.def "
+				ModuleDefinitionFile="..\..\..\lib\theora.def "
 				RandomizedBaseAddress="1"
 				DataExecutionPrevention="0"
 			/>

Deleted: branches/theora-monty-post-1-1/win32/libtheora.def
===================================================================
--- branches/theora-monty-post-1-1/win32/libtheora.def	2009-08-24 13:25:16 UTC (rev 16515)
+++ branches/theora-monty-post-1-1/win32/libtheora.def	2009-08-25 14:59:31 UTC (rev 16516)
@@ -1,44 +0,0 @@
-LIBRARY	libtheora
-EXPORTS
-	theora_version_string
-	theora_version_number
-	
-	theora_encode_init
-	theora_encode_YUVin
-	theora_encode_packetout
-	theora_encode_header
-	theora_encode_comment
-	theora_encode_tables
-	
-	theora_decode_header
-	theora_decode_init
-	theora_decode_packetin
-	theora_decode_YUVout
-	
-	theora_granule_time
-	
-	theora_info_init
-	theora_info_clear
-	
-	theora_clear
-
-	theora_comment_init
-	theora_comment_add
-	theora_comment_add_tag
-	theora_comment_query
-	theora_comment_query_count
-	theora_comment_clear
-	theora_packet_isheader
-
-	th_comment_init
-	th_comment_clear
-	th_encode_alloc
-	th_encode_ctl
-	th_encode_flushheader
-	th_encode_free
-	th_encode_packetout
-	th_encode_ycbcr_in
-	th_granule_time
-	th_info_clear
-	th_info_init
-	th_packet_isheader



More information about the commits mailing list