Append $(EXEEXT) to the names of optional programs.
[theora.git] / CHANGES
1 libtheora 1.1alpha3 (unreleased snapshot)
2
3  - no changes recorded
4
5 libtheora 1.1alpha2 (2009 May 26)
6
7  - Reduce lambda for small quantizers.
8  - New encoder fDCT does better on smooth gradients
9  - Use SATD for mode decisions (1-2% bitrate reduction)
10  - Assembly rewrite for new features and general speed up
11  - Share code between the encoder and decoder for performance
12  - Fix 4:2:2 decoding and telemetry
13  - MSVC project files updated, but assembly is disabled.
14  - New configure option --disable-spec to work around toolchain
15    detection failures.
16  - Limit symbol exports on MacOS X.
17  - Port remaining unit tests from the 1.0 release.
18
19 libtheora 1.1alpha1 (2009 March 27)
20
21  - Encoder rewrite with much improved vbr quality/bitrate and
22    better tracking of the target rate in cbr mode.
23  - MSVC project files do not work in this release.
24
25 libtheora 1.0 (2008 November 3)
26
27  - Merge x86 assembly for forward DCT from Thusnelda branch.
28  - Update 32 bit MMX with loop filter fix.
29  - Check for an uninitialized state before dereferencing in propagating
30    decode calls.
31  - Remove all TH_DEBUG statements.
32  - Rename the bitpacker source files copied from libogg to avoid
33    confusing simple build systems using both libraries.
34  - Declare bitfield entries to be explicitly signed for Solaris cc.
35  - Set quantization parameters to default values when an empty buffer is
36    passed with TH_ENCCTL_SET_QUANT_PARAMS.
37  - Split encoder and decoder tests depending on configure settings.
38  - Return lstylex.sty to the distribution.
39  - Disable inline assembly on gcc versions prior to 3.1.
40  - Remove extern references for OC_*_QUANT_MIN.
41  - Make various data tables static const so they can be read-only.
42  - Remove ENCCTL codes from the old encoder API.
43  - Implement TH_ENCCTL_SET_KEYFRAME_FREQUENCY_FORCE ctl.
44  - Fix segfault when exactly one of the width or height is not a multiple
45    of 16, but the other is.
46  - Compute the correct vertical offset for chroma.
47  - cpuid assembly fix for MSVC.
48  - Add VS2008 project files.
49  - Build updates for 64-bit platforms, Mingw32, VS and XCode.
50  - Do not clobber the cropping rectangle.
51  - Declare ourselves 1.0final to pkg-config to sort after beta releases.
52  - Fix the scons build to include asm in libtheoradec/enc.
53
54 libtheora 1.0beta3 (2008 April 16)
55
56  - Build new libtheoradec and libtheoraenc libraries
57    supporting the new API from theora-exp. This API should
58    not be considered stable yet.
59  - Change granule_frame() to return an index as documented.
60    This is a change of behaviour from 1.0beta1.
61  - Document that granule_time() returns the end of the
62    presentation interval.
63  - Use a custom copy of the libogg bitpacker in the decoder
64    to avoid function call overhead.
65  - MMX code improved and ported to MSVC.
66  - Fix a problem with the MMX code on SELinux.
67  - Fix a problem with decoder quantizer initialization.
68  - Fix a page queue problem with png2theora.
69  - Improved robustness.
70  - Updated VS2005 project files.
71  - Dropped build support for Microsoft VS2003.
72  - Dropped build support for the unreleased libogg2.
73  - Added the specification to the autotools build.
74  - Specification corrections.
75
76 libtheora 1.0beta2 (2007 October 12)
77
78  - Fix a crash bug on char-is-unsigned architectures (PowerPC)
79  - Fix a buffer sizing issue that caused rare encoder crashes
80  - Fix a buffer alignment issue
81  - Build fixes for MingW32, MSVC
82  - Improved format documentation.
83
84 libtheora 1.0beta1 (2007 September 22)
85
86  - Granulepos scheme modified to match other codecs. This bumps
87    the bitstream revision to 3.2.1. Bitstreams marked 3.2.0 are
88    handled correctly by this decoder. Older decoders will show
89    a one frame sync error in the less noticable direction.
90
91 libtheora 1.0alpha8 (2007 September 18)
92
93  - Switch to new spec compliant decoder from theora-exp branch.
94    Written by Dr. Timothy Terriberry.
95  - Add support to the encoder for using quantization settings
96    provided by the application.
97  - more assembly optimizations
98
99 libtheora 1.0alpha7 (2006 June 20)
100
101  - Enable mmx assembly by default
102  - Avoid some relocations that caused problems on SELinux
103  - Other build fixes
104  - time testing mode (-f) for the dump_video example
105
106 libtheora 1.0alpha6 (2006 May 30)
107
108  * Merge theora-mmx simd acceleration (x86_32 and x86_64)
109  * Major RTP payload specification update
110  * Minor format specification updates
111  * Fix some spurious calls to free() instead of _ogg_free()
112  * Fix invalid array indexing in PixelLineSearch()
113  * Improve robustness against invalid input
114  * General warning cleanup
115  * The offset_y member now means what every application thought it meant
116    (offset from the top). This will mean some old files (those with a 
117    non-centered image created with a buggy encoder) will display differently.
118
119 libtheora 1.0alpha5 (2005 August 20)
120
121  * Fixed bitrate management bugs that caused popping and encode
122    errors
123  * Fixed a crash problem with the theora_state internals not
124    being intialized properly.
125  * new utility function:
126    - theora_granule_shift()
127  * dump_video example now makes YUV4MPEG files by default, so
128    the results can be fed back to encoder_example and similar
129    tools. The old behavior is restored through the '-r' switch.
130  * ./configure now prints a summary
131  * simple unit test of the comment api under 'make check'
132  * misc code cleanup, warning and leak fixes
133
134 libtheora 1.0alpha4 (2004 December 15)
135
136  * first draft of the Theora I Format Specification
137  * API documentation generated from theora.h with Doxygen
138  * fix a double-update bug in the motion analysis
139  * apply the loop filter before filling motion vector border 
140    in the reference frame
141  * new utility functions:
142    - theora_packet_isheader(),
143    - theora_packet_iskeyframe()
144    - theora_granule_frame()
145  * optional support for building without floating point
146  * optional support for building without encode support 
147  * various build and packaging fixes
148  * pkg-config support
149  * SymbianOS build support
150
151 libtheora 1.0alpha3 (2004 March 20)
152
153  UPDATE: on 2004 July 1 the Theora I bitstream format was frozen. Files
154  produced by the libtheora 1.0alpha3 reference encoder will always be
155  decodable by the Theora I spec.
156
157  * Bitstream info header FORMAT CHANGES:
158    - move the granulepos shift field to maintain byte alignment longer.
159    - reserve 5 additional bits for subsampling and interlace flags.
160  * Bitstream setup header FORMAT CHANGES:
161    - support for a range of interpolated quant matricies.
162    - include the in-loop block filter coeff.
163  * Bitsteam data packet FORMAT CHANGES:
164    - Reserve a bit for per-block Q index selection.
165    - Flip the coded image orientation for compatibility with VP3.
166      This allows lossless transcoding of VP3 content, but files
167      encoded with earlier theora releases would play upside down.
168  * example VP3 lossless transcoder
169  * optional support for libogg2
170  * timing improvements in the example player
171  * packaging and build system updates and fixes
172
173 libtheora 1.0alpha2 (2003 June 9)
174
175  * bitstream FORMAT CHANGES:
176    - store the quant tables in a third setup header for
177      future encoder flexibility
178    - store the huffman tables in the third setup header
179    - add a field for marking the colorspace to the info header
180    - add crop parameters for non-multiple-of-16 frame sizes
181    - add a second vorbiscomment-style metadata header
182  * API changes to handle multiple headers with a single 
183    theora_decode_header() call, like libvorbis
184  * code cleanup and minor fixes
185  * new dump_video code example/utility
186  * experimental win32 code examples
187
188 libtheora 1.0alpha1 (2002 September 25)
189
190  * First release of the theora reference implementation
191  * Port of the newly opened VP3 code to the Ogg container
192  * Rewrite of the code for portability and to use the libogg bitpacker
193