0ca7a10728d4cdc3bcba2583a0c6fe48e503a3c7
[ffmpeg-web.git] / src / index
1
2 <div id="index">
3
4   <div class="row">
5     <div class="col-md-6">
6       <h2 class="description">
7         A complete, cross-platform solution to record, convert and stream audio and video.
8       </h2>
9     </div> <!-- col -->
10     <div class="col-md-6">
11       <div class="btn-download-wrapper">
12         <a href="download.html" class="btn btn-success">
13           <i class="fa fa-cloud-download"></i>
14           Download
15         </a>
16       </div> <!-- btn-download-wrapper -->
17     </div> <!-- col -->
18   </div> <!-- row -->
19
20   <div class="well example">
21     <h3>Converting <strong>video</strong> and <strong>audio</strong> has never been so easy.
22     </h3>
23     <pre>$ ffmpeg -i input.mp4 output.avi</pre>
24     <div class="text-right">
25       <a href="about.html" class="btn btn-success btn-lg">Discover more</a>
26     </div>
27   </div> <!-- well -->
28
29   <h1 id="news">
30     <span class="pull-right">
31       <a href="main.rss"><strong><i class="fa fa-rss"></i></strong></a> &nbsp;
32       <a href="https://plus.google.com/108003112428040046828?prsrc=3" rel="publisher" style="text-decoration:none;">
33         <strong><i class="fa fa-google-plus"></i></strong></a> &nbsp;
34       <a href="https://twitter.com/FFmpeg"><strong><i class="fa fa-twitter"></i></strong></a> &nbsp;
35       <a href="https://www.facebook.com/ffmpeg"><strong><i class="fa fa-facebook"></i></strong></a>
36     </span>
37     News
38   </h1>
39
40   <h3 id="pr3.3">April 13th, 2017, FFmpeg 3.3 "Hilbert"</h3>
41   <p>
42     <a href="download.html#release_3.3">FFmpeg 3.3 "Hilbert"</a>, a new
43     major release, is now available! Some of the highlights:
44   </p>
45   <ul>
46     <li>Apple Pixlet decoder</li>
47     <li>NewTek SpeedHQ decoder</li>
48     <li>QDMC audio decoder</li>
49     <li>PSD (Photoshop Document) decoder</li>
50     <li>FM Screen Capture decoder</li>
51     <li>ScreenPressor decoder</li>
52     <li>XPM decoder</li>
53     <li>DNxHR decoder fixes for HQX and high resolution videos</li>
54     <li>ClearVideo decoder (partial)</li>
55     <li>16.8 and 24.0 floating point PCM decoder</li>
56     <li>Intel QSV-accelerated VP8 video decoding</li>
57     <li>native Opus encoder</li>
58     <li>DNxHR 444 and HQX encoding</li>
59     <li>Quality improvements for the (M)JPEG encoder</li>
60     <li>VAAPI-accelerated MPEG-2 and VP8 encoding</li>
61     <li>premultiply video filter</li>
62     <li>abitscope multimedia filter</li>
63     <li>readeia608 filter</li>
64     <li>threshold filter</li>
65     <li>midequalizer filter</li>
66     <li>MPEG-7 Video Signature filter</li>
67     <li>add internal ebur128 library, remove external libebur128 dependency</li>
68     <li>Intel QSV video scaling and deinterlacing filters</li>
69     <li>Sample Dump eXchange demuxer</li>
70     <li>MIDI Sample Dump Standard demuxer</li>
71     <li>Scenarist Closed Captions demuxer and muxer</li>
72     <li>Support MOV with multiple sample description tables</li>
73     <li>Pro-MPEG CoP #3-R2 FEC protocol</li>
74     <li>Support for spherical videos</li>
75     <li>CrystalHD decoder moved to new decode API</li>
76     <li>configure now fails if autodetect-libraries are requested but not found</li>
77   </ul>
78   <p>
79     We strongly recommend users, distributors, and system integrators to
80     upgrade unless they use current git master.
81   </p>
82
83   <h3 id="gsoc2016finalreport">October 30th, 2016, Results: Summer Of Code 2016.</h3>
84   <p>
85     This has been a long time coming but we wanted to give a proper closure to our participation in this run of the program and it takes time. Sometimes it's just to get the final report for each project trimmed down, others, is finalizing whatever was still in progress when the program finished: final patches need to be merged, TODO lists stabilized, future plans agreed; you name it.
86   </p>
87   <p>
88     Without further ado, here's the silver-lining for each one of the projects we sought to complete during this Summer of Code season:
89   </p>
90   <h4>FFv1 (Mentor: Michael Niedermayer)</h4>
91   <p>
92     Stanislav Dolganov designed and implemented experimental support for motion estimation and compensation in the lossless FFV1 codec. The design and implementation is based on the snow video codec, which uses OBMC. Stanislav's work proved that significant compression gains can be achieved with inter frame compression. FFmpeg welcomes Stanislav to continue working beyond this proof of concept and bring its advances into the official FFV1 specification within the IETF.
93   </p>
94   <h4>Self test coverage (Mentor: Michael Niedermayer)</h4>
95   <p>
96     Petru Rares Sincraian added several self-tests to FFmpeg and successfully went through the in-some-cases tedious process of fine tuning tests parameters to avoid known and hard to avoid problems, like checksum mismatches due to rounding errors on the myriad of platforms we support. His work has improved the code coverage of our self tests considerably.
97   </p>
98   <h4>MPEG-4 ALS encoder implementation (Mentor: Thilo Borgmann)</h4>
99   <p>
100     Umair Khan updated and integrated the ALS encoder to fit in the current FFmpeg codebase. He also implemented a missing feature for the ALS decoder that enables floating-point sample decoding. FFmpeg support for MPEG-4 ALS has been improved significantly by Umair's work. We welcome him to keep maintaining his improvements and hope for great contributions to come.
101   </p>
102   <h4>Tee muxer improvements (Mentor: Marton Balint)</h4>
103   <p>
104     Ján Sebechlebský's generic goal was to improve the tee muxer so it tolerated blocking IO and allowed transparent error recovery. During the design phase it turned out that this functionality called for a separate muxer, so Ján spent his summer working on the so-called FIFO muxer, gradually fixing issues all over the codebase. He succeeded in his task, and the FIFO muxer is now part of the main repository, alongside several other improvements he made in the process.
105   </p>
106   <h4>TrueHD encoder (Mentor: Rostislav Pehlivanov)</h4>
107   <p>
108     Jai Luthra's objective was to update the out-of-tree and pretty much abandoned MLP (Meridian Lossless Packing) encoder for libavcodec and improve it to enable encoding to the TrueHD format. For the qualification period the encoder was updated such that it was usable and throughout the summer, successfully improved adding support for multi-channel audio and TrueHD encoding. Jai's code has been merged into the main repository now. While a few problems remain with respect to LFE channel and 32 bit sample handling, these are in the process of being fixed such that effort can be finally put in improving the encoder's speed and efficiency.
109   </p>
110   <h4>Motion interpolation filter (Mentor: Paul B Mahol)</h4>
111   <p>
112     Davinder Singh investigated existing motion estimation and interpolation approaches from the available literature and previous work by our own: Michael Niedermayer, and implemented filters based on this research. These filters allow motion interpolating frame rate conversion to be applied to a video, for example, to create a slow motion effect or change the frame rate while smoothly interpolating the video along the motion vectors. There's still work to be done to call these filters 'finished', which is rather hard all things considered, but we are looking optimistically at their future.
113   </p>
114   <p>
115     And that's it. We are happy with the results of the program and immensely thankful for the opportunity of working with such an amazing set of students. We can be a tough crowd but our mentors did an amazing job at hand holding our interns through their journey. Thanks also to Google for this wonderful program and to everyone that made room in their busy lives to help making GSoC2016 a success. See you in 2017!
116   </p>
117   <h3 id="sdl1">September 24th, 2016, SDL1 support dropped.</h3>
118   <p>
119     Support for the SDL1 library has been dropped, due to it no longer being maintained (as of
120     January, 2012) and it being superseded by the SDL2 library. As a result, the SDL1 output device
121     has also been removed and replaced by an SDL2 implementation. Both the ffplay and opengl output
122     devices have been updated to support SDL2.
123   </p>
124   <h3 id="pr3.1.2">August 9th, 2016, FFmpeg 3.1.2 "Laplace"</h3>
125   <p>
126     <a href="download.html#release_3.1">FFmpeg 3.1.2</a>, a new point release from the 3.1 release branch, is now available!
127     It fixes several bugs.
128   </p>
129   <p>
130     We recommend users, distributors, and system integrators, to upgrade unless they use current git master.
131   </p>
132   <h3 id="ffserv">July 10th, 2016, ffserver program being dropped</h3>
133   <p>
134     After thorough deliberation, we're announcing that we're about to drop the ffserver program from the project starting with the next release.
135     ffserver has been a problematic program to maintain due to its use of internal APIs, which complicated the recent cleanups to the libavformat
136     library, and block further cleanups and improvements which are desired by API users and will be easier to maintain. Furthermore the program has
137     been hard for users to deploy and run due to reliability issues, lack of knowledgable people to help and confusing configuration file syntax.
138     Current users and members of the community are invited to write a replacement program to fill the same niche that ffserver did using the new APIs
139     and to contact us so we may point users to test and contribute to its development.
140   </p>
141   <h3 id="pr3.1.1">July 1st, 2016, FFmpeg 3.1.1 "Laplace"</h3>
142   <p>
143     <a href="download.html#release_3.1">FFmpeg 3.1.1</a>, a new point release from the 3.1 release branch, is now available!
144     It mainly deals with a few ABI issues introduced in the previous release.
145   </p>
146   <p>
147     We strongly recommend users, distributors, and system integrators, especially those who experienced issues upgrading from 3.0, to
148     upgrade unless they use current git master.
149   </p>
150
151   <h3 id="pr3.1">June 27th, 2016, FFmpeg 3.1 "Laplace"</h3>
152   <p>
153     <a href="download.html#release_3.1">FFmpeg 3.1 "Laplace"</a>, a new
154     major release, is now available! Some of the highlights:
155   </p>
156   <ul>
157     <li>DXVA2-accelerated HEVC Main10 decoding</li>
158     <li>fieldhint filter</li>
159     <li>loop video filter and aloop audio filter</li>
160     <li>Bob Weaver deinterlacing filter</li>
161     <li>firequalizer filter</li>
162     <li>datascope filter</li>
163     <li>bench and abench filters</li>
164     <li>ciescope filter</li>
165     <li>protocol blacklisting API</li>
166     <li>MediaCodec H264 decoding</li>
167     <li>VC-2 HQ RTP payload format (draft v1) depacketizer and packetizer</li>
168     <li>VP9 RTP payload format (draft v2) packetizer</li>
169     <li>AudioToolbox audio decoders</li>
170     <li>AudioToolbox audio encoders</li>
171     <li>coreimage filter (GPU based image filtering on OSX)</li>
172     <li>libdcadec removed</li>
173     <li>bitstream filter for extracting DTS core</li>
174     <li>ADPCM IMA DAT4 decoder</li>
175     <li>musx demuxer</li>
176     <li>aix demuxer</li>
177     <li>remap filter</li>
178     <li>hash and framehash muxers</li>
179     <li>colorspace filter</li>
180     <li>hdcd filter</li>
181     <li>readvitc filter</li>
182     <li>VAAPI-accelerated format conversion and scaling</li>
183     <li>libnpp/CUDA-accelerated format conversion and scaling</li>
184     <li>Duck TrueMotion 2.0 Real Time decoder</li>
185     <li>Wideband Single-bit Data (WSD) demuxer</li>
186     <li>VAAPI-accelerated H.264/HEVC/MJPEG encoding</li>
187     <li>DTS Express (LBR) decoder</li>
188     <li>Generic OpenMAX IL encoder with support for Raspberry Pi</li>
189     <li>IFF ANIM demuxer & decoder</li>
190     <li>Direct Stream Transfer (DST) decoder</li>
191     <li>loudnorm filter</li>
192     <li>MTAF demuxer and decoder</li>
193     <li>MagicYUV decoder</li>
194     <li>OpenExr improvements (tile data and B44/B44A support)</li>
195     <li>BitJazz SheerVideo decoder</li>
196     <li>CUDA CUVID H264/HEVC decoder</li>
197     <li>10-bit depth support in native utvideo decoder</li>
198     <li>libutvideo wrapper removed</li>
199     <li>YUY2 Lossless Codec decoder</li>
200     <li>VideoToolbox H.264 encoder</li>
201   </ul>
202   <p>
203     We strongly recommend users, distributors, and system integrators to
204     upgrade unless they use current git master.
205   </p>
206
207   <h3 id="gsoc2016">March 16th, 2016, Google Summer of Code</h3>
208   <p>
209     FFmpeg has been accepted as a <a href="https://summerofcode.withgoogle.com/">Google Summer of Code</a> open source organization. If you wish to
210     participate as a student see our <a href="https://trac.ffmpeg.org/wiki/SponsoringPrograms/GSoC/2016">project ideas page</a>.
211     You can already get in contact with mentors and start working on qualification tasks as well as register at google and submit your project proposal draft.
212     Good luck!
213   </p>
214
215   <h3 id="pr3.0">February 15th, 2016, FFmpeg 3.0 "Einstein"</h3>
216   <p>
217     <a href="download.html#release_3.0">FFmpeg 3.0 "Einstein"</a>, a new
218     major release, is now available! Some of the highlights:
219   </p>
220   <ul>
221     <li><a href="#aac_encoder_stable">The native FFmpeg AAC encoder has seen extensive improvements and is no longer considered experimental</a></li>
222     <li><a href="#removing_external_aac_encoders">Removed support for libvo-aacenc and libaacplus</a></li>
223     <li>Over 30 new filters have been added</li>
224     <li>Many ASM optimizations</li>
225     <li>VP9 Hardware Acceleration (DXVA2 and VA-API)</li>
226     <li>Cineform HD decoder</li>
227     <li>New DCA decoder based on libdcadec with full support for DTS-HD extensions</li>
228     <li>As with all major releases expect major backward incompatible API/ABI changes</li>
229     <li>See the <a href="https://git.videolan.org/?p=ffmpeg.git;a=blob_plain;f=Changelog;hb=n3.0">Changelog</a> for a list of more updates</li>
230   </ul>
231   <p>
232     We strongly recommend users, distributors, and system integrators to
233     upgrade unless they use current git master.
234   </p>
235
236   <h3 id="removing_external_aac_encoders">January 30, 2016, Removing support for two external AAC encoders</h3>
237   <p>
238     We have just removed support for VisualOn AAC encoder (libvo-aacenc) and
239     libaacplus in FFmpeg master.
240   </p>
241   <p>
242     Even before marking our internal AAC encoder as
243     <a href="#aac_encoder_stable">stable</a>, it was known that libvo-aacenc
244     was of an inferior quality compared to our native one for most samples.
245     However, the VisualOn encoder was used extensively by the Android Open
246     Source Project, and we would like to have a tested-and-true stable option
247     in our code base.
248   </p>
249   <p>
250     When first committed in 2011, libaacplus filled in the gap of encoding
251     High Efficiency AAC formats (HE-AAC and HE-AACv2), which was not supported
252     by any of the encoders in FFmpeg at that time.
253   </p>
254   <p>
255     The circumstances for both have changed. After the work spearheaded by
256     Rostislav Pehlivanov and Claudio Freire, the now-stable FFmpeg native AAC
257     encoder is ready to compete with much more mature encoders. The Fraunhofer
258     FDK AAC Codec Library for Android was added in 2012 as the fourth
259     supported external AAC encoder, and the one with the best quality and the
260     most features supported, including HE-AAC and HE-AACv2.
261   </p>
262   <p>
263     Therefore, we have decided that it is time to remove libvo-aacenc and
264     libaacplus. If you are currently using libvo-aacenc, prepare to transition
265     to the native encoder (<code>aac</code>) when updating to the next version
266     of FFmpeg. In most cases it is as simple as merely swapping the encoder
267     name. If you are currently using libaacplus, start using FDK AAC
268     (<code>libfdk_aac</code>) with an appropriate <code>profile</code> option
269     to select the exact AAC profile that fits your needs. In both cases, you
270     will enjoy an audible quality improvement and as well as fewer licensing
271     headaches.
272   </p>
273   <p>
274     Enjoy!
275   </p>
276
277   <h3 id="pr2.8.5">January 16, 2016, FFmpeg 2.8.5, 2.7.5, 2.6.7, 2.5.10</h3>
278   <p>
279     We have made several new point releases (<b><a href="download.html#release_2.8">2.8.5</a>,
280       <a href="download.html#release_2.7">2.7.5</a>,
281       <a href="download.html#release_2.6">2.6.7</a>,
282       <a href="download.html#release_2.5">2.5.10</a></b>).
283     They fix various bugs, as well as CVE-2016-1897 and CVE-2016-1898.
284     Please see the changelog for each release for more details.
285   </p>
286   <p>
287     We recommend users, distributors and system integrators to upgrade unless they use
288     current git master.
289   </p>
290
291   <h3 id="aac_encoder_stable">December 5th, 2015, The native FFmpeg AAC encoder is now stable!</h3>
292   <p>
293     After seven years the native FFmpeg AAC encoder has had its experimental flag
294     removed and declared as ready for general use. The encoder is transparent
295     at 128kbps for most samples tested with artifacts only appearing in extreme
296     cases. Subjective quality tests put the encoder to be of equal or greater
297     quality than most of the other encoders available to the public.
298   </p>
299   <p>
300     Licensing has always been an issue with encoding AAC audio as most of the
301     encoders have had a license making FFmpeg unredistributable if compiled with
302     support for them. The fact that there now exists a fully open and truly
303     free AAC encoder integrated directly within the project means a lot to those
304     who wish to use accepted and widespread standards.
305   </p>
306   <p>
307     The majority of the work done to bring the encoder up to quality was started
308     during this year's GSoC by developer Claudio Freire and Rostislav Pehlivanov.
309     Both continued to work on the encoder with the latter joining as a developer
310     and mainainer, working on other parts of the project as well. Also, thanks
311     to <a href="http://d.hatena.ne.jp/kamedo2/">Kamedo2</a> who does comparisons
312     and tests, the original authors and all past and current contributors to the
313     encoder. Users are suggested and encouraged to use the encoder and provide
314     feedback or breakage reports through our <a href="https://trac.ffmpeg.org/">bug tracker</a>.
315   </p>
316
317   <h3 id="thanks_sponsor_0001">October 13th, 2015, Telepoint &amp; MediaHub are now supporting our project</h3>
318   <p>
319     A big thank you note goes to our newest supporters: MediaHub and Telepoint.
320     Both companies have donated a dedicated server with free of charge internet
321     connectivity. Here is a little bit about them in their own words:
322   </p>
323
324   <ul>
325     <li>
326       <p>
327         <a href="http://www.telepoint.bg/en/">Telepoint</a> is the biggest
328         carrier-neutral data center in Bulgaria. Located in the heart of Sofia
329         on a cross-road of many Bulgarian and International networks, the
330         facility is a fully featured Tier 3 data center that provides flexible
331         customer-oriented colocation solutions (ranging from a server to a
332         private collocation hall) and a high level of security.
333       </p>
334     </li>
335
336     <li>
337       <p>
338         MediaHub Ltd. is a Bulgarian IPTV platform and services provider which
339         uses FFmpeg heavily since it started operating a year ago. <i>"Donating
340         to help keep FFmpeg online is our way of giving back to the community"
341         </i>.
342       </p>
343     </li>
344   </ul>
345
346   <p>
347     Thanks Telepoint and MediaHub for their support!
348   </p>
349
350   <h3 id="gsoc2015_result">September 29th, 2015, GSoC 2015 results</h3>
351
352   <p>
353     FFmpeg participated to the latest edition of
354     the <a href="http://www.google-melange.com/gsoc/homepage/google/gsoc2015">Google
355     Summer of Code</a> Project. FFmpeg got a total of 8 assigned
356     projects, and 7 of them were successful.
357   </p>
358
359   <p>We want to thank <a href="https://www.google.com">Google</a>, the
360     participating students, and especially the mentors who joined this
361     effort. We're looking forward to participating in the next GSoC
362     edition!
363   </p>
364
365   <p>
366     Below you can find a brief description of the final outcome of
367     each single project.
368   </p>
369
370   <h4>Basic servers for network protocols, mentee: Stephan Holljes, mentor: Nicolas George</h4>
371
372   <p>
373     Stephan Holljes's project for this session of Google Summer of Code was to
374     implement basic HTTP server features for libavformat, to complement the
375     already present HTTP client and RTMP and RTSP server code.
376   </p>
377
378   <p>
379     The first part of the project was to make the HTTP code capable of accepting
380     a single client; it was completed partly during the qualification period and
381     partly during the first week of the summer. Thanks to this work, it is now
382     possible to make a simple HTTP stream using the following commands:
383   </p>
384
385   <pre>
386     ffmpeg -i /dev/video0 -listen 1 -f matroska \
387     -c:v libx264 -preset fast -tune zerolatency http://:8080
388     ffplay http://localhost:8080/
389   </pre>
390
391   <p>
392     The next part of the project was to extend the code to be able to accept
393     several clients, simultaneously or consecutively. Since libavformat did not
394     have an API for that kind of task, it was necessary to design one. This part
395     was mostly completed before the midterm and applied shortly afterwards.
396     Since the ffmpeg command-line tool is not ready to serve several clients,
397     the test ground for that new API is an example program serving hard-coded
398     content.
399   </p>
400
401   <p>
402     The last and most ambitious part of the project was to update ffserver to
403     make use of the new API. It would prove that the API is usable to implement
404     real HTTP servers, and expose the points where more control was needed. By
405     the end of the summer, a first working patch series was undergoing code
406     review.
407   </p>
408
409   <h4>Browsing content on the server, mentee: Mariusz Szczepańczyk, mentor: Lukasz Marek</h4>
410
411   <p>
412     Mariusz finished an API prepared by the FFmpeg community and implemented
413     Samba directory listing as qualification task.
414   </p>
415
416   <p>
417     During the program he extended the API with the possibility to
418     remove and rename files on remote servers. He completed the
419     implementation of these features for file, Samba, SFTP, and FTP
420     protocols.
421   </p>
422
423   <p>
424     At the end of the program, Mariusz provided a sketch of an
425     implementation for HTTP directory listening.
426   </p>
427
428   <h4>Directshow digital video capture, mentee: Mate Sebok, mentor: Roger Pack</h4>
429
430   <p>
431     Mate was working on directshow input from digital video sources. He
432     got working input from ATSC input sources, with specifiable tuner.
433   </p>
434
435   <p>
436     The code has not been committed, but a patch of it was sent to the
437     ffmpeg-devel mailing list for future use.
438   </p>
439
440   <p>
441     The mentor plans on cleaning it up and committing it, at least for the
442     ATSC side of things. Mate and the mentor are still working trying to
443     finally figure out how to get DVB working.
444   </p>
445
446   <h4>Implementing full support for 3GPP Timed Text Subtitles, mentee: Niklesh Lalwani, mentor: Philip Langdale</h4>
447
448   <p>
449     Niklesh's project was to expand our support for 3GPP Timed Text
450     subtitles. This is the native subtitle format for mp4 containers, and
451     is interesting because it's usually the only subtitle format supported
452     by the stock playback applications on iOS and Android devices.
453   </p>
454
455   <p>
456     ffmpeg already had basic support for these subtitles which ignored all
457     formatting information - it just provided basic plain-text support.
458   </p>
459
460   <p>
461     Niklesh did work to add support on both the encode and decode side for
462     text formatting capabilities, such as font size/colour and effects like
463     bold/italics, highlighting, etc.
464   </p>
465
466   <p>
467     The main challenge here is that Timed Text handles formatting in a very
468     different way from most common subtitle formats. It uses a binary
469     encoding (based on mp4 boxes, naturally) and stores information
470     separately from the text itself. This requires additional work to track
471     which parts of the text formatting applies to, and explicitly dealing
472     with overlapping formatting (which other formats support but Timed
473     Text does not) so it requires breaking the overlapping sections into
474     separate non-overlapping ones with different formatting.
475   </p>
476
477   <p>
478     Finally, Niklesh had to be careful about not trusting any size
479     information in the subtitles - and that's no joke: the now infamous
480     Android stagefright bug was in code for parsing Timed Text subtitles.
481   </p>
482
483   <p>
484     All of Niklesh's work is committed and was released in ffmpeg 2.8.
485   </p>
486
487 <h4>libswscale refactoring, mentee: Pedro Arthur, mentors: Michael Niedermayer, Ramiro Polla</h4>
488
489   <p>
490     Pedro Arthur has modularized the vertical and horizontal scalers.
491     To do this he designed and implemented a generic filter framework
492     and moved the existing scaler code into it. These changes now allow
493     easily adding removing, splitting or merging processing steps.
494     The implementation was benchmarked and several alternatives were
495     tried to avoid speed loss.
496   </p>
497
498   <p>
499     He also added gamma corrected scaling support.
500     An example to use gamma corrected scaling would be:
501   </p>
502
503   <pre>
504     ffmpeg -i input -vf scale=512:384:gamma=1 output
505   </pre>
506
507   <p>
508     Pedro has done impressive work considering the short time available,
509     and he is a FFmpeg committer now. He continues to contribute to
510     FFmpeg, and has fixed some bugs in libswscale after GSoC has
511     ended.
512   </p>
513
514   <h4>AAC Encoder Improvements, mentee: Rostislav Pehlivanov, mentor: Claudio Freire</h4>
515
516   <p>
517     Rostislav Pehlivanov has implemented PNS, TNS, I/S coding and main
518     prediction on the native AAC encoder. Of all those extensions, only
519     TNS was left in a less-than-usable state, but the implementation has
520     been pushed (disabled) anyway since it's a good basis for further
521     improvements.
522   </p>
523
524   <p>
525     PNS replaces noisy bands with a single scalefactor representing the
526     energy of that band, gaining in coding efficiency considerably, and
527     the quality improvements on low bitrates are impressive for such a
528     simple feature.
529   </p>
530
531   <p>
532     TNS still needs some polishing, but has the potential to reduce coding
533     artifacts by applying noise shaping in the temporal domain (something
534     that is a source of annoying, notable distortion on low-entropy
535     bands).
536   </p>
537
538   <p>
539     Intensity Stereo coding (I/S) can double coding efficiency by
540     exploiting strong correlation between stereo channels, most effective
541     on pop-style tracks that employ panned mixing. The technique is not as
542     effective on classic X-Y recordings though.
543   </p>
544
545   <p>
546     Finally, main prediction improves coding efficiency by exploiting
547     correlation among successive frames. While the gains have not been
548     huge at this point, Rostislav has remained active even after the GSoC,
549     and is polishing both TNS and main prediction, as well as looking for
550     further improvements to make.
551   </p>
552
553   <p>
554     In the process, the MIPS port of the encoder was broken a few times,
555     something he's also working to fix.
556   </p>
557
558   <h4>Animated Portable Network Graphics (APNG), mentee: Donny Yang, mentor: Paul B Mahol</h4>
559
560   <p>
561     Donny Yang implemented basic keyframe only APNG encoder as the
562     qualification task. Later he wrote interframe compression via
563     various blend modes. The current implementation tries all blend
564     modes and picks one which takes the smallest amount of memory.
565   </p>
566
567   <p>
568     Special care was taken to make sure that the decoder plays
569     correctly all files found in the wild and that the encoder
570     produces files that can be played in browsers that support APNG.
571   </p>
572
573   <p>
574     During his work he was tasked to fix any encountered bug in the
575     decoder due to the fact that it doesn't match APNG
576     specifications. Thanks to this work, a long standing bug in the
577     PNG decoder has been fixed.
578   </p>
579
580   <p>
581     For latter work he plans to continue working on the encoder,
582     making it possible to select which blend modes will be used in the
583     encoding process. This could speed up encoding of APNG files.
584   </p>
585
586   <h3 id="pr2.8">September 9th, 2015, FFmpeg 2.8</h3>
587   <p>
588     We published release <b><a href="download.html#release_2.8">2.8</a></b> as new major version.
589     It contains all features and bug fixes of the git master branch from September 8th. Please see
590     the <b><a href="https://raw.githubusercontent.com/FFmpeg/FFmpeg/release/2.8/Changelog">changelog</a></b>
591     for a list of the most important changes.
592   </p>
593   <p>
594     We recommend users, distributors and system integrators to upgrade unless they use current git master.
595   </p>
596
597   <h3 id="message">August 1st, 2015, A message from the FFmpeg project</h3>
598   <p>
599     Dear multimedia community,
600   </p>
601   <p>
602     The resignation of Michael Niedermayer as leader of FFmpeg yesterday has
603     come by surprise. He has worked tirelessly on the FFmpeg project for many
604     years and we must thank him for the work that he has done. We hope that in
605     the future he will continue to contribute to the project. In the coming
606     weeks, the FFmpeg project will be managed by the active contributors.
607   </p>
608   <p>
609     The last four years have not been easy for our multimedia community - both
610     contributors and users. We should now look to the future, try to find
611     solutions to these issues, and to have reconciliation between the forks,
612     which have split the community for so long.
613   </p>
614   <p>
615     Unfortunately, much of the disagreement has taken place in inappropriate
616     venues so far, which has made finding common ground and solutions
617     difficult. We aim to discuss this in our communities online over the coming
618     weeks, and in person at the <a
619     href="https://www.videolan.org/videolan/events/vdd15/">VideoLAN Developer
620     Days</a> in Paris in September: a neutral venue for the entire open source
621     multimedia community.
622   </p>
623   <p>
624     The FFmpeg project.
625   </p>
626
627   <h3 id="needhost">July 4th, 2015, FFmpeg needs a new host</h3>
628   <p><b>UPDATE:</b> We have received more than 7 offers for hosting and servers, thanks a lot to everyone!</p>
629   <p>
630     After graciously hosting our projects (<a href="http://www.ffmpeg.org">FFmpeg</a>, <a href="http://www.mplayerhq.hu">MPlayer</a>
631     and <a href="http://rtmpdump.mplayerhq.hu">rtmpdump</a>) for 4 years, Arpi (our hoster) has informed us that we have to secure a new host somewhere else immediately.
632   </p>
633   <p>
634     If you want to host an open source project, please let us know, either on <a href="http://ffmpeg.org/mailman/listinfo/ffmpeg-devel">ffmpeg-devel</a>
635     mailing list or irc.freenode.net #ffmpeg-devel.
636   </p>
637   <p>
638     We use about 4TB of storage and at least 4TB of bandwidth / month for various mailing lists, <a href="http://trac.ffmpeg.org">trac</a>, <a href="http://samples.ffmpeg.org">samples repo</a>, svn, etc.
639   </p>
640
641   <h3 id="pr2.6.1">March 16, 2015, FFmpeg 2.6.1</h3>
642   <p>
643     We have made a new major release (<b><a href="download.html#release_2.6">2.6</a></b>)
644     and now one week afterward 2.6.1. It contains all features and bugfixes of the git master branch from the 6th March.
645     Please see the <b><a href="http://git.videolan.org/?p=ffmpeg.git;a=blob;f=RELEASE_NOTES;hb=release/2.6">Release Notes</a></b> for a
646     list of note-worthy changes.
647   </p>
648   <p>
649     We recommend users, distributors and system integrators to upgrade unless they use
650     current git master.
651   </p>
652
653   <h3 id="gsoc2015">March 4, 2015, Google Summer of Code</h3>
654   <p>
655     FFmpeg has been accepted as a <a href="http://www.google-melange.com/gsoc/homepage/google/gsoc2015">Google Summer of Code</a> Project. If you wish to
656     participate as a student see our <a href="https://trac.ffmpeg.org/wiki/SponsoringPrograms/GSoC/2015">project ideas page</a>.
657     You can already get in contact with mentors and start working on qualification tasks. Registration
658     at Google for students will open March 16th. Good luck!
659   </p>
660
661   <h3 id="clt2015">March 1, 2015, Chemnitzer Linux-Tage</h3>
662   <p>
663     We happily announce that FFmpeg will be represented at Chemnitzer Linux-Tage
664     (CLT) in Chemnitz, Germany. The event will take place on 21st and 22nd of March.
665   </p>
666
667   <p>
668     More information can be found <a href="https://chemnitzer.linux-tage.de/2015/en/">here</a>
669   </p>
670
671   <p>
672     We demonstrate usage of FFmpeg, answer your questions and listen to
673     your problems and wishes. <strong>If you have media files that cannot be
674     processed correctly with FFmpeg, be sure to have a sample with you
675     so we can have a look!</strong>
676   </p>
677   <p>
678     For the first time in our CLT history, there will be an <strong>FFmpeg workshop</strong>!
679     You can read the details <a href="https://chemnitzer.linux-tage.de/2015/de/programm/beitrag/209">here</a>.
680     The workshop is targeted at FFmpeg beginners. First the basics of
681     multimedia will be covered. Thereafter you will learn how to use
682     that knowledge and the FFmpeg CLI tools to analyse and process media
683     files. The workshop is in German language only and prior registration
684     is necessary. The workshop will be on Saturday starting at 10 o'clock.
685   </p>
686   <p>
687     We are looking forward to meet you (again)!
688   </p>
689
690   <h3 id="pr2.5">December 5, 2014, FFmpeg 2.5</h3>
691   <p>
692     We have made a new major release (<b><a href="download.html#release_2.5">2.5</a></b>)
693     It contains all features and bugfixes of the git master branch from the 4th December.
694     Please see the <b><a href="http://git.videolan.org/?p=ffmpeg.git;a=blob;f=RELEASE_NOTES;hb=release/2.5">Release Notes</a></b> for a
695     list of note-worthy changes.
696   </p>
697   <p>
698     We recommend users, distributors and system integrators to upgrade unless they use
699     current git master.
700   </p>
701
702   <h3 id="ffmpeg_back_in_sid">October 10, 2014, FFmpeg is in Debian unstable again</h3>
703   <p>
704     We wanted you to know there are
705     <a href="https://packages.debian.org/search?keywords=ffmpeg&amp;searchon=sourcenames&amp;suite=unstable&amp;section=main">
706     FFmpeg packages in Debian unstable</a> again. <strong>A big thank-you
707     to Andreas Cadhalpun and all the people that made it possible.</strong> It has been anything but simple.
708   </p>
709   <p>
710     Unfortunately that was already the easy part of this news. The bad news is the packages probably won't
711     migrate to Debian testing to be in the upcoming release codenamed jessie.
712     <a href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=763148">Read the argumentation over at Debian.</a>
713   </p>
714   <p>
715     <strong>However things will come out in the end, we hope for your continued remarkable support!</strong>
716   </p>
717
718   <h3 id="opw03">October 8, 2014, FFmpeg secured a place in OPW!</h3>
719   <p>
720     Thanks to a generous 6K USD donation by Samsung (Open Source Group),
721     FFmpeg will be welcoming at least 1 "Outreach Program for Women" intern
722     to work with our community for an initial period starting December 2014
723     (through March 2015).
724   </p>
725
726   <p>
727     We all know FFmpeg is used by the industry, but even while there are
728     countless products building on our code, it is not at all common for
729     companies to step up and help us out when needed. So a big thank-you
730     to Samsung and the OPW program committee!
731   </p>
732
733   <p>
734     If you are thinking on participating in OPW as an intern, please take
735     a look at our <a href="https://trac.ffmpeg.org/wiki/SponsoringPrograms/OPW/2014-12">OPW wiki page</a>
736     for some initial guidelines. The page is still a work in progress, but
737     there should be enough information there to get you started. If you, on
738     the other hand, are thinking on sponsoring work on FFmpeg through the
739     OPW program, please get in touch with us at opw@ffmpeg.org. With your
740     help, we might be able to secure some extra intern spots for this round!
741   </p>
742
743   <h3 id="pr2.4">September 15, 2014, FFmpeg 2.4</h3>
744   <p>
745     We have made a new major release (<b><a href="download.html#release_2.4">2.4</a></b>)
746     It contains all features and bugfixes of the git master branch from the 14th September.
747     Please see the <b><a href="http://git.videolan.org/?p=ffmpeg.git;a=blob;f=RELEASE_NOTES;hb=release/2.4">Release Notes</a></b> for a
748     list of note-worthy changes.
749   </p>
750   <p>
751     We recommend users, distributors and system integrators to upgrade unless they use
752     current git master.
753   </p>
754
755   <h3 id="pr2.3.3">August 20, 2014, FFmpeg 2.3.3, 2.2.7, 1.2.8</h3>
756   <p>
757     We have made several new point releases (<b><a href="download.html#release_2.3">2.3.3</a>,
758       <a href="download.html#release_2.2">2.2.7</a>,
759       <a href="download.html#release_1.2">1.2.8</a></b>).
760     They fix various bugs, as well as CVE-2014-5271 and CVE-2014-5272.
761     Please see the changelog for more details.
762   </p>
763   <p>
764     We recommend users, distributors and system integrators to upgrade unless they use
765     current git master.
766   </p>
767
768   <h3 id="opw02">July 29, 2014, Help us out securing our spot in OPW</h3>
769   <p>
770     Following our previous post regarding our participation on this year's
771     OPW (Outreach Program for Women), we are now reaching out to our users
772     (both individuals and companies) to help us gather the needed money to
773     secure our spot in the program.<br>
774     We need to put together 6K USD as a minimum but securing more funds would
775     help us towards getting more than one intern.<br>
776     You can donate by credit card using
777     <a href="https://co.clickandpledge.com/advanced/default.aspx?wid=56226">
778     Click&amp;Pledge</a> and selecting the "OPW" option. If you would like to
779     donate by money transfer or by check, please get in touch by
780     <a href="mailto:opw@ffmpeg.org">e-mail</a> and we will get back to you
781     with instructions.<br>Thanks!
782   </p>
783
784   <h3 id="newweb">July 20, 2014, New website</h3>
785   <p>
786     The FFmpeg project is proud to announce a brand new version of the website
787     made by <a href="http://db0.fr">db0</a>. While this was initially motivated
788     by the need for a larger menu, the whole website ended up being redesigned,
789     and most pages got reworked to ease navigation. We hope you'll enjoy
790     browsing it.
791   </p>
792
793   <h3 id="pr2.3">July 17, 2014, FFmpeg 2.3</h3>
794   <p>
795     We have made a new major release (<b><a href="download.html#release_2.3">2.3</a></b>)
796     It contains all features and bugfixes of the git master branch from the 16th July.
797     Please see the <b><a href="http://git.videolan.org/?p=ffmpeg.git;a=blob;f=RELEASE_NOTES;hb=489d066">Release Notes</a></b> for a
798     list of note-worthy changes.
799   </p>
800   <p>
801     We recommend users, distributors and system integrators to upgrade unless they use
802     current git master.
803   </p>
804
805   <h3 id="opw01">July 3, 2014, FFmpeg and the Outreach Program For Women</h3>
806   <p>
807     FFmpeg has started the process to become an OPW includer organization for the
808     next round of the program, with internships starting December 9. The
809     <a href="https://gnome.org/opw/">OPW</a> aims to "Help women (cis and trans)
810     and genderqueer to get involved in free and open source software". Part of the
811     process requires securing funds to support at least one internship (6K USD), so
812     if you were holding on your donation to FFmpeg, this is a great chance for you
813     to come forward, get in touch and help both the project and a great initiative!
814   </p>
815   <p>
816     We have set up an <a href="mailto:opw@ffmpeg.org">email address</a> you can use
817     to contact us about donations and general inquires regarding our participation
818     in the program. Hope to hear from you soon!
819   </p>
820
821   <h3 id="pr2.2.4">June 29, 2014, FFmpeg 2.2.4, 2.1.5, 2.0.5, 1.2.7, 1.1.12, 0.10.14</h3>
822   <p>
823     We have made several new point releases (<b><a href="download.html#release_2.2">2.2.4</a>,
824       <a href="download.html#release_2.1">2.1.5</a>,
825       <a href="download.html#release_2.0">2.0.5</a>,
826       <a href="download.html#release_1.2">1.2.7</a>,
827       <a href="download.html#release_1.1">1.1.12</a>,
828       <a href="download.html#release_0.10">0.10.14</a></b>).
829     They fix a
830     <a href="http://blog.securitymouse.com/2014/06/raising-lazarus-20-year-old-bug-that.html">security issue in the LZO implementation</a>,
831     as well as several other bugs. See the git log for details.
832   </p>
833   <p>
834     We recommend users, distributors and system integrators to upgrade unless they use
835     current git master.
836   </p>
837
838
839   <h3 id="lt2014">May 1, 2014, LinuxTag</h3>
840   <p>
841     Once again FFmpeg will be represented at LinuxTag in Berlin, Germany. The event will
842     take place from 8th to 10th of May. Please note that this year's LinuxTag is at a
843     different location closer to the city center.
844   </p>
845
846   <p>
847     We will have a shared booth with XBMC and VideoLAN.
848     <b>
849       If you have media files that cannot be processed correctly with
850       FFmpeg, be sure to have a sample with you so we can have a look!
851     </b>
852   </p>
853
854   <p>
855     More information about LinuxTag can be found <a href="http://www.linuxtag.org/2014/">here</a>
856   </p>
857
858   <p>
859     We are looking forward to see you in Berlin!
860   </p>
861
862   <h3 id="heartbleed">April 18, 2014, OpenSSL Heartbeat bug</h3>
863   <p>
864     Our server hosting the Trac issue tracker was vulnerable to the attack
865     against OpenSSL known as "heartbleed". The OpenSSL software library
866     was updated on 7th of April, shortly after the vulnerability was publicly
867     disclosed. We have changed the private keys (and certificates) for all
868     FFmpeg servers. The details were sent to the mailing lists by
869     Alexander Strasser, who is part of the project server team. Here is a
870     link to the user mailing list
871     <a href="https://lists.ffmpeg.org/pipermail/ffmpeg-user/2014-April/020968.html">archive</a>
872     .
873   </p><p>
874     We encourage you to read up on
875     <a href="https://www.schneier.com/blog/archives/2014/04/heartbleed.html">"OpenSSL heartbleed"</a>.
876     <b>It is possible that login data for the issue tracker was exposed to
877       people exploiting this security hole. You might want to change your password
878       in the tracker and everywhere else you used that same password.</b>
879   </p>
880
881   <h3 id="pr2.2.1">April 11, 2014, FFmpeg 2.2.1</h3>
882   <p>
883     We have made a new point releases (<b><a href="download.html#release_2.2">2.2.1</a></b>).
884     It contains bug fixes for Tickets #2893, #3432, #3469, #3486, #3495 and #3540 as well as
885     several other fixes.
886     See the git log for details.
887   </p>
888
889   <h3 id="pr2.2">March 24, 2014, FFmpeg 2.2</h3>
890   <p>
891     We have made a new major release (<b><a href="download.html#release_2.2">2.2</a></b>)
892     It contains all features and bugfixes of the git master branch from 1st March.
893     A partial list of new stuff is below:
894   </p>
895   <pre>
896     - HNM version 4 demuxer and video decoder
897     - Live HDS muxer
898     - setsar/setdar filters now support variables in ratio expressions
899     - elbg filter
900     - string validation in ffprobe
901     - support for decoding through VDPAU in ffmpeg (the -hwaccel option)
902     - complete Voxware MetaSound decoder
903     - remove mp3_header_compress bitstream filter
904     - Windows resource files for shared libraries
905     - aeval filter
906     - stereoscopic 3d metadata handling
907     - WebP encoding via libwebp
908     - ATRAC3+ decoder
909     - VP8 in Ogg demuxing
910     - side &amp; metadata support in NUT
911     - framepack filter
912     - XYZ12 rawvideo support in NUT
913     - Exif metadata support in WebP decoder
914     - OpenGL device
915     - Use metadata_header_padding to control padding in ID3 tags (currently used in
916     MP3, AIFF, and OMA files), FLAC header, and the AVI "junk" block.
917     - Mirillis FIC video decoder
918     - Support DNx444
919     - libx265 encoder
920     - dejudder filter
921     - Autodetect VDA like all other hardware accelerations
922   </pre>
923   <p>
924     We recommend users, distributors and system integrators to upgrade unless they use
925     current git master.
926   </p>
927
928   <h3 id="clt2014">February 3, 2014, Chemnitzer Linux-Tage</h3>
929   <p>
930     We happily announce that FFmpeg will be represented at `Chemnitzer Linux-Tage'
931     in Chemnitz, Germany. The event will take place on 15th and 16th of March.
932   </p>
933
934   <p>
935     More information can be found <a href="http://chemnitzer.linux-tage.de/2014/en/info/">here</a>
936   </p>
937
938   <p>
939     We invite you to visit us at our booth located in the Linux-Live area!
940     There we will demonstrate usage of FFmpeg, answer your questions and listen to
941     your problems and wishes.
942   </p>
943   <p>
944     <b>
945       If you have media files that cannot be processed correctly with
946       FFmpeg, be sure to have a sample with you so we can have a look!
947     </b>
948   </p>
949   <p>
950     We are looking forward to meet you (again)!
951   </p>
952
953
954   <h3 id="trac_sec">February 9, 2014, trac.ffmpeg.org / trac.mplayerhq.hu Security Breach</h3>
955   <p>
956     The server on which FFmpeg and MPlayer Trac issue trackers were
957     installed was compromised. The affected server was taken offline
958     and has been replaced and all software reinstalled.
959     FFmpeg Git, releases, FATE, web and mailinglists are on other servers
960     and were not affected. We believe that the original compromise happened
961     to a server, unrelated to FFmpeg and MPlayer, several months ago.
962     That server was used as a source to clone the VM that we recently moved
963     Trac to. It is not known if anyone used the backdoor that was found.
964   </p>
965   <p>
966     We recommend all users to change their passwords.
967     <b>Especially users who use a password on Trac that they also use
968       elsewhere, should change that password at least elsewhere.</b>
969   </p>
970
971
972   <h3 id="ffmpeg_rfp">November 12, 2013, FFmpeg RFP in Debian</h3>
973   <p>
974     Since the splitting of Libav the Debian/Ubuntu maintainers have followed
975     the Libav fork. Many people have requested the packaging of ffmpeg in
976     Debian, as it is more feature-complete and in many cases less buggy.
977   </p>
978   <p>
979     <a href="http://cynic.cc/blog/">Rogério Brito</a>, a Debian developer,
980     has proposed a Request For Package (RFP) in the Debian bug tracking
981     system.
982   </p>
983   <p>
984     Please let the Debian and Ubuntu developers know that you support packaging
985     of the real FFmpeg! See Debian <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=729203">ticket #729203</a>
986     for more details.
987   </p>
988
989   <h3 id="pr2.1">October 28, 2013, FFmpeg 2.1</h3>
990   <p>
991     We have made a new major release (<b><a href="download.html#release_2.1">2.1</a></b>)
992     It contains all features and bugfixes of the git master branch from 28th October.
993     A partial list of new stuff is below:
994   </p>
995   <pre>
996     - aecho filter
997     - perspective filter ported from libmpcodecs
998     - ffprobe -show_programs option
999     - compand filter
1000     - RTMP seek support
1001     - when transcoding with ffmpeg (i.e. not streamcopying), -ss is now accurate
1002     even when used as an input option. Previous behavior can be restored with
1003     the -noaccurate_seek option.
1004     - ffmpeg -t option can now be used for inputs, to limit the duration of
1005     data read from an input file
1006     - incomplete Voxware MetaSound decoder
1007     - read EXIF metadata from JPEG
1008     - DVB teletext decoder
1009     - phase filter ported from libmpcodecs
1010     - w3fdif filter
1011     - Opus support in Matroska
1012     - FFV1 version 1.3 is stable and no longer experimental
1013     - FFV1: YUVA(444,422,420) 9, 10 and 16 bit support
1014     - changed DTS stream id in lavf mpeg ps muxer from 0x8a to 0x88, to be
1015     more consistent with other muxers.
1016     - adelay filter
1017     - pullup filter ported from libmpcodecs
1018     - ffprobe -read_intervals option
1019     - Lossless and alpha support for WebP decoder
1020     - Error Resilient AAC syntax (ER AAC LC) decoding
1021     - Low Delay AAC (ER AAC LD) decoding
1022     - mux chapters in ASF files
1023     - SFTP protocol (via libssh)
1024     - libx264: add ability to encode in YUVJ422P and YUVJ444P
1025     - Fraps: use BT.709 colorspace by default for yuv, as reference fraps decoder does
1026     - make decoding alpha optional for prores, ffv1 and vp6 by setting
1027     the skip_alpha flag.
1028     - ladspa wrapper filter
1029     - native VP9 decoder
1030     - dpx parser
1031     - max_error_rate parameter in ffmpeg
1032     - PulseAudio output device
1033     - ReplayGain scanner
1034     - Enhanced Low Delay AAC (ER AAC ELD) decoding (no LD SBR support)
1035     - Linux framebuffer output device
1036     - HEVC decoder, raw HEVC demuxer, HEVC demuxing in TS, Matroska and MP4
1037     - mergeplanes filter
1038   </pre>
1039   <p>
1040     We recommend users, distributors and system integrators to upgrade unless they use
1041     current git master.
1042   </p>
1043
1044   <div class="text-right">
1045     <a href="archive.html" class="btn btn-lg btn-success"><i class="fa fa-chevron-right"></i> Past news</a>
1046   </div>
1047
1048 </div> <!-- index -->