lavr: x86: optimized 2-channel flt to fltp conversion
[ffmpeg.git] / Changelog
index 4d89510..4326c68 100644 (file)
--- a/Changelog
+++ b/Changelog
 Entries are sorted chronologically from oldest to youngest within each release,
 releases are sorted from youngest to oldest.
 
-
 version <next>:
+
+- XWD encoder and decoder
+- Support for fragmentation in the mov/mp4 muxer
+- ISMV (Smooth Streaming) muxer
+- CDXL demuxer and decoder
+- Apple ProRes encoder
+- Sun Rasterfile Encoder
+- remove libpostproc
+- ID3v2 attached pictures reading and writing
+- WMA Lossless decoder
+- XBM encoder
+- RealAudio Lossless decoder
+- ZeroCodec decoder
+- drop support for avconv without libavfilter
+- add libavresample audio conversion library
+- audio filters support in libavfilter and avconv
+- add fps filter
+- audio split filter
+- audio mix filter
+- avprobe output is now standard INI or JSON. The old format can still
+  be used with -of old.
+- Indeo Audio decoder
+- channelsplit audio filter
+- RTMPT protocol support
+- iLBC encoding/decoding via libilbc
+- Microsoft Screen 1 decoder
+- join audio filter
+- audio channel mapping filter
+- Microsoft ATC Screen decoder
+- RTSP listen mode
+- TechSmith Screen Codec 2 decoder
+- AAC encoding via libfdk-aac
+- Microsoft Expression Encoder Screen decoder
+- RTMPS protocol support
+- RTMPTS protocol support
+- JPEG 2000 encoding support through OpenJPEG
+- G.723.1 demuxer and decoder
+- RTMPE protocol support
+- RTMPTE protocol support
+- Canopus Lossless Codec decoder
+- avconv -shortest option is now per-output file
+- Ut Video encoder
+
+
+version 0.8:
+
+- GSM audio parser
+- SMJPEG muxer
+
+
+version 0.8_beta2:
+
+- Automatic thread count based on detection number of (available) CPU cores
+- Deprecate libpostproc. If desired, the switch --enable-postproc will
+  enable it but it may be removed in a later Libav release.
+- rv34: frame-level multi-threading
+- optimized iMDCT transform on x86 using SSE for for mpegaudiodec
+
+
+version 0.8_beta1:
+
 - BWF muxer
 - Flash Screen Video 2 decoder
 - ffplay/ffprobe/ffserver renamed to avplay/avprobe/avserver
 - ffmpeg deprecated, added avconv, which is almost the same for now, except
 for a few incompatible changes in the options, which will hopefully make them
 easier to use. The changes are:
-    * -newvideo/-newaudio/-newsubtitle are gone, because they were redundant and
-      worked in a nonstandard way. -map is sufficient to add streams to output
-      files.
-    * -map now has slightly different and more powerful syntax.
-        + it's possible to specify stream type. E.g. -map 0:a:2 means 'third
-          audio stream'.
-        + omitting the stream index now maps all the streams of the given
-          type, not just the first. E.g. -map 0:s maps all the subtitle streams.
-        + colons (':') are used to separate file index/stream type/stream
-          index. Comma (',') is used to separate the sync stream. This is done
-          for consistency with other options.
-        + since -map can now match multiple streams, negative mappings were
+    * The options placement is now strictly enforced! While in theory the
+      options for ffmpeg should be given in [input options] -i INPUT [output
+      options] OUTPUT order, in practice it was possible to give output options
+      before the -i and it mostly worked. Except when it didn't - the behavior was
+      a bit inconsistent. In avconv, it is not possible to mix input and output
+      options. All non-global options are reset after an input or output filename.
+    * All per-file options are now truly per-file - they apply only to the next
+      input or output file and specifying different values for different files
+      will now work properly (notably -ss and -t options).
+    * All per-stream options are now truly per-stream - it is possible to
+      specify which stream(s) should a given option apply to. See the Stream
+      specifiers section in the avconv manual for details.
+    * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
+      sense that they're specified after the output filename instead of before,
+      like all other options. In avconv this irregularity is removed, all options
+      apply to the next input or output file.
+    * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
+      irregular and highly confusing, they were also redundant. In avconv the -map
+      option will create new streams in the output file and map input streams to
+      them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
+      each stream in the first input file.
+    * The -map option now has slightly different and more powerful syntax:
+        + Colons (':') are used to separate file index/stream type/stream index
+          instead of dots. Comma (',') is used to separate the sync stream instead
+          of colon.. This is done for consistency with other options.
+        + It's possible to specify stream type. E.g. -map 0:a:2 creates an
+          output stream from the third input audio stream.
+        + Omitting the stream index now maps all the streams of the given type,
+          not just the first. E.g. -map 0:s creates output streams for all the
+          subtitle streams in the first input file.
+        + Since -map can now match multiple streams, negative mappings were
           introduced. Negative mappings disable some streams from an already
-          defined map. E.g. '-map 0 -map -0:a:1' means 'map everything except
-          for the second audio stream'.
-    * -vcodec/-acodec/-scodec are replaced by -c (or -codec), which
-      allows to precisely specify target stream(s) consistently with other
-      options. E.g. '-c:v libx264' sets the codec for all video streams,
-      '-c:a:0 libvorbis' sets the codec for the first audio stream and '-c
-      copy' copies all the streams.
+          defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
+          all the stream in the first input file, except for the second audio
+          stream'.
+    * There is a new option -c (or -codec) for choosing the decoder/encoder to
+      use, which allows to precisely specify target stream(s) consistently with
+      other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
+      libvorbis sets the codec for the first audio stream and -c copy copies all
+      the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
+      aliases to -c:v/a/s
     * It is now possible to precisely specify which stream should an AVOption
-      apply to. See the manual for detailed explanation.
+      apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
+      -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
+      syntax is deprecated and will stop working soon.
     * -map_chapters now takes only an input file index and applies to the next
       output file. This is consistent with how all the other options work.
     * -map_metadata now takes only an input metadata specifier and applies to
       the next output file. Output metadata specifier is now part of the option
       name, similarly to the AVOptions/map/codec feature above.
-    * Presets in avconv are disabled, because only libx264 used them and
-      presets for libx264 can now be specified using a private option
-      '-preset <presetname>'.
-    * -intra option was removed, it's equivalent to -g 0.
+    * -metadata can now be used to set metadata on streams and chapters, e.g.
+      -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
+      This made -vlang/-alang/-slang options redundant, so they were removed.
+    * -qscale option now uses stream specifiers and applies to all streams, not
+      just video. I.e. plain -qscale number would now apply to all streams. To get
+      the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
+      and -aq is now an alias for -q:a.
+    * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
+      uses stream specifiers. Use -bsf:v/a/s instead of the old options.
+    * -itsscale option now uses stream specifiers, so its argument is only the
+      scale parameter.
+    * -intra option was removed, use -g 0 for the same effect.
+    * -psnr option was removed, use -flags +psnr for the same effect.
+    * -vf option is now an alias to the new -filter option, which uses stream specifiers.
+    * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
+    * -vtag/-atag/-stag options are now aliases to the new -tag option.
 - XMV demuxer
 - Windows Media Image decoder
 - LATM muxer/demuxer
@@ -55,8 +150,28 @@ easier to use. The changes are:
 - Ut Video decoder
 - Speex encoding via libspeex
 - 4:2:2 H.264 decoding support
+- 4:2:2 and 4:4:4 H.264 encoding with libx264
 - Pulseaudio input device
 - replacement Indeo 3 decoder
+- TLS/SSL and HTTPS protocol support
+- AVOptions API rewritten and documented
+- most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
+  AVCodecContext deprecated. Codec private options should be used instead.
+- Properly working defaults in libx264 wrapper, support for native presets.
+- Encrypted OMA files support
+- Discworld II BMV decoding support
+- VBLE Decoder
+- OS X Video Decoder Acceleration (VDA) support
+- CRI ADX audio format muxer and demuxer
+- Playstation Portable PMP format demuxer
+- PCM format support in OMA demuxer
+- CLJR encoder
+- Dxtory capture format decoder
+- v410 QuickTime uncompressed 4:4:4 10-bit encoder and decoder
+- OpenMG Audio muxer
+- Simple segmenting muxer
+- Indeo 4 decoder
+- SMJPEG demuxer
 
 
 version 0.7: