Commit Graph

671 Commits

Author SHA1 Message Date
Michael Niedermayer
1b58f13761 Merge commit 'f6ee61fb05482c617f5deee29a190d8ff483b3d1'
* commit 'f6ee61fb05482c617f5deee29a190d8ff483b3d1':
  lavc: export DV profile API used by muxer/demuxer as public

Conflicts:
	configure
	doc/APIchanges
	libavcodec/Makefile
	libavcodec/dv_profile.c
	libavcodec/dv_profile.h
	libavcodec/version.h
	libavformat/dvenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 22:27:07 +02:00
Anton Khirnov
f6ee61fb05 lavc: export DV profile API used by muxer/demuxer as public 2014-07-09 13:35:07 +00:00
Michael Niedermayer
242b3c292a Merge commit '1e9a93bfca2c2f43a07e01f2ef9fd5cbafe6c22d'
* commit '1e9a93bfca2c2f43a07e01f2ef9fd5cbafe6c22d':
  libfdk-aacdec: Decode the first AAC frame to reliably identify the bitstream

Conflicts:
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 23:16:59 +02:00
Omer Osman
1e9a93bfca libfdk-aacdec: Decode the first AAC frame to reliably identify the bitstream
For implicit signaling cases (as possible for Spectral Band Replication
and Parametric Stereo Tools), the decoder must decode the first frame to
correctly identify the stream configuration (as called from
avformat_find_stream_info). The mechanism for this is built-in and only
requires adding CODEC_CAP_CHANNEL_CONF to the libfdk-aacdec AVCodec
struct.

Signed-off-by: Omer Osman <omer.osman@iis.fraunhofer.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-07 22:09:15 +03:00
Michael Niedermayer
4216a5082b Merge commit 'e0bfe34ea8ccf333ec5b17961fd58eb575e74f8b'
* commit 'e0bfe34ea8ccf333ec5b17961fd58eb575e74f8b':
  libfdk-aacdec: Reduce the default decoder delay by one frame

Conflicts:
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 03:41:35 +02:00
Omer Osman
e0bfe34ea8 libfdk-aacdec: Reduce the default decoder delay by one frame
The default error concealment method if none is set via
aacDecoder_SetParam(AAC_CONCEAL_METHOD) is set in
CConcealment_InitCommonData within the fdk-aac library
and is set to Energy Interpolation. This method requires one frame
delay to the output. To reduce the default decoder output delay and
avoid missing the last frame in file based decoding, use Noise
Substitution as the default concealment method.

Signed-off-by: Omer Osman <omer.osman@iis.fraunhofer.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-05 00:47:36 +03:00
Michael Niedermayer
4a99333581 Merge commit '874390e163427c1fe7682ab27924a7843780dbb3'
* commit '874390e163427c1fe7682ab27924a7843780dbb3':
  lavc: add a convenience function for rescaling timestamps in a packet

Conflicts:
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-20 16:40:04 +02:00
Anton Khirnov
874390e163 lavc: add a convenience function for rescaling timestamps in a packet 2014-06-20 14:14:11 +02:00
Michael Niedermayer
b152152df3 Add nointra AVDiscard level
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-16 04:04:13 +02:00
Marton Balint
9236f7b5a2 mpeg12enc: add seq_disp_ext option for deciding when to write a sequence_display_extension
Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-14 19:45:53 +02:00
Michael Niedermayer
03bb99ae1a Merge commit '0957b274e312e985d69cb490bee2a7ff820acaa6'
* commit '0957b274e312e985d69cb490bee2a7ff820acaa6':
  lavc: add an option to enable side data-only packets during encoding

Conflicts:
	libavcodec/avcodec.h
	libavcodec/options_table.h
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-01 13:46:38 +02:00
Anton Khirnov
0957b274e3 lavc: add an option to enable side data-only packets during encoding
Some encoders (e.g. flac) need to send side data when there is no more
data to be output. This enables them to output a packet with no data in
it, only side data.
2014-06-01 08:26:43 +02:00
Aman Gupta
4372fb7a57 avcodec/webvttenc: add webvtt encoder
Based off the srt encoder. The following features are unimplemented:

- fonts, colors, sizes
- alignment and positioning

The rest works well. For example, use ffmpeg to convert subtitles into the .vtt format:

  ffmpeg -i input.srt output.vtt

Signed-off-by: Aman Gupta <ffmpeg@tmm1.net>
Signed-off-by: Clément Bœsch <u@pkh.me>
2014-05-25 03:04:14 +02:00
Michael Niedermayer
d062db7880 Merge commit '21f68c2489cba2a1a4a41d0c5c828266e6162800'
* commit '21f68c2489cba2a1a4a41d0c5c828266e6162800':
  avcodec: bump version after rotation api

Conflicts:
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-23 20:48:54 +02:00
Vittorio Giovara
21f68c2489 avcodec: bump version after rotation api
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2014-05-23 17:50:38 +02:00
Michael Niedermayer
68c05185e2 Merge commit 'fd056029f45a9f6d213d9fce8165632042511d4f'
* commit 'fd056029f45a9f6d213d9fce8165632042511d4f':
  lavc: add avcodec_free_context().

Conflicts:
	doc/APIchanges
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-18 13:00:50 +02:00
Anton Khirnov
fd056029f4 lavc: add avcodec_free_context().
Right now, the caller has to manually manage some allocated
AVCodecContext fields, like extradata or subtitle_header. This is
fragile and prone to leaks, especially if we want to add more such
fields in the future.

The only reason for this behaviour is so that the AVStream codec context
can be reused for decoding. Such reuse is discouraged anyway, so this
commit is the first step to deprecating it.
2014-05-18 10:17:41 +02:00
Michael Niedermayer
2c7d3ecfc9 Merge commit 'b70d7a4ac72d23f3448f3b08b770fdf5f57de222'
* commit 'b70d7a4ac72d23f3448f3b08b770fdf5f57de222':
  lavc: add a native Opus decoder.

Conflicts:
	Changelog
	configure
	libavcodec/version.h

Fate tests pass with both avresample as well as swresample based opus decoder, but
are disabled (reference files are very large so i want to think a day or 2 about
if theres an alternative or if they could be avoided, they also dont match the
official samples)

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-15 18:20:17 +02:00
Anton Khirnov
b70d7a4ac7 lavc: add a native Opus decoder.
Initial implementation by Andrew D'Addesio <modchipv12@gmail.com> during
GSoC 2012.

Completion by Anton Khirnov <anton@khirnov.net>, sponsored by the
Mozilla Corporation.

Further contributions by:
Christophe Gisquet <christophe.gisquet@gmail.com>
Janne Grunau <janne-libav@jannau.net>
Luca Barbato <lu_zero@gentoo.org>
2014-05-15 06:49:34 +02:00
Michael Niedermayer
0aac9b76bc avcodec/libx264: Implement reference frame count limiting based on level
This makes libavcodec/libx264.c behave more similar to the x264 command line
util

Fixes Ticket3307

Implementation based on x264

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-14 02:57:10 +02:00
Michael Niedermayer
81d1fcf37d avcodec: add option to make is_intra_more_likely() from error concealment return "no"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-12 22:55:39 +02:00
Michael Niedermayer
58f4d1266b Merge commit 'ba71c74017c287681153ec8f6f1cba650d797275'
* commit 'ba71c74017c287681153ec8f6f1cba650d797275':
  lavc: deprecate AVCodecContext.codec_name

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-01 18:04:53 +02:00
Michael Niedermayer
e77b9853ea Merge commit 'a2941c8cb216bdc144953cace64973f5600ffa2d'
* commit 'a2941c8cb216bdc144953cace64973f5600ffa2d':
  lavc: move CODEC_FLAG_MV0 to mpegvideo

Conflicts:
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-01 17:03:59 +02:00
Michael Niedermayer
e40ae8cc00 Merge commit '6484149158b6fc6d13d2b2ef84cb26a2d3275400'
* commit '6484149158b6fc6d13d2b2ef84cb26a2d3275400':
  lavc: make the xvid-specific "gmc" flag a private option of libxvid

Conflicts:
	libavcodec/libxvid.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-01 16:56:40 +02:00
Michael Niedermayer
1851643987 Merge commit 'b2c31710c96fa47d9dcd40b64d39663e8957f683'
* commit 'b2c31710c96fa47d9dcd40b64d39663e8957f683':
  lavc: move CODEC_FLAG_NORMALIZE_AQP to mpegvideo

Conflicts:
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-01 16:46:38 +02:00
Michael Niedermayer
cac07d0e10 Merge commit '5fccedaa67390ccddd6347c8e1c71b7664558bcd'
* commit '5fccedaa67390ccddd6347c8e1c71b7664558bcd':
  lavc: deprecate CODEC_FLAG_INPUT_PRESERVED

Conflicts:
	doc/APIchanges

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-01 16:41:41 +02:00
Anton Khirnov
ba71c74017 lavc: deprecate AVCodecContext.codec_name
It is undocumented and has no real use.
2014-05-01 09:31:32 +02:00
Anton Khirnov
a2941c8cb2 lavc: move CODEC_FLAG_MV0 to mpegvideo 2014-05-01 09:24:18 +02:00
Anton Khirnov
6484149158 lavc: make the xvid-specific "gmc" flag a private option of libxvid 2014-05-01 09:24:02 +02:00
Anton Khirnov
b2c31710c9 lavc: move CODEC_FLAG_NORMALIZE_AQP to mpegvideo 2014-05-01 09:23:19 +02:00
Anton Khirnov
5fccedaa67 lavc: deprecate CODEC_FLAG_INPUT_PRESERVED
The addition of reference-counted frames makes it pointless.
2014-05-01 09:22:47 +02:00
Nicolas George
70beebe357 lavc: minor bump and APIchanges for AVCodecDescriptor.mime_types.
The minor bump also covers AV_CODEC_ID_BIN_DATA.
2014-04-29 13:25:52 +02:00
Michael Niedermayer
0f630b7b12 Merge commit 'ed4b757177f9b563412cdbc8ee3405d82e10fc05'
* commit 'ed4b757177f9b563412cdbc8ee3405d82e10fc05':
  dxva2_h264: add a workaround for old Intel GPUs

Conflicts:
	doc/APIchanges
	libavcodec/version.h

See: 8b2a130d3f
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-29 00:52:05 +02:00
Hendrik Leppkes
ed4b757177 dxva2_h264: add a workaround for old Intel GPUs
Old Intel GPUs expect the reference frame index to the actual surface,
instead of the index into RefFrameList as specified by the spec.

This workaround should be set when using one of the "ClearVideo" decoder
devices.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-04-28 20:21:59 +02:00
Michael Niedermayer
56efd98a65 Merge commit 'e2834567d73bd1e46478ba67ac133cb8ef5f50fd'
* commit 'e2834567d73bd1e46478ba67ac133cb8ef5f50fd':
  On2 AVC decoder

Conflicts:
	Changelog
	configure
	libavcodec/avcodec.h
	libavcodec/codec_desc.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-23 20:47:13 +02:00
Kostya Shishkov
e2834567d7 On2 AVC decoder 2014-04-23 19:57:44 +02:00
Michael Niedermayer
0c67ef2729 Merge commit '86a0432688216562926d4aee36118f01be6d5e1b'
* commit '86a0432688216562926d4aee36118f01be6d5e1b':
  Silicon Graphics Motion Video Compressor 1 & 2 decoder

Conflicts:
	Changelog
	libavcodec/avcodec.h
	libavcodec/mvcdec.c
	libavcodec/version.h

See: 746b1dcc98
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-19 19:47:58 +02:00
Michael Niedermayer
e37dbfddda Merge commit '07761294fc3f08e139e8a406ef7d5b63aaf1ecee'
* commit '07761294fc3f08e139e8a406ef7d5b63aaf1ecee':
  Silicon Graphics RLE 8-bit video decoder

Conflicts:
	Changelog
	doc/general.texi
	libavcodec/avcodec.h
	libavcodec/sgirledec.c
	libavcodec/version.h

See: afa1617b93
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-19 19:26:46 +02:00
Peter Ross
86a0432688 Silicon Graphics Motion Video Compressor 1 & 2 decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-19 16:24:26 +02:00
Peter Ross
07761294fc Silicon Graphics RLE 8-bit video decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-19 16:24:26 +02:00
Michael Niedermayer
6c019f05ed Merge commit '718907cd881a0b593264aed059c0e00da13f9e15'
* commit '718907cd881a0b593264aed059c0e00da13f9e15':
  libtwolame MP2 encoding support

Conflicts:
	Changelog
	configure
	doc/general.texi
	libavcodec/Makefile
	libavcodec/libtwolame.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-09 02:17:56 +02:00
Paul B Mahol
718907cd88 libtwolame MP2 encoding support
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-07 23:50:33 +02:00
Michael Niedermayer
a7a82f2f22 Merge commit 'c389a804943095ebf078daec6b64690d2c97069c'
* commit 'c389a804943095ebf078daec6b64690d2c97069c':
  libxvid: Add SSIM displaying through a libxvidcore plugin

Conflicts:
	libavcodec/libxvid.c
	libavcodec/version.h

See: 3b3c1ed076
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-07 03:20:23 +02:00
Michael Niedermayer
072278c777 Merge commit '5ce7ca68b86856ee8e9d6530dffdadc4eca4f8d1'
* commit '5ce7ca68b86856ee8e9d6530dffdadc4eca4f8d1':
  libxvid: add working lumimasking and variance AQ

Conflicts:
	libavcodec/libxvid.c
	libavcodec/version.h

See: ccb212b6c3
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-07 03:08:25 +02:00
Timothy Gu
c389a80494 libxvid: Add SSIM displaying through a libxvidcore plugin
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-06 23:23:13 +02:00
Timothy Gu
5ce7ca68b8 libxvid: add working lumimasking and variance AQ
The old implementation is unusable due to changes in the Xvid API.
Further fixes by Michael Niedermayer <michaelni@gmx.at>.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-06 23:23:13 +02:00
Michael Niedermayer
787be6d074 Merge commit '6f273093e54cba130f3ffde3d6433e74baa4ad89'
* commit '6f273093e54cba130f3ffde3d6433e74baa4ad89':
  LucasArts SMUSH VIMA audio decoder

Conflicts:
	Changelog
	libavcodec/avcodec.h
	libavcodec/codec_desc.c
	libavcodec/version.h
	libavcodec/vima.c

This commit adds a AV_CODEC_ID_ADPCM_VIMA alias in addition to the previously
used AV_CODEC_ID_VIMA, as well as a AVCodec with name "adpcm_vima" in addition
to the previously used name "vima"
These changes are needed for compatibility with the renamed codec in libav

See: b18357326c and others

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-06 23:14:23 +02:00
Michael Niedermayer
881f4e8d34 Merge commit 'a420ccd4f2a011887451a7d5e1bebba4fd7c40e2'
* commit 'a420ccd4f2a011887451a7d5e1bebba4fd7c40e2':
  LucasArts SMUSH SANM video decoder

Conflicts:
	Changelog
	doc/general.texi
	libavcodec/Makefile
	libavcodec/allcodecs.c
	libavcodec/avcodec.h
	libavcodec/sanm.c
	libavcodec/version.h

See: 69254f4628 and others
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-06 22:19:16 +02:00
Paul B Mahol
6f273093e5 LucasArts SMUSH VIMA audio decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-06 16:41:39 +02:00
Paul B Mahol
a420ccd4f2 LucasArts SMUSH SANM video decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-06 16:40:27 +02:00