media/libtheora/CHANGES

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

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

mercurial