1 ┌───────────────────────────────────────────┐
2 │ RELEASE NOTES for FFmpeg 2.3 "Mandelbrot" │
3 └───────────────────────────────────────────┘
5 The FFmpeg Project proudly presents FFmpeg 2.3 "Mandelbrot", a major
6 release with all the great features committed during the three-month period
7 since the release of FFmpeg 2.2.
9 In this release, there are lots of internal overhauls that make FFmpeg a
10 more accessible project for new developers. Many important new features
11 like QTKit and AVFoundation input devices are committed. Contributions done
12 by Libav such as a new native Opus decoder are also merged.
14 Because of the increasing difficulty to maintain and lack of maintainers,
15 we are very sorry to say that we have removed all Blackfin and SPARC
16 architecture assembly optimizations with the cleanups done. If you are
17 interested in maintaining optimization for these two architecture, feel
18 free to contact us and we will restore the code!
20 Since this release, the traditional Changelog file is upgraded to this
21 modern-looking release note. Old changelogs are moved to doc/Changelog.old.
25 ┌────────────────────────────┐
27 └────────────────────────────┘
29 FFmpeg 2.3 is completely source-compatible to the FFmpeg 2.2 series. There
30 are however some API deprecations that you need to take care of. Use `git
31 diff n2.2 n2.3 doc/APIchanges` to show the list of added and deprecated
32 APIs. FFmpeg 2.3 includes the following library versions:
35 • libavcodec 55.69.100
36 • libavformat 55.47.100
37 • libavdevice 55.13.102
38 • libavfilter 4.10.100
40 • libswresample 0.19.100
41 • libpostproc 52. 3.100
43 Please refer to the doc/APIChanges file for more information.
45 ┌────────────────────────────┐
47 └────────────────────────────┘
49 We are excited to announce that we have committed new x86 assembly
50 optimization for HEVC, and FFmpeg's audio resampler libswresample. ARM
51 users will get a boost in MLP/TrueHD decoding thanks to new optimization.
52 Decoding Huffyuv also got a major boost from optimization on the C code.
54 Of special interest for Microsoft Visual Studio users, we have also
55 converted some preexisting x86 assembly to NASM/Yasm format compatible
56 with MSVC setup, especially in the area of audio resampling.
58 Another major feature in this release is the introduction of AArch64
59 (ARMv8) assembly optimization. AArch64 is another name for the first
60 64-bit ARM architecture, used by Apple A7 SoC inside iPhone 5S. Some
61 32-bit ARM assembly has already been ported to AArch64, but more work is
64 ┌────────────────────────────┐
65 │ Native Opus decoder │
66 └────────────────────────────┘
68 Opus is an open audio format jointly developed by Xiph.Org, Mozilla,
69 Skype/Microsoft, and Broadcom. It combines the features of the Skype Cilk
70 speech codec and the Xiph.Org CELT music codec into one low-latency
71 codec. Decoding Opus is already possible since FFmpeg 1.0 using the
72 libopus library, but the new Opus native decoder brings a higher level of
75 ┌────────────────────────────┐
76 │ QTKit and AVFoundation │
77 └────────────────────────────┘
79 For OS X users, the new QTKit and AVFoundation devices allow you to use
80 the integrated camera on Macs. AVFoundation is a newer API only available
81 on OS X 10.7 "Lion" or newer. For users with older OS X systems, the
82 QTKit device using the older OS X API is for you.
84 ┌────────────────────────────┐
86 └────────────────────────────┘
88 In this release, stream side data are introduced as AVStream.side_data as
89 a way to store miscellaneous stream-wide information. The format is
90 similar to the previously anonymous structure AVPacket.side_data (now
91 named as AVPacketSideData). With this change, audio ReplayGain
92 information and video rotation matrix are now exported through this API,
93 if available in the demuxer.
95 We also have improved libswresample's Doxygen API documentation, so new
96 developers wishing to use FFmpeg's excellent libraries can get started
97 more easily and faster.
99 ┌────────────────────────────┐
100 │ Last But Not Least │
101 └────────────────────────────┘
103 Other interesting new features including hqx video filter, a pixel art
104 scaling filter; a fixed-point AC-3 decoder contributed by Imagination
105 Technologies; an On2 TrueMotion VP7 video decoder; an HTML5 WebVTT
106 subtitle decoder that allows creation of WebVTT from any text-based
107 subtitles; and an 1-bit Direct Stream Digital audio decoder.
109 ┌────────────────────────────┐
110 │ ★ List of New Features │
111 └────────────────────────────┘
113 ┌────────────────────────────┐
114 │ Command line tools │
115 └────────────────────────────┘
117 • Support for decoding through DXVA2 in ffmpeg
119 ┌────────────────────────────┐
121 └────────────────────────────┘
123 • AC3 fixed-point decoding
125 • Alias PIX image encoder and decoder
126 • Improvements to the BRender PIX image decoder
127 • Improvements to the XBM decoder
128 • Improvements to OpenEXR image decoder
129 • Support decoding 16-bit RLE SGI images
130 • Direct Stream Digital (DSD) decoder
131 • On2 AVC (Audio for Video) decoder
132 • Native Opus decoder
135 ┌────────────────────────────┐
137 └────────────────────────────┘
140 • GDI screen grabbing for Windows
141 • AVFoundation input device
143 ┌────────────────────────────┐
145 └────────────────────────────┘
148 • Phantom Cine demuxer
149 • Alternative rendition support for HTTP Live Streaming
150 • Magic Lantern Video (MLV) demuxer
151 • Image format auto-detection
152 • LRC lyric file demuxer and muxer
153 • Samba protocol (via libsmbclient)
154 • WebM DASH Manifest muxer
156 ┌────────────────────────────┐
158 └────────────────────────────┘
160 • shuffleplanes filter
161 • libbs2b-based stereo-to-binaural audio filter
162 • showcqt multimedia filter
165 • hqx filter (hq2x, hq3x, hq4x)
167 • libfribidi support in drawtext
169 ┌────────────────────────────┐
170 │ ⚠ Behaviour changes │
171 └────────────────────────────┘
173 • libx264 reference frames count is now limited depending on level chosen
174 • Because of the new image format auto-detection feature, you don't need to
175 specify image format when decoding an image with no extension.