Michael Niedermayer
3b6bde3b3d
avcodec/h264_mb: fix grayscale only decoding with weighted prediction
...
Fixes Ticket3412
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 94f60b6544 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-17 15:09:05 +02:00
Michael Niedermayer
10c2d22ba1
avcodec/mjpegdec: Support AV_PIX_FMT_YUV420P16 with upscale_h
...
Fixes assertion failure
Fixes: test42f.jpg
Found-by: Piotr Bandurski <ami_stuff@o2.pl >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 5c7899a483 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-14 16:53:36 +02:00
Christophe Gisquet
35738e5898
proresenc_kostya: properly account for alpha
...
The packet buffer allocation considered as dct-coded, while it is
actually run-coded and thus requires a larger buffer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 117bc8e6ff )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-14 15:44:54 +02:00
Christophe Gisquet
60bfa9154d
proresenc_kostya: report buffer overflow
...
If the allocated size, despite best efforts, is too small, exit
with the appropriate error.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 52b81ff463 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-12 02:40:15 +02:00
Christophe Gisquet
9794727ccd
proresenc_kostya: remove unneeded parameters
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit bf10f09bcc )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-12 02:40:14 +02:00
Michael Niedermayer
11420649d0
avcodec/snow: fix null pointer dereference in cleanup after allocation failure
...
Fixes: snowf.avi
Found-by: Piotr Bandurski <ami_stuff@o2.pl >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 9a162146ca )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-11 15:45:42 +02:00
Michael Niedermayer
dbf5d7e5cd
avcodec/huffyuvdec: fix overread checks
...
Fixes: ffvhuff_f.avi
Found-by: Piotr Bandurski <ami_stuff@o2.pl >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit ba47d519e5 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-11 15:32:00 +02:00
Michael Niedermayer
6badd558ce
avcodec/get_bits: add BITS_LEFT() for finding the bits left with an opened reader
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 11512d70fa )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-11 15:31:59 +02:00
Michael Niedermayer
a1fe3b4150
avcodec/vc1dec: do not crash when flushing without an allocated frame
...
Fixes Ticket3837
Found-by: Piotr Bandurski <ami_stuff@o2.pl >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 6801eb0a09 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-11 02:26:29 +02:00
Michael Niedermayer
fc57959fd5
avcodec/iff: Factorize av_pix_fmt_desc_get() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 9bcdb98839 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-10 22:40:50 +02:00
Michael Niedermayer
83956309cc
avcodec/iff: check pixfmt for rgb8 / rgbn
...
Fixes out of array access
Found-by: Piotr Bandurski <ami_stuff@o2.pl >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 3539d6c63a )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-10 22:40:50 +02:00
Felix Abecassis
6928193493
h264: fix interpretation of interleved stereo modes
...
Column and row frame packing arrangements were inverted.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com >
(cherry picked from commit a7e541c992 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-10 22:40:50 +02:00
Anton Khirnov
a72b7286e6
cdgraphics: do not return 0 from the decode function
...
0 means no data consumed, so it can trigger an infinite loop in the
caller.
CC:libav-stable@libav.org
(cherry picked from commit c7d9b473e2 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-10 22:40:50 +02:00
Michael Niedermayer
fdfe94f4b1
avcodec/wavpackenc: Fix log2sample() result value
...
Found-by: CSA
Reviewed-by: Paul B Mahol <onemda@gmail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit e706fe7640 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-10 22:40:50 +02:00
Michael Niedermayer
638c3aca64
avcodec/dvdsub_parser: print message if packet is smaller than the packet size field
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit bcc898dd26 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-02 01:27:04 +02:00
Michael Niedermayer
76d59f1b34
avcodec/dvdsub_parser: Check buf_size before reading 32bit packet size
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 81c1657a59 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-02 01:27:03 +02:00
Michael Niedermayer
aa0a8ef50e
avcodec/dvdsub_parser: never return 0 when the input isnt 0
...
Fixes a infinite loop
Fixes Ticket3804
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit cfdb30d2f1 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-02 01:27:02 +02:00
Michael Niedermayer
d6173ae341
avcodec/mpeg12dec: fix support for interlaced mpeg2 with missing last slice
...
Fixes Ticket3809
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit f95298c913 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-01 21:20:43 +02:00
Michael Niedermayer
594b1fa961
libavcodec/h264_parser: Increase parse_history, fix huge resolutions
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 0782fb6bcb )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-31 16:50:32 +02:00
Benoit Fouet
7a1262fca3
h264_mp4toannexb_bsf: account for consecutive IDR pictures.
...
If there are consecutive IDR pictures, then SPS/PPS should be prepended
to all of them, not only the first one.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit bf428bb314 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-31 16:50:31 +02:00
Chris \"Koying\" Browet
6d2219e9f9
avcodec/h264_mp4toannexb_bsf: fix issue when sps/pps are already in the bistream
...
(cherry picked from commit ad91bf854b )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-31 16:50:26 +02:00
Michael Niedermayer
c61ac696e5
avcodec/avdct: Add avcodec_dct_get_class()
...
This should have been in the initial commit of AVDCT
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 2f717be22a )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-30 22:39:08 +02:00
Vittorio Giovara
ab1ea597bd
g2meet: allow size changes within original sizes
...
(cherry picked from commit 14b4e64eab )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-30 22:32:01 +02:00
Christophe Gisquet
65259b4d68
x86: hevc_mc: replace one lea by add
...
Should have been in 036f11bdb5 .
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-27 17:32:01 +02:00
Michael Niedermayer
fcc6568a10
avcodec: add avdct
...
This provides a public sustainable API/ABI for DCT functions.
Only externally used dct functions are included.
The structure is extensible without ABI issues compared to the
existing dct contexts.
See Mailing list and IRC log of 2014-07-26/27
Reviewed-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
(cherry picked from commit 932ff70956 )
Conflicts:
doc/APIchanges
2014-07-27 17:28:32 +02:00
Michael Niedermayer
cf92cc8751
avcodec/hevc: clear HEVClcList[i] on allocation
...
Fixes fate failure with --enable-memory-poisoning && make THREAD_TYPE=slice THREADS=7 fate-hevc-conformance-ENTP_C_Qualcomm_1
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-16 01:34:57 +02:00
James Almer
ad24256e7e
diracdec: remove unused dsputil context
...
Signed-off-by: James Almer <jamrial@gmail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-16 00:11:18 +02:00
Michael Niedermayer
880dbe43ca
avcodec/hevc: treat current_sps like sps_list
...
This simplifies the management of current_sps
Fixes Ticket3458
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 21:49:56 +02:00
Michael Niedermayer
0fc2045d5f
avcodec/hevc_ps: prevent stale pointer in malloc failure case
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 21:49:56 +02:00
Michael Niedermayer
5bda0467d2
avcodec/mpegvideo_enc: make edge for interlaced mpeg2 encoding smaller
...
Fixes segfault
the size can probably be reduced further for the mpeg2 case
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 19:56:24 +02:00
Michael Niedermayer
339d8fb353
avcodec/mpegvideo_enc: check intra dc precission
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 19:56:23 +02:00
Michael Niedermayer
97f86cd976
avcodec/mpegvideo_enc: workaround applications specifying intra dc level based on 8 and othes based on 0bit
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 19:56:22 +02:00
Michael Niedermayer
8a91cf857b
avcodec/options_table: add liberal limits to intra dc precission
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 19:56:21 +02:00
Michael Niedermayer
19e5114eaa
avcodec/mpegvideo_enc: return proper error instead of failing assertion when max rate is not set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 19:56:19 +02:00
Mickaël Raulet
453f8eaee2
hevc/rext: add support for Range extension tools
...
SPS features/flags:
- transform_skip_rotation_enabled_flag
- transform_skip_context_enabled_flag
- implicit_rdpcm_enabled_flag
- explicit_rdpcm_enabled_flag
- intra_smoothing_disabled_flag
- persistent_rice_adaptation_enabled_flag
PPS features/flags:
- log2_max_transform_skip_block_size
- cross_component_prediction_enabled_flag
- chroma_qp_offset_list_enabled_flag
- diff_cu_chroma_qp_offset_depth
- chroma_qp_offset_list_len_minus1
- cb_qp_offset_list
- cr_qp_offset_list
- log2_sao_offset_scale_luma
- log2_sao_offset_scale_chroma
(cherry picked from commit 005294c5b939a23099871c6130c8a7cc331f73ee)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 14:08:20 +02:00
Mickaël Raulet
5a41999d81
hevc/rext: basic infrastructure for supporting range extension
...
- support for 4:2:2 and 4:4:4 up to 12 bits
- add a new profile for range extension
(cherry picked from commit d3c067fa65bbc871758d28aa07f54123430ca346)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 13:47:35 +02:00
Mickaël Raulet
250430bf28
hevc: separate residu and prediction (needed for Range Extension)
...
(cherry picked from commit 6b3856ef57d66f2e59ee61fd2eb5f83b6d0d7d4a)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 13:37:27 +02:00
Mickaël Raulet
255086a7e0
hevc: use local variable for split_cu_flag
...
(cherry picked from commit ee71e9e9c12fc47856c452efb278f9f593a923ee)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 13:31:40 +02:00
Mickaël Raulet
f5beda3bfd
hevc: move restore_tqb where it should be.
...
(cherry picked from commit 8fafc96a9805d11bfe32537c8f78a294a5844065)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 13:25:55 +02:00
Mickaël Raulet
1241eb8870
hevc: simplify SAO computation, delay from one row its computation
...
(cherry picked from commit f2c5f647cec786df26f442a85e6d685a131a50c9)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 13:11:33 +02:00
Mickaël Raulet
c4058b7288
hevc/cabac: add new context for new syntax elements related to Rext(cherry picked from commit 6d71e2394f52679cfc8b86fb5880f89e6bd311d4)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-15 00:00:45 +02:00
Mickaël Raulet
07b91b8d62
hevc: cleaning up, remove unused constants(cherry picked from commit 7eed32d076c57aa03011d65a64903e8bdb633978)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-14 23:46:36 +02:00
Michael Niedermayer
cc3e7a4c3d
Merge commit 'acf91215c74a91eb3b86af01dcb1d3c78d0e2310'
...
* commit 'acf91215c74a91eb3b86af01dcb1d3c78d0e2310':
x86: dsputil: Avoid pointless CONFIG_ENCODERS indirection
Conflicts:
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-13 21:51:20 +02:00
Michael Niedermayer
98227ba5fa
Merge commit 'a8552ee3eb335d2fd2d6c99363367a6090298f78'
...
* commit 'a8552ee3eb335d2fd2d6c99363367a6090298f78':
ppc: dsputil: Coalesce all init files
Conflicts:
libavcodec/ppc/dsputil_altivec.h
libavcodec/ppc/dsputil_ppc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-13 21:08:28 +02:00
Diego Biurrun
acf91215c7
x86: dsputil: Avoid pointless CONFIG_ENCODERS indirection
...
The remaining dsputil bits are encoding-specific anyway.
2014-07-13 07:01:05 -07:00
Ben Avison
42c1cc35b7
armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)
...
The previous implementation targeted DTS Coherent Acoustics, which only
requires mdct_bits == 6. This relatively small size lent itself to
unrolling the loops a small number of times, and encoding offsets
calculated at assembly time within the load/store instructions of each
iteration.
In the more general case (codecs such as AAC and AC3) much larger arrays
are used - mdct_bits == [8, 9, 11]. The old method does not scale for
these cases, so more integer registers are used with non-unrolled versions
of the loops (and with some stack spillage). The postrotation filter loop
is still unrolled by a factor of 2 to permit the double-buffering of some
VFP registers to facilitate overlap of neighbouring iterations.
I benchmarked the result by measuring the number of gperftools samples
that hit anywhere in the AAC decoder (starting from aac_decode_frame())
or specifically in ff_imdct_half_c / ff_imdct_half_vfp, for the same
example AAC stream:
Before After
Mean StdDev Mean StdDev Confidence Change
aac_decode_frame 2368.1 35.8 2117.2 35.3 100.0% +11.8%
ff_imdct_half_* 457.5 22.4 251.2 16.2 100.0% +82.1%
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-13 15:17:04 +02:00
James Almer
276bef5340
x86/hevc_deblock: add ff_hevc_[hv]_loop_filter_luma_{8, 10}_sse2
...
Signed-off-by: James Almer <jamrial@gmail.com >
Reviewed-by: Kieran Kunhya <kierank@obe.tv >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-13 13:48:31 +02:00
Ronald S. Bultje
ebd1c505d2
h264: fix direct temporal mvs for bottom-field-first poc order.
...
Fixes http://forum.doom9.org/showthread.php?t=170867 .
Fixes: corrupt-1677.mkv
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-13 13:26:19 +02:00
Diego Biurrun
a8552ee3eb
ppc: dsputil: Coalesce all init files
2014-07-13 04:10:13 -07:00
Andreas Cadhalpun
39a6e02fd4
fix spelling errors
...
Reviewed-by: Timothy Gu <timothygu99@gmail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-12 22:33:27 +02:00