OSDN Git Service
Michael Niedermayer [Sat, 16 Nov 2013 23:11:33 +0000 (00:11 +0100)]
Merge commit '
6139f481ac9feb1bee4e7d04789fb15d7f24ebbf'
* commit '
6139f481ac9feb1bee4e7d04789fb15d7f24ebbf':
asvenc: use the AVFrame API properly.
a64multienc: use the AVFrame API properly.
Conflicts:
libavcodec/vaapi_mpeg.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 16 Nov 2013 23:00:55 +0000 (00:00 +0100)]
Merge commit '
b9fb59d2ab05fdfe89d3fb0d7ecbbd91e560f57d'
* commit '
b9fb59d2ab05fdfe89d3fb0d7ecbbd91e560f57d':
lavc: deprecate avcodec_alloc_frame().
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 16 Nov 2013 22:48:16 +0000 (23:48 +0100)]
Merge commit '
5b9c3b4505206143d85398c1410949319fa1180f'
* commit '
5b9c3b4505206143d85398c1410949319fa1180f':
Replace all instances of avcodec_alloc_frame() with av_frame_alloc().
Conflicts:
doc/examples/decoding_encoding.c
doc/examples/muxing.c
ffmpeg.c
libavcodec/alacenc.c
libavcodec/libopenjpegenc.c
libavcodec/libvpxenc.c
libavcodec/pcm.c
libavcodec/xbmenc.c
libavcodec/xwdenc.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 16 Nov 2013 22:42:08 +0000 (23:42 +0100)]
Merge commit '
2ff302cb6ba1f159905888026c8a1d7dd8319acf'
* commit '
2ff302cb6ba1f159905888026c8a1d7dd8319acf':
lavc: update coded_frame doxy.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 16 Nov 2013 22:36:33 +0000 (23:36 +0100)]
Merge commit '
b068660ffa73f226cc03a67e214b8540fc1e11c4'
* commit '
b068660ffa73f226cc03a67e214b8540fc1e11c4':
lavc: deprecate CODEC_CAP_NEG_LINESIZES
Conflicts:
libavcodec/avcodec.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Clément Bœsch [Sat, 16 Nov 2013 21:47:32 +0000 (22:47 +0100)]
avcodec/vp9: assert on sane size in update_size().
w and h are both read as uint16 + 1 so this can not happen. A similar
change was introduced in
97962b2 /
72ca830, with the
av_log()+AVERROR_INVALIDDATA form, suggesting it could be triggerable
somehow.
Change suggested by Ronald S. Bultje.
Clément Bœsch [Sat, 16 Nov 2013 20:22:06 +0000 (21:22 +0100)]
avcodec/vp9: remove some reset-to-zero from vp9_decode_free().
Those should not be necessary.
Original change by one of these developers:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>
See
97962b2 /
72ca830
Clément Bœsch [Sat, 16 Nov 2013 20:18:53 +0000 (21:18 +0100)]
avcodec/vp9: add a never triggerable assert.
vp8_rac_get_tree() is called with a tree of size 3, so the returned
value can not be outside [0;3]. All of the [0;3] cases are handled in
the switch, so the assert should not be triggerable by any means. A
similar change was introduced in
97962b2 /
72ca830, with the
av_log()+AVERROR_INVALIDDATA form, suggesting it could be triggerable
somehow. This assert might help static analyzer, or simply the reader.
Michael Niedermayer [Sat, 16 Nov 2013 20:47:50 +0000 (21:47 +0100)]
Merge remote-tracking branch 'cus/stable'
* cus/stable:
ffplay: calculate last frame duration from vp->pts instead of frame_last_pts
ffplay: simplify early frame drop code
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Sat, 16 Nov 2013 19:34:05 +0000 (20:34 +0100)]
swscale/swscale_unscaled: fix right column handling in planarCopyWrapper
Found-by: Михаил <Micky53@mail.ru>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Martin Storsjö [Mon, 11 Nov 2013 13:02:09 +0000 (15:02 +0200)]
vp9: Ensure that the arithmetic coder values are read in the right order
The operands of an addition can be evaluated in any order, since
the addition isn't a sequence point. The only operators that
have a defined evaluation order are &&, ||, ?: and the sequence
operator ','.
This fixes fate-vp9 on ARM RVCT.
Clément Bœsch [Fri, 15 Nov 2013 23:11:24 +0000 (00:11 +0100)]
avcodec/vp9: make last_invisible local.
Original change by one of these developers:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>
See
97962b2 /
72ca830
Clément Bœsch [Sat, 16 Nov 2013 15:58:13 +0000 (16:58 +0100)]
avcodec/x86/vp9dsp: use EXTERNAL_* macros.
Original fix by one of these developers:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>
See
97962b2 /
72ca830
Personnal guess is Diego Biurrun.
Marton Balint [Sat, 2 Feb 2013 11:37:29 +0000 (12:37 +0100)]
ffplay: calculate last frame duration from vp->pts instead of frame_last_pts
Also do not update current pts on dropped frames, it is no longer necessary.
Fixes regression part of ticket #2507.
Signed-off-by: Marton Balint <cus@passwd.hu>
Marton Balint [Sat, 25 May 2013 19:51:35 +0000 (21:51 +0200)]
ffplay: simplify early frame drop code
Also never early frame drop the first frame after a flush.
Signed-off-by: Marton Balint <cus@passwd.hu>
Michael Niedermayer [Thu, 14 Nov 2013 00:21:20 +0000 (01:21 +0100)]
ffmpeg: Do not fill gap before the first decodable frame on single stream input files unless the user explicitly requests it.
Fixes different behavior to JM and probably several if not all
reference decoders.
We cannot just do this unconditionally as it would ruin AV sync in
some use cases.
Bug-Found-by: BugMaster
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Anton Khirnov [Sat, 9 Nov 2013 09:14:46 +0000 (10:14 +0100)]
asvenc: use the AVFrame API properly.
Anton Khirnov [Sat, 9 Nov 2013 09:14:46 +0000 (10:14 +0100)]
a64multienc: use the AVFrame API properly.
Anton Khirnov [Sat, 9 Nov 2013 09:09:21 +0000 (10:09 +0100)]
lavc: deprecate avcodec_alloc_frame().
Anton Khirnov [Sat, 9 Nov 2013 09:05:22 +0000 (10:05 +0100)]
Replace all instances of avcodec_alloc_frame() with av_frame_alloc().
Anton Khirnov [Mon, 4 Nov 2013 11:56:21 +0000 (12:56 +0100)]
lavc: update coded_frame doxy.
It is not used during decoding anymore.
Anton Khirnov [Mon, 4 Nov 2013 11:07:24 +0000 (12:07 +0100)]
lavc: deprecate CODEC_CAP_NEG_LINESIZES
It was never used in any codec since it was added 3 years ago.
Byte [Fri, 15 Nov 2013 17:33:43 +0000 (00:33 +0700)]
avformat/rtmphttp: Partial fix for the ticket #3127 (second try)
Reviewed-by: Lukasz M <lukasz.m.luki@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
wangxingchao [Fri, 15 Nov 2013 07:42:46 +0000 (15:42 +0800)]
avcodec: Fix duration error after seek operation
After seek, s->duration need recalculation, AVCodecParserContext need be set
again. Without the fix, the first audio packet would be dropped after
compute_pkt_fields() as the final pts/dts become invalid.
Signed-off-by: wangxingchao <wangxingchao@xiaomi.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Jan Gerber [Sat, 16 Nov 2013 00:12:20 +0000 (01:12 +0100)]
lavf/matroskadec ReferenceBlock is a signed integer
according to the Matroska Specification
ReferenceBlock is a signed integer too.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Jan Gerber [Thu, 14 Nov 2013 11:58:28 +0000 (12:58 +0100)]
lavf/matroska*: DiscardPadding is a signed integer
according to the Matriska Specification
http://matroska.org/technical/specs/index.html
DiscardPadding is a signed integer.
Tested-by: Jan Gerber <j@v2v.cc>
Tested-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Clément Bœsch [Fri, 15 Nov 2013 22:26:45 +0000 (23:26 +0100)]
avcodec/vp9: fix "initialize" typo.
Originally spotted and fixed by one of these developers:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>
See
97962b2 /
72ca830
Michael Niedermayer [Fri, 15 Nov 2013 20:30:30 +0000 (21:30 +0100)]
avformat/matroska: simplify signed int access code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Jan Gerber [Fri, 15 Nov 2013 18:00:37 +0000 (19:00 +0100)]
lavf/matroska*: add support for signed integers
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Compn [Fri, 15 Nov 2013 14:45:08 +0000 (09:45 -0500)]
riff: add G264 to mpeg4, only decodes keyframes
Michael Niedermayer [Fri, 15 Nov 2013 14:22:40 +0000 (15:22 +0100)]
Merge remote-tracking branch 'qatar/master'
* qatar/master:
lavc: VP9 decoder
Conflicts:
Changelog
doc/general.texi
libavcodec/Makefile
libavcodec/version.h
libavcodec/vp9.c
libavcodec/vp9.h
libavcodec/vp9data.h
libavcodec/vp9dsp.c
libavcodec/x86/Makefile
libavcodec/x86/vp9dsp.asm
libavcodec/x86/vp9dsp_init.c
tests/fate/vpx.mak
tests/ref/fate/vp9-00-quantizer-00
tests/ref/fate/vp9-00-quantizer-01
tests/ref/fate/vp9-00-quantizer-02
tests/ref/fate/vp9-00-quantizer-03
tests/ref/fate/vp9-00-quantizer-04
tests/ref/fate/vp9-00-quantizer-05
tests/ref/fate/vp9-00-quantizer-06
tests/ref/fate/vp9-00-quantizer-07
tests/ref/fate/vp9-00-quantizer-08
tests/ref/fate/vp9-00-quantizer-09
tests/ref/fate/vp9-00-quantizer-10
tests/ref/fate/vp9-00-quantizer-11
tests/ref/fate/vp9-00-quantizer-12
tests/ref/fate/vp9-00-quantizer-13
tests/ref/fate/vp9-00-quantizer-14
tests/ref/fate/vp9-00-quantizer-15
tests/ref/fate/vp9-00-quantizer-16
tests/ref/fate/vp9-00-quantizer-17
tests/ref/fate/vp9-00-quantizer-18
tests/ref/fate/vp9-00-quantizer-19
tests/ref/fate/vp9-00-quantizer-20
tests/ref/fate/vp9-00-quantizer-21
tests/ref/fate/vp9-00-quantizer-22
tests/ref/fate/vp9-00-quantizer-23
tests/ref/fate/vp9-00-quantizer-24
tests/ref/fate/vp9-00-quantizer-25
tests/ref/fate/vp9-00-quantizer-26
tests/ref/fate/vp9-00-quantizer-27
tests/ref/fate/vp9-00-quantizer-28
tests/ref/fate/vp9-00-quantizer-29
tests/ref/fate/vp9-00-quantizer-30
tests/ref/fate/vp9-00-quantizer-31
tests/ref/fate/vp9-00-quantizer-32
tests/ref/fate/vp9-00-quantizer-33
tests/ref/fate/vp9-00-quantizer-34
tests/ref/fate/vp9-00-quantizer-35
tests/ref/fate/vp9-00-quantizer-36
tests/ref/fate/vp9-00-quantizer-37
tests/ref/fate/vp9-00-quantizer-38
tests/ref/fate/vp9-00-quantizer-39
tests/ref/fate/vp9-00-quantizer-40
tests/ref/fate/vp9-00-quantizer-41
tests/ref/fate/vp9-00-quantizer-42
tests/ref/fate/vp9-00-quantizer-43
tests/ref/fate/vp9-00-quantizer-44
tests/ref/fate/vp9-00-quantizer-45
tests/ref/fate/vp9-00-quantizer-46
tests/ref/fate/vp9-00-quantizer-47
tests/ref/fate/vp9-00-quantizer-48
tests/ref/fate/vp9-00-quantizer-49
tests/ref/fate/vp9-00-quantizer-50
tests/ref/fate/vp9-00-quantizer-51
tests/ref/fate/vp9-00-quantizer-52
tests/ref/fate/vp9-00-quantizer-53
tests/ref/fate/vp9-00-quantizer-54
tests/ref/fate/vp9-00-quantizer-55
tests/ref/fate/vp9-00-quantizer-56
tests/ref/fate/vp9-00-quantizer-57
tests/ref/fate/vp9-00-quantizer-58
tests/ref/fate/vp9-00-quantizer-59
tests/ref/fate/vp9-00-quantizer-60
tests/ref/fate/vp9-00-quantizer-61
tests/ref/fate/vp9-00-quantizer-62
tests/ref/fate/vp9-00-quantizer-63
tests/ref/fate/vp9-01-sharpness-1
tests/ref/fate/vp9-01-sharpness-2
tests/ref/fate/vp9-01-sharpness-3
tests/ref/fate/vp9-01-sharpness-4
tests/ref/fate/vp9-01-sharpness-5
tests/ref/fate/vp9-01-sharpness-6
tests/ref/fate/vp9-01-sharpness-7
tests/ref/fate/vp9-02-size-08x08
tests/ref/fate/vp9-02-size-08x10
tests/ref/fate/vp9-02-size-08x16
tests/ref/fate/vp9-02-size-08x18
tests/ref/fate/vp9-02-size-08x32
tests/ref/fate/vp9-02-size-08x34
tests/ref/fate/vp9-02-size-08x64
tests/ref/fate/vp9-02-size-08x66
tests/ref/fate/vp9-02-size-10x08
tests/ref/fate/vp9-02-size-10x10
tests/ref/fate/vp9-02-size-10x16
tests/ref/fate/vp9-02-size-10x18
tests/ref/fate/vp9-02-size-10x32
tests/ref/fate/vp9-02-size-10x34
tests/ref/fate/vp9-02-size-10x64
tests/ref/fate/vp9-02-size-10x66
tests/ref/fate/vp9-02-size-16x08
tests/ref/fate/vp9-02-size-16x10
tests/ref/fate/vp9-02-size-16x16
tests/ref/fate/vp9-02-size-16x18
tests/ref/fate/vp9-02-size-16x32
tests/ref/fate/vp9-02-size-16x34
tests/ref/fate/vp9-02-size-16x64
tests/ref/fate/vp9-02-size-16x66
tests/ref/fate/vp9-02-size-18x08
tests/ref/fate/vp9-02-size-18x10
tests/ref/fate/vp9-02-size-18x16
tests/ref/fate/vp9-02-size-18x18
tests/ref/fate/vp9-02-size-18x32
tests/ref/fate/vp9-02-size-18x34
tests/ref/fate/vp9-02-size-18x64
tests/ref/fate/vp9-02-size-18x66
tests/ref/fate/vp9-02-size-32x08
tests/ref/fate/vp9-02-size-32x10
tests/ref/fate/vp9-02-size-32x16
tests/ref/fate/vp9-02-size-32x18
tests/ref/fate/vp9-02-size-32x32
tests/ref/fate/vp9-02-size-32x34
tests/ref/fate/vp9-02-size-32x64
tests/ref/fate/vp9-02-size-32x66
tests/ref/fate/vp9-02-size-34x08
tests/ref/fate/vp9-02-size-34x10
tests/ref/fate/vp9-02-size-34x16
tests/ref/fate/vp9-02-size-34x18
tests/ref/fate/vp9-02-size-34x32
tests/ref/fate/vp9-02-size-34x34
tests/ref/fate/vp9-02-size-34x64
tests/ref/fate/vp9-02-size-34x66
tests/ref/fate/vp9-02-size-64x08
tests/ref/fate/vp9-02-size-64x10
tests/ref/fate/vp9-02-size-64x16
tests/ref/fate/vp9-02-size-64x18
tests/ref/fate/vp9-02-size-64x32
tests/ref/fate/vp9-02-size-64x34
tests/ref/fate/vp9-02-size-64x64
tests/ref/fate/vp9-02-size-64x66
tests/ref/fate/vp9-02-size-66x08
tests/ref/fate/vp9-02-size-66x10
tests/ref/fate/vp9-02-size-66x16
tests/ref/fate/vp9-02-size-66x18
tests/ref/fate/vp9-02-size-66x32
tests/ref/fate/vp9-02-size-66x34
tests/ref/fate/vp9-02-size-66x64
tests/ref/fate/vp9-02-size-66x66
tests/ref/fate/vp9-03-deltaq
tests/ref/fate/vp9-03-size-196x196
tests/ref/fate/vp9-03-size-196x198
tests/ref/fate/vp9-03-size-196x200
tests/ref/fate/vp9-03-size-196x202
tests/ref/fate/vp9-03-size-196x208
tests/ref/fate/vp9-03-size-196x210
tests/ref/fate/vp9-03-size-196x224
tests/ref/fate/vp9-03-size-196x226
tests/ref/fate/vp9-03-size-198x196
tests/ref/fate/vp9-03-size-198x198
tests/ref/fate/vp9-03-size-198x200
tests/ref/fate/vp9-03-size-198x202
tests/ref/fate/vp9-03-size-198x208
tests/ref/fate/vp9-03-size-198x210
tests/ref/fate/vp9-03-size-198x224
tests/ref/fate/vp9-03-size-198x226
tests/ref/fate/vp9-03-size-200x196
tests/ref/fate/vp9-03-size-200x198
tests/ref/fate/vp9-03-size-200x200
tests/ref/fate/vp9-03-size-200x202
tests/ref/fate/vp9-03-size-200x208
tests/ref/fate/vp9-03-size-200x210
tests/ref/fate/vp9-03-size-200x224
tests/ref/fate/vp9-03-size-200x226
tests/ref/fate/vp9-03-size-202x196
tests/ref/fate/vp9-03-size-202x198
tests/ref/fate/vp9-03-size-202x200
tests/ref/fate/vp9-03-size-202x202
tests/ref/fate/vp9-03-size-202x208
tests/ref/fate/vp9-03-size-202x210
tests/ref/fate/vp9-03-size-202x224
tests/ref/fate/vp9-03-size-202x226
tests/ref/fate/vp9-03-size-208x196
tests/ref/fate/vp9-03-size-208x198
tests/ref/fate/vp9-03-size-208x200
tests/ref/fate/vp9-03-size-208x202
tests/ref/fate/vp9-03-size-208x208
tests/ref/fate/vp9-03-size-208x210
tests/ref/fate/vp9-03-size-208x224
tests/ref/fate/vp9-03-size-208x226
tests/ref/fate/vp9-03-size-210x196
tests/ref/fate/vp9-03-size-210x198
tests/ref/fate/vp9-03-size-210x200
tests/ref/fate/vp9-03-size-210x202
tests/ref/fate/vp9-03-size-210x208
tests/ref/fate/vp9-03-size-210x210
tests/ref/fate/vp9-03-size-210x224
tests/ref/fate/vp9-03-size-210x226
tests/ref/fate/vp9-03-size-224x196
tests/ref/fate/vp9-03-size-224x198
tests/ref/fate/vp9-03-size-224x200
tests/ref/fate/vp9-03-size-224x202
tests/ref/fate/vp9-03-size-224x208
tests/ref/fate/vp9-03-size-224x210
tests/ref/fate/vp9-03-size-224x224
tests/ref/fate/vp9-03-size-224x226
tests/ref/fate/vp9-03-size-226x196
tests/ref/fate/vp9-03-size-226x198
tests/ref/fate/vp9-03-size-226x200
tests/ref/fate/vp9-03-size-226x202
tests/ref/fate/vp9-03-size-226x208
tests/ref/fate/vp9-03-size-226x210
tests/ref/fate/vp9-03-size-226x224
tests/ref/fate/vp9-03-size-226x226
tests/ref/fate/vp9-2pass-akiyo
tests/ref/fate/vp9-segmentation-akiyo
tests/ref/fate/vp9-tiling-pedestrian
Not merged at the request of the authors and maintainers
"<ubitux> we have a lot of fixes they don't have, as well as optim actually"
See:
848826f527bcf9927a539f7808d1d7c08f57193b
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 15 Nov 2013 12:56:05 +0000 (13:56 +0100)]
Merge commit '
458446acfa1441d283dacf9e6e545beb083b8bb0'
* commit '
458446acfa1441d283dacf9e6e545beb083b8bb0':
lavc: Edge emulation with dst/src linesize
Conflicts:
libavcodec/cavs.c
libavcodec/h264.c
libavcodec/hevc.c
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_motion.c
libavcodec/rv34.c
libavcodec/svq3.c
libavcodec/vc1dec.c
libavcodec/videodsp.h
libavcodec/videodsp_template.c
libavcodec/vp3.c
libavcodec/vp8.c
libavcodec/wmv2.c
libavcodec/x86/videodsp.asm
libavcodec/x86/videodsp_init.c
Changes to the asm are not merged, they are left for volunteers or
in their absence for later.
The changes this merge introduces are reordering of the function
arguments
See:
face578d56c2d1375e40d5e2a28acc122132bc55
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 15 Nov 2013 11:32:37 +0000 (12:32 +0100)]
Merge commit '
3cbe1126530449336e2ce59b194bdb8c4eb4abb4'
* commit '
3cbe1126530449336e2ce59b194bdb8c4eb4abb4':
dv: Split DV data table declarations into their own header
Conflicts:
libavcodec/dvdata.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Fri, 15 Nov 2013 11:19:23 +0000 (12:19 +0100)]
Merge commit '
e8fcdebb17fc59375fd9fc6c0a02a1d2e6d9fb23'
* commit '
e8fcdebb17fc59375fd9fc6c0a02a1d2e6d9fb23':
build: Allow specifying extra object files when linking HOSTPROGS
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Alex Sukhanov [Fri, 15 Nov 2013 01:56:36 +0000 (17:56 -0800)]
af_aresample: Fix timestamp of first padded PCM audio packet
Problem:
ffmpeg generated video file which had two audio packets with the same timestamp: last original audio packet and first padded audio packet.
Timestamp of first added audio packet by 'apad' fitler had the same value as last original audio packet. The problem was in 'aresample' fitler, which used next pts instead of current one.
As long as 'apad' and 'aresample' filters have separate mechanisms of timestamp calculation, they got the same values.
Command line:
ffmpeg -i <input_filename> -shortest -apad 512 -af asetnsamples=n=512 -b:a
1058400 -ac 1 -ar 44100 -async 0 -acodec pcm_s16le -sn -f matroska -y <output_file>
Fix:
Call swr_next_pts() function before swr_convert()
Tested:
FATE tests passed.
Fix has been tested in our Transcoder regression framework on ~10k test videos. It's about ~500k transcodes.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Ronald S. Bultje [Tue, 1 Oct 2013 03:03:30 +0000 (23:03 -0400)]
lavc: VP9 decoder
Originally written by Ronald S. Bultje <rsbultje@gmail.com> and
Clément Bœsch <u@pkh.me>
Further contributions by:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Ronald S. Bultje [Mon, 14 Oct 2013 01:13:10 +0000 (03:13 +0200)]
lavc: Edge emulation with dst/src linesize
Allow supporting files for which the image stride is smaller than
the maximum block size + number of subpel mc taps, e.g. a 64x64 VP9
file or a 16x16 VP8 file with -fflags +emu_edge.
Lukasz Marek [Wed, 13 Nov 2013 22:40:47 +0000 (23:40 +0100)]
lavd/xv: free resources on errors
xv_write_header callback leave not freed resources on errors.
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
Lukasz Marek [Wed, 13 Nov 2013 22:40:46 +0000 (23:40 +0100)]
lavd/xv: add more supported formats
Add support for following pixel formats:
- AV_PIX_FMT_UYVY422
- AV_PIX_FMT_YUYV422
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
Lukasz Marek [Thu, 14 Nov 2013 20:17:00 +0000 (21:17 +0100)]
lavd/xv: simplify write_packet
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
Diego Biurrun [Sun, 10 Nov 2013 17:05:39 +0000 (18:05 +0100)]
dv: Split DV data table declarations into their own header
This is necessary to avoid target config settings bleeding into the host
compilation process with hardcoded tables and the DV VLC tables no longer
present as static tables in a header file.
Diego Biurrun [Sun, 10 Nov 2013 21:19:07 +0000 (22:19 +0100)]
build: Allow specifying extra object files when linking HOSTPROGS
Michael Niedermayer [Thu, 14 Nov 2013 20:11:21 +0000 (21:11 +0100)]
Merge remote-tracking branch 'qatar/master'
* qatar/master:
h264: free the tables and uninitialize the context on flush
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 19:56:44 +0000 (20:56 +0100)]
Merge commit '
ecf442a58b09bdb1dc1d2c3904b82ac5f79b2878'
* commit '
ecf442a58b09bdb1dc1d2c3904b82ac5f79b2878':
lavf: improve support for AVC-Intra files.
Conflicts:
libavformat/internal.h
libavformat/isom.c
libavformat/mxfdec.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 19:21:20 +0000 (20:21 +0100)]
Merge commit '
951d819006730145255333749367c4ea722ffd9b'
* commit '
951d819006730145255333749367c4ea722ffd9b':
mxfdec: update current edit unit when seeking in mxf files without index tables
See:
f1e606c762a33e19c5181f3c11f47c7ecd7cbb21
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Anton Khirnov [Mon, 4 Nov 2013 16:59:25 +0000 (17:59 +0100)]
h264: free the tables and uninitialize the context on flush
Prevents referencing empty frames when the first packet after the flush
does not contain a frame.
Reimar Döffinger [Wed, 26 Sep 2012 10:13:53 +0000 (12:13 +0200)]
lavf: improve support for AVC-Intra files.
Generate extradata with SPS/PPS based on container dimensions.
Authors of this commit are: Reimar and Thomas Mundt
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Marton Balint [Wed, 10 Apr 2013 23:09:40 +0000 (01:09 +0200)]
mxfdec: update current edit unit when seeking in mxf files without index tables
Fixes audio packet pts values in some files generated by AVID TRMG 3.01.
Signed-off-by: Marton Balint <cus@passwd.hu>
Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Michael Niedermayer [Thu, 14 Nov 2013 15:15:21 +0000 (16:15 +0100)]
Merge remote-tracking branch 'qatar/master'
* qatar/master:
mpeg12dec: Remove outdated UV swapping code for VCR2
Not merged as this change would likely break VCR2 with XVMC
The code can be removed when / in case XVMC is removed
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 15:01:57 +0000 (16:01 +0100)]
Merge commit '
669fe505952f3d8175b1ad6971033a8e8120523b'
* commit '
669fe505952f3d8175b1ad6971033a8e8120523b':
twinvq: consume block_align+1 packets as full ones
Conflicts:
libavcodec/twinvq.c
See:
2e7a1fdd6d51aec59931ce7b278b12faa66f98fd
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 14:42:05 +0000 (15:42 +0100)]
Merge commit '
1afa8a7568ba57ad0cd2923f6e641e10d32cded4'
* commit '
1afa8a7568ba57ad0cd2923f6e641e10d32cded4':
twinvq: support multiple frames per packet
Conflicts:
libavcodec/twinvq.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 14:31:00 +0000 (15:31 +0100)]
Merge commit '
ddb839e9286594ff7a862a956402106fca7055c9'
* commit '
ddb839e9286594ff7a862a956402106fca7055c9':
metasound: add missing modes
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 14:24:21 +0000 (15:24 +0100)]
Merge commit '
7b9780e7bf9d86e3e4e9606a971bb2d0d718bac2'
* commit '
7b9780e7bf9d86e3e4e9606a971bb2d0d718bac2':
mpeg12dec: Remove unused swap_uv member from Mpeg1Context
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 14:04:04 +0000 (15:04 +0100)]
Merge commit '
cce3e0a49f0dd030262c28d9c53de0bd2fd909c4'
* commit '
cce3e0a49f0dd030262c28d9c53de0bd2fd909c4':
Move av_fast_{m,re}alloc from lavc to lavu.
Conflicts:
libavcodec/avcodec.h
libavcodec/utils.c
libavutil/mem.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diego Biurrun [Wed, 13 Nov 2013 17:44:25 +0000 (18:44 +0100)]
mpeg12dec: Remove outdated UV swapping code for VCR2
Michael Niedermayer [Thu, 14 Nov 2013 13:19:38 +0000 (14:19 +0100)]
avcodec/mpegvideo_enc: Fix possibly exploitable security issue with -bf
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 13:03:20 +0000 (14:03 +0100)]
Merge commit '
aa241229891173b0357eee04e6ca78f806cc9c0c'
* commit '
aa241229891173b0357eee04e6ca78f806cc9c0c':
lavc: deprecate FF_MAX_B_FRAMES
Conflicts:
libavcodec/options_table.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 12:49:31 +0000 (13:49 +0100)]
Merge commit '
b6094811f9fca66cdf853420696e96fdc3e4987a'
* commit '
b6094811f9fca66cdf853420696e96fdc3e4987a':
lavc: move MB_TYPE_* macros from avcodec.h to mpegvideo.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 12:27:49 +0000 (13:27 +0100)]
Merge commit '
b45c87083de67969c1598cfef41e7c947b137922'
* commit '
b45c87083de67969c1598cfef41e7c947b137922':
lavc: schedule unused FF_QSCALE_TYPE_* for removal on next bump
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Kostya Shishkov [Sun, 20 Oct 2013 14:30:54 +0000 (16:30 +0200)]
twinvq: consume block_align+1 packets as full ones
They can be produced by VQF.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Kostya Shishkov [Sun, 20 Oct 2013 14:15:03 +0000 (16:15 +0200)]
twinvq: support multiple frames per packet
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Kostya Shishkov [Thu, 29 Aug 2013 17:24:23 +0000 (19:24 +0200)]
metasound: add missing modes
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Michael Niedermayer [Thu, 14 Nov 2013 12:14:41 +0000 (13:14 +0100)]
Merge commit '
8941971a8f2e24b9a84fe29f128d13ceb89c0a65'
* commit '
8941971a8f2e24b9a84fe29f128d13ceb89c0a65':
lavc: make error_rate a private option of mpegvideo encoders
Conflicts:
libavcodec/options_table.h
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 12:08:36 +0000 (13:08 +0100)]
Merge commit '
728c4658563dc82115ade0f1679679eddb7be5ff'
* commit '
728c4658563dc82115ade0f1679679eddb7be5ff':
vdpau: add a constructor for AVVDPAUContext.
Conflicts:
libavcodec/vdpau.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 12:00:10 +0000 (13:00 +0100)]
Merge commit '
ca22d1dea2842fca0422dd1d2bd09e7eb2c8f118'
* commit '
ca22d1dea2842fca0422dd1d2bd09e7eb2c8f118':
vdpau: add a convenience function for getting a decoder profile.
Conflicts:
doc/APIchanges
libavcodec/vdpau.c
libavcodec/vdpau.h
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Tue, 5 Nov 2013 10:21:14 +0000 (11:21 +0100)]
avcodec/vdpau: try to fix version macro use
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diego Biurrun [Wed, 13 Nov 2013 17:44:24 +0000 (18:44 +0100)]
mpeg12dec: Remove unused swap_uv member from Mpeg1Context
Michael Niedermayer [Thu, 14 Nov 2013 10:27:45 +0000 (11:27 +0100)]
h264: Do not treat the initial frame special in handling of frame gaps
The not handling of frame gaps has lead to the lack of a dummy reference
frame, which has lead to the failure of decode_slice_header() which has
lead to one SEI recovery message being skiped which had introduced a
slightly suboptimal recovery point for at least 1 h264 file compared to
JM.
Found-by: Carl & BugMaster
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Timothy Gu [Sat, 9 Nov 2013 23:36:41 +0000 (15:36 -0800)]
doc: remove avutil.txt
No useful contents. Also hard to keep up-to-date.
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
Timothy Gu [Thu, 14 Nov 2013 02:56:03 +0000 (18:56 -0800)]
doc/libavutil: add things from avutil.txt
Many minor fixes from: Stefano Sabatini <stefasab@gmail.com>.
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
Anton Khirnov [Sun, 27 Oct 2013 21:21:59 +0000 (22:21 +0100)]
Move av_fast_{m,re}alloc from lavc to lavu.
Anton Khirnov [Sun, 27 Oct 2013 15:46:01 +0000 (16:46 +0100)]
lavc: deprecate FF_MAX_B_FRAMES
We should not arbitrarily decide the maximum B-frame number for all
encoders supported by Libav, each encoder should be able to set its own
limits.
Anton Khirnov [Sun, 27 Oct 2013 15:35:32 +0000 (16:35 +0100)]
lavc: move MB_TYPE_* macros from avcodec.h to mpegvideo.h
They are mpegvideo-specific and not supposed to be used by callers.
Anton Khirnov [Sun, 27 Oct 2013 15:30:38 +0000 (16:30 +0100)]
lavc: schedule unused FF_QSCALE_TYPE_* for removal on next bump
Anton Khirnov [Sun, 27 Oct 2013 12:51:16 +0000 (13:51 +0100)]
lavc: make error_rate a private option of mpegvideo encoders
Anton Khirnov [Sat, 2 Nov 2013 21:01:14 +0000 (22:01 +0100)]
vdpau: add a constructor for AVVDPAUContext.
We will likely want to add new fields to it in the future, so this is
needed to avoid breaking ABI.
Anton Khirnov [Fri, 1 Nov 2013 17:37:47 +0000 (18:37 +0100)]
vdpau: add a convenience function for getting a decoder profile.
Based on the code by Rémi Denis-Courmont <remi@remlab.net> from VLC.
Diego Biurrun [Wed, 13 Nov 2013 17:44:27 +0000 (18:44 +0100)]
fate: Add VCR2 test
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diego Biurrun [Wed, 13 Nov 2013 17:44:25 +0000 (18:44 +0100)]
mpeg12dec: Remove incomplete and wrong UV swapping code for VCR2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Kostya Shishkov [Wed, 13 Nov 2013 17:44:26 +0000 (18:44 +0100)]
mpegvideo: Fix swapping of UV planes for VCR2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 02:13:39 +0000 (03:13 +0100)]
Merge remote-tracking branch 'qatar/master'
* qatar/master:
Deprecate obsolete XvMC hardware decoding support
Conflicts:
libavcodec/mpeg12.c
libavcodec/mpeg12dec.c
libavcodec/mpegvideo.c
libavcodec/options_table.h
libavutil/pixdesc.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 01:39:41 +0000 (02:39 +0100)]
Merge commit '
c7f7bfc9e3a3150ba72bc34366c13fb2210c66ac'
* commit '
c7f7bfc9e3a3150ba72bc34366c13fb2210c66ac':
Remove all Alpha architecture optimizations
Conflicts:
libavcodec/alpha/asm.h
libavcodec/alpha/dsputil_alpha.c
libavcodec/alpha/dsputil_alpha.h
libavcodec/alpha/dsputil_alpha_asm.S
libavcodec/alpha/hpeldsp_alpha.c
libavcodec/alpha/hpeldsp_alpha.h
libavcodec/alpha/hpeldsp_alpha_asm.S
libavcodec/alpha/motion_est_alpha.c
libavcodec/alpha/motion_est_mvi_asm.S
libavcodec/alpha/mpegvideo_alpha.c
libavcodec/alpha/regdef.h
libavcodec/alpha/simple_idct_alpha.c
We have a qemu based fate alpha client. And various failures
on alpha have previously pointed to issues in generic C code.
Thus IMHO it makes sense to keep alpha code as long as someone
is willing to do the little bit of maintaince it needs
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Thu, 14 Nov 2013 01:26:26 +0000 (02:26 +0100)]
Merge commit '
16381923fb7b9087ce559fb1cd3594469ac6788b'
* commit '
16381923fb7b9087ce559fb1cd3594469ac6788b':
configure: Check whether MSVC requires using the C89-to-C99 converter
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Wed, 13 Nov 2013 21:56:18 +0000 (22:56 +0100)]
avformat/nullenc: mark null as VFPS
This avoids frame duplication for null output
avoiding unneeded computations.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Wed, 13 Nov 2013 21:07:19 +0000 (22:07 +0100)]
ffmpeg_opt: fix overriding values set by -target
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diego Biurrun [Tue, 5 Nov 2013 07:16:31 +0000 (08:16 +0100)]
Deprecate obsolete XvMC hardware decoding support
XvMC has long ago been superseded by newer acceleration APIs, such as
VDPAU, and few downstreams still support it. Furthermore XvMC is not
implemented within the hwaccel framework, but requires its own specific
code in the MPEG-1/2 decoder, which is a maintenance burden.
Diego Biurrun [Wed, 13 Nov 2013 19:39:56 +0000 (20:39 +0100)]
Remove all Alpha architecture optimizations
Alpha has been end-of-lifed and no more test machines are available.
Martin Storsjö [Mon, 4 Nov 2013 13:46:34 +0000 (15:46 +0200)]
configure: Check whether MSVC requires using the C89-to-C99 converter
MSVC does support enough of C99 to work without the converter since
the 2013 version. Try to detect which version of the compiler in
the path needs to run the C99 converter or not. When the converter
is omitted, compilation time is reduced quite drastically.
Prior to this, users could still use --cc="c99conv -noconv cl"
when running MSVC 2013 to achieve the same.
This checks the version number instead of doing a normal compile
test, since this check needs to be done earlier in configure, before
the normal compile test helpers are usable.
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Wed, 13 Nov 2013 17:48:38 +0000 (18:48 +0100)]
avformat/aviobuf: return error from avio_put_str16le() for invalid input
Found-by: Stefano Sabatini
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Wed, 13 Nov 2013 17:39:17 +0000 (18:39 +0100)]
avio_put_str16le: Print error message in case of invalid UTF8 input
Found-by: Stefano Sabatini
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Wed, 13 Nov 2013 17:03:32 +0000 (18:03 +0100)]
avformat/mmst: propagate error code from avio_put_str16le()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Timothy Gu [Sat, 9 Nov 2013 23:36:36 +0000 (15:36 -0800)]
doc: remove soc.txt
The file was written in 2006, it was never updated nor really used as
reference for SOC-like programs.
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
Lukasz Marek [Tue, 12 Nov 2013 21:38:14 +0000 (22:38 +0100)]
lavd/xv: fix memory leak
Results of XvQueryAdaptors have to be freed with XvFreeAdaptorInfo.
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Stefano Sabatini [Sun, 10 Nov 2013 22:46:41 +0000 (23:46 +0100)]
lavfi: add elbg filter
Stefano Sabatini [Tue, 12 Nov 2013 11:58:21 +0000 (12:58 +0100)]
lavc/elbg: rename ff_ symbols to avpriv_, so they can be used in shared libs
In particular, allows the use of elbg in other FFmpeg libraries, required
by the pending elbg filter.
Ben Boeckel [Mon, 28 Oct 2013 02:47:31 +0000 (22:47 -0400)]
vorbis: handle special packets in the middle of a stream
This allows for updating metadata from new metadata packets in the
middle of a stream (e.g., MPD streams). There still needs to be a signal
that there *is* new metadata, but this is at least gets the data into a
data structure.
Signed-off-by: Ben Boeckel <mathstuf@gmail.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Tue, 12 Nov 2013 21:26:34 +0000 (22:26 +0100)]
avformat/vqf: check a few more bits in probe
Fixes probetest failure
The threshold is choosen so that a all printale ascii string will never be
detected as vqf
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Paul B Mahol [Sun, 10 Nov 2013 19:16:14 +0000 (19:16 +0000)]
avcodec/vp9: use av_freep() for above_partition_ctx
Fixes use after free if memory allocation fails.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Michael Niedermayer [Tue, 12 Nov 2013 18:37:37 +0000 (19:37 +0100)]
avformat/smacker: check width/height in probe
Fixes probetest failure
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Michael Niedermayer [Tue, 12 Nov 2013 15:11:42 +0000 (16:11 +0100)]
avcodec/mpegvideo_motion: Handle edge emulation even without unrestricted_mv
Fixes out of array reads
Fixes part of: MSVR 440 (the other issues seem to have been fixed already)
Found-by: Jeremy Brown (jerbrown) of ReSP
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>