CHANGES 8.9 KB

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