CHANGES 8.4 KB

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