Unified · Split
| @@ -1,3 +1,111 @@ | ||
| 1 | +2010-09-02 v0.9.5 "Aylesbury" | |
| 2 | + Our first named release, focused on a faster decoder, and a better encoder. | |
| 3 | + | |
| 4 | + - Upgrading: | |
| 5 | + This release incorporates backwards-incompatible changes to the | |
| 6 | + ivfenc and ivfdec tools. These tools are now called vpxenc and vpxdec. | |
| 7 | + | |
| 8 | + vpxdec | |
| 9 | + * the -q (quiet) option has been removed, and replaced with | |
| 10 | + -v (verbose). the output is quiet by default. Use -v to see | |
| 11 | + the version number of the binary. | |
| 12 | + | |
| 13 | + * The default behavior is now to write output to a single file | |
| 14 | + instead of individual frames. The -y option has been removed. | |
| 15 | + Y4M output is the default. | |
| 16 | + | |
| 17 | + * For raw I420/YV12 output instead of Y4M, the --i420 or --yv12 | |
| 18 | + options must be specified. | |
| 19 | + | |
| 20 | + $ ivfdec -o OUTPUT INPUT | |
| 21 | + $ vpxdec --i420 -o OUTPUT INPUT | |
| 22 | + | |
| 23 | + * If an output file is not specified, the default is to write | |
| 24 | + Y4M to stdout. This makes piping more natural. | |
| 25 | + | |
| 26 | + $ ivfdec -y -o - INPUT | ... | |
| 27 | + $ vpxdec INPUT | ... | |
| 28 | + | |
| 29 | + * The output file has additional flexibility for formatting the | |
| 30 | + filename. It supports escape characters for constructing a | |
| 31 | + filename from the width, height, and sequence number. This | |
| 32 | + replaces the -p option. To get the equivalent: | |
| 33 | + | |
| 34 | + $ ivfdec -p frame INPUT | |
| 35 | + $ vpxdec --i420 -o frame-%wx%h-%4.i420 INPUT | |
| 36 | + | |
| 37 | + vpxenc | |
| 38 | + * The output file must be specified with -o, rather than as the | |
| 39 | + last argument. | |
| 40 | + | |
| 41 | + $ ivfenc <options> INPUT OUTPUT | |
| 42 | + $ vpxenc <options> -o OUTPUT INPUT | |
| 43 | + | |
| 44 | + * The output defaults to webm. To get IVF output, use the --ivf | |
| 45 | + option. | |
| 46 | + | |
| 47 | + $ ivfenc <options> INPUT OUTPUT.ivf | |
| 48 | + $ vpxenc <options> -o OUTPUT.ivf --ivf INPUT | |
| 49 | + | |
| 50 | + | |
| 51 | + - Enhancements: | |
| 52 | + ivfenc and ivfdec have been renamed to vpxenc, vpxdec. | |
| 53 | + vpxdec supports .webm input | |
| 54 | + vpxdec writes .y4m by default | |
| 55 | + vpxenc writes .webm output by default | |
| 56 | + vpxenc --psnr now shows the average/overall PSNR at the end | |
| 57 | + ARM platforms now support runtime cpu detection | |
| 58 | + vpxdec visualizations added for motion vectors, block modes, references | |
| 59 | + vpxdec now silent by default | |
| 60 | + vpxdec --progress shows frame-by-frame timing information | |
| 61 | + vpxenc supports the distinction between --fps and --timebase | |
| 62 | + NASM is now a supported assembler | |
| 63 | + configure: enable PIC for shared libs by default | |
| 64 | + configure: add --enable-small | |
| 65 | + configure: support for ppc32-linux-gcc | |
| 66 | + configure: support for sparc-solaris-gcc | |
| 67 | + | |
| 68 | + - Bugs: | |
| 69 | + Improve handling of invalid frames | |
| 70 | + Fix valgrind errors in the NEON loop filters. | |
| 71 | + Fix loopfilter delta zero transitions | |
| 72 | + Fix valgrind errors in vp8_sixtap_predict8x4_armv6(). | |
| 73 | + Build fixes for darwin-icc | |
| 74 | + | |
| 75 | + - Speed: | |
| 76 | + 20-40% (average 28%) improvement in libvpx decoder speed, | |
| 77 | + including: | |
| 78 | + Rewrite vp8_short_walsh4x4_sse2() | |
| 79 | + Optimizations on the loopfilters. | |
| 80 | + Miscellaneous improvements for Atom | |
| 81 | + Add 4-tap version of 2nd-pass ARMv6 MC filter. | |
| 82 | + Improved multithread utilization | |
| 83 | + Better instruction choices on x86 | |
| 84 | + reorder data to use wider instructions | |
| 85 | + Update NEON wide idcts | |
| 86 | + Make block access to frame buffer sequential | |
| 87 | + Improved subset block search | |
| 88 | + Bilinear subpixel optimizations for ssse3. | |
| 89 | + Decrease memory footprint | |
| 90 | + | |
| 91 | + Encoder speed improvements (percentage gain not measured): | |
| 92 | + Skip unnecessary search of identical frames | |
| 93 | + Add SSE2 subtract functions | |
| 94 | + Improve bounds checking in vp8_diamond_search_sadx4() | |
| 95 | + Added vp8_fast_quantize_b_sse2 | |
| 96 | + | |
| 97 | + - Quality: | |
| 98 | + Over 7% overall PSNR improvement (6.3% SSIM) in "best" quality | |
| 99 | + encoding mode, and up to 60% improvement on very noisy, still | |
| 100 | + or slow moving source video | |
| 101 | + | |
| 102 | + Motion compensated temporal filter for Alt-Ref Noise Reduction | |
| 103 | + Improved use of trellis quantization on 2nd order Y blocks | |
| 104 | + Tune effect of motion on KF/GF boost in two pass | |
| 105 | + Allow coefficient optimization for good quality speed 0. | |
| 106 | + Improved control of active min quantizer for two pass. | |
| 107 | + Enable ARFs for non-lagged compress | |
| 108 | + | |
| 1 | 109 | 2010-09-02 v0.9.2 |
| 2 | 110 | - Enhancements: |
| 3 | 111 | Disable frame dropping by default |