mirror of https://github.com/FFmpeg/FFmpeg.git
Based on a patch by Clément Bœsch <u@pkh.me>. Signed-off-by: Timothy Gu <timothygu99@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>pull/77/merge
parent
860d12978c
commit
2a9b4c0f05
1 changed files with 172 additions and 0 deletions
@ -0,0 +1,172 @@ |
||||
┌─────────────────────────────────┐ |
||||
│ RELEASE NOTES for FFmpeg 2.3 │ |
||||
└─────────────────────────────────┘ |
||||
|
||||
The FFmpeg Project proudly presents FFmpeg 2.3, a major release with all |
||||
the great features committed during the three-month period since the |
||||
release of FFmpeg 2.2. |
||||
|
||||
In this release, there are lots of internal overhauls that make FFmpeg a |
||||
more accessible project for new developers. Many important new features |
||||
like native Opus decoder and QTKit and AVFoundation input devices are also |
||||
committed. |
||||
|
||||
Because of the increasing difficulty to maintain and lack of maintainers, |
||||
we are very sorry to say that we have removed all Blackfin and SPARC |
||||
architecture assembly optimizations with the cleanups done. If you are |
||||
interested in maintaining optimization for these two architecture, feel |
||||
free to contact us and we will restore the code! |
||||
|
||||
Since this release, the traditional Changelog file is upgraded to this |
||||
modern-looking release note. Old changelogs are moved to doc/Changelog.old. |
||||
|
||||
Enjoy! |
||||
|
||||
┌────────────────────────────┐ |
||||
│ * API Information │ |
||||
└────────────────────────────┘ |
||||
|
||||
FFmpeg 2.3 is completely source-compatible to the FFmpeg 2.2 series. There |
||||
are however some API deprecations that you need to take care of. Use `git |
||||
diff n2.2 n2.3 doc/APIchanges` to show the list of added and deprecated |
||||
APIs. FFmpeg 2.3 includes the following library versions: |
||||
|
||||
• libavutil xx.yy.1zz |
||||
• libavcodec xx.yy.1zz |
||||
• libavformat xx.yy.1zz |
||||
• libavdevice xx.yy.1zz |
||||
• libavfilter xx.yy.1zz |
||||
• libswscale xx.yy.1zz |
||||
• libswresample xx.yy.1zz |
||||
• libpostproc xx.yy.1zz |
||||
|
||||
Please refer to the doc/APIChanges file for more information. |
||||
|
||||
┌────────────────────────────┐ |
||||
│ New Optimization │ |
||||
└────────────────────────────┘ |
||||
|
||||
We are excited to announce that we have committed new x86 assembly |
||||
optimization for HEVC, and FFmpeg's audio resampler libswresample. ARM |
||||
users will get a boost in MLP/TrueHD decoding thanks to new optimization. |
||||
Decoding Huffyuv also got a major boost from optimization on the C code. |
||||
|
||||
Of special interest for Microsoft Visual Studio users, we have also |
||||
converted some preexisting x86 assembly to NASM/Yasm format compatible |
||||
with MSVC setup, especially in the area of audio resampling. |
||||
|
||||
Another major feature in this release is the introduction of AArch64 |
||||
(ARMv8) assembly optimization. AArch64 is another name for the first |
||||
64-bit ARM architecture, used by Apple A7 SoC inside iPhone 5S. We have |
||||
already ported some 32-bit ARM to AArch64, but more work is underway. |
||||
|
||||
┌────────────────────────────┐ |
||||
│ Native Opus decoder │ |
||||
└────────────────────────────┘ |
||||
|
||||
Opus is an open audio format jointly developed by Xiph.Org, Mozilla, |
||||
Skype/Microsoft, and Broadcom. It combines the features of the Skype Cilk |
||||
speech codec and the Xiph.Org CELT music codec into one low-latency |
||||
codec. Decoding Opus is already possible since FFmpeg 1.0 using the |
||||
libopus library, but the new Opus native decoder brings a higher level of |
||||
stability and speed. |
||||
|
||||
┌────────────────────────────┐ |
||||
│ QTKit and AVFoundation │ |
||||
└────────────────────────────┘ |
||||
|
||||
For OS X users, the new QTKit and AVFoundation devices allow you to use |
||||
the integrated camera on Macs. AVFoundation is a newer API only available |
||||
on OS X 10.7 "Lion" or newer. For users with older OS X systems, the |
||||
QTKit device using the older OS X API is for you. |
||||
|
||||
┌────────────────────────────┐ |
||||
│ API Additions │ |
||||
└────────────────────────────┘ |
||||
|
||||
In this release, stream side data are introduced as AVStream.side_data as |
||||
a way to store miscellaneous stream-wide information. The format is |
||||
similar to the previously anonymous structure AVPacket.side_data (now |
||||
named as AVPacketSideData). With this change, audio ReplayGain |
||||
information and video rotation matrix are now exported through this API, |
||||
if available in the demuxer. |
||||
|
||||
We also have improved libswresample's Doxygen API documentation, so new |
||||
developers wishing to use FFmpeg's excellent libraries can get started |
||||
more easily and faster. |
||||
|
||||
┌────────────────────────────┐ |
||||
│ Last But Not Least │ |
||||
└────────────────────────────┘ |
||||
|
||||
Other interesting new features including hqx video filter, a pixel art |
||||
scaling filter; a fixed-point AC-3 decoder contributed by Imagination |
||||
Technologies; an On2 TrueMotion VP7 video decoder; an HTML5 WebVTT |
||||
subtitle decoder that allows creation of WebVTT from any text-based |
||||
subtitles; and an 1-bit Direct Stream Digital audio decoder. |
||||
|
||||
┌────────────────────────────┐ |
||||
│ ★ List of New Features │ |
||||
└────────────────────────────┘ |
||||
|
||||
┌────────────────────────────┐ |
||||
│ Command line tools │ |
||||
└────────────────────────────┘ |
||||
|
||||
• Support for decoding through DXVA2 in ffmpeg |
||||
|
||||
┌────────────────────────────┐ |
||||
│ libavcodec │ |
||||
└────────────────────────────┘ |
||||
|
||||
• AC3 fixed-point decoding |
||||
• VP7 video decoder |
||||
• Alias PIX image encoder and decoder |
||||
• Improvements to the BRender PIX image decoder |
||||
• Improvements to the XBM decoder |
||||
• Improvements to OpenEXR image decoder |
||||
• Support decoding 16-bit RLE SGI images |
||||
• Direct Stream Digital (DSD) decoder |
||||
• On2 AVC (Audio for Video) decoder |
||||
• Native Opus decoder |
||||
• WebVTT encoder |
||||
|
||||
┌────────────────────────────┐ |
||||
│ libavdevice │ |
||||
└────────────────────────────┘ |
||||
|
||||
• QTKit input device |
||||
• GDI screen grabbing for Windows |
||||
• AVFoundation input device |
||||
|
||||
┌────────────────────────────┐ |
||||
│ libavformat │ |
||||
└────────────────────────────┘ |
||||
|
||||
• subfile protocol |
||||
• Phantom Cine demuxer |
||||
• Alternative rendition support for HTTP Live Streaming |
||||
• Magic Lantern Video (MLV) demuxer |
||||
• Image format auto-detection |
||||
• LRC lyric file demuxer and muxer |
||||
• Samba protocol (via libsmbclient) |
||||
|
||||
┌────────────────────────────┐ |
||||
│ libavfilter │ |
||||
└────────────────────────────┘ |
||||
|
||||
• shuffleplanes filter |
||||
• libbs2b-based stereo-to-binaural audio filter |
||||
• showcqt multimedia filter |
||||
• zoompan filter |
||||
• signalstats filter |
||||
• hqx filter (hq2x, hq3x, hq4x) |
||||
• flanger filter |
||||
|
||||
┌────────────────────────────┐ |
||||
│ ⚠ Behaviour changes │ |
||||
└────────────────────────────┘ |
||||
|
||||
• libx264 reference frames count is now limited depending on level chosen |
||||
• Because of the new image format auto-detection feature, you don't need to |
||||
specify image format when decoding an image with no extension. |
Loading…
Reference in new issue