Commit Graph

35608 Commits

Author SHA1 Message Date
Hendrik Leppkes
d46e856350 h265_parse: skip zero sized NAL units
Avoids extra error checks later on and/or invalid reads.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-07 21:14:23 +01:00
Hendrik Leppkes
d6f92103e0 h264: do not return an error when NAL parsing of extradata failed
Fixes AnnexB samples with broken extradata, but proper in-band parameter sets

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-07 21:14:17 +01:00
Hendrik Leppkes
772ad7142d Merge commit 'ca2f19b9cc37be509d85f05c8f902860475905f8'
* commit 'ca2f19b9cc37be509d85f05c8f902860475905f8':
  h264: switch to h2645_parse for NAL parsing

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-05-07 21:13:44 +01:00
Hendrik Leppkes
9cc1ab63ac h2645_parse: allow partial escaping
This ports the fix from 033a533 to the new parser module in prepartion
of using it for the h264 decoder.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-07 21:11:21 +01:00
Hendrik Leppkes
c802389393 h2645_parse: initialize the GetBitContext to the proper size
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-07 21:11:10 +01:00
Hendrik Leppkes
6eb1b40ad8 hevc: fix size condition in ptl parsing
When only one sublayer is present, no information is coded. Only when at least two
are present, all 8 sublayers are written.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-07 21:10:59 +01:00
Michael Niedermayer
fc6894770e avcodec/m101: simplify 8bit code
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-07 04:42:52 +02:00
Michael Niedermayer
22d1148c77 avcodec/m101: remove unneeded zeroing of priv_data_size
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-07 04:42:52 +02:00
Michael Niedermayer
cbe265ccd7 avcodec/m101: Simplify if() condition
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-07 04:42:52 +02:00
Michael Niedermayer
58b3e5606b avcodec/avcodec: Move AV_CODEC_ID_M101 to the 2nd group of video codecs
Found-by: durandal_1707
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-06 15:57:14 +02:00
Michael Niedermayer
4155d5e06f avcodec: add M101 decoder
Fixes Ticket 2611

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-06 15:36:24 +02:00
Timo Rothenpieler
31ce01bdb9 avcodec/nvenc: don't set profile in lossless mode 2016-05-06 10:15:29 +02:00
James Almer
bd63ecec78 avcodec/dcadsp: use LOCAL_ALIGNED_32 instead of LOCAL_ALIGNED(32, ...) 2016-05-06 00:47:55 -03:00
Andrey Utkin
abb69a2f2b avcodec: Add "sar" alias to "aspect" option of video encoders
It is impossible to pass "aspect" parameter to encoder from ffmpeg CLI
because option from lavc/options_table.h is eclipsed by option with same
name in ffmpeg_opt.c, which has different meaning (DAR, not SAR).

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-06 03:47:36 +02:00
Christophe Gisquet
9c1aa14bf0 vc2enc: prevent random data
The slice prefix is 0 in the reference encoder and the decoder ignores it.
Writing 0 there seems like the best temporary solution.

The padding could have contained uninitialized data, but reference VC2
encoders put 0xFF there, hence the memset value.

Overall this allows producing bistreams with no random data for use by fate.
2016-05-06 01:12:51 +01:00
Paul B Mahol
c5d2d3dced avcodec/alac: fix 20-bit support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-05-05 18:15:22 +02:00
Rostislav Pehlivanov
770d3c85af vc2enc: do not print the lavc version if the bitexact flag is enabled
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2016-05-05 00:20:11 +01:00
James Almer
fc1c836def avcodec/hevc_parser: fix packet_split function name
Fixes compilation of hevc_parser without hevc_decoder

Signed-off-by: James Almer <jamrial@gmail.com>
2016-05-04 18:26:06 -03:00
Rick Kern
dc750194b6 lavc/videotoolboxenc: Set colorimetry values
Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
c356b6865d lavc/videotoolboxenc: Support pixel aspect ratio
Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
9d8a38d20b lavc/videotoolboxenc: Support for forced I-frames
Setting AVFrame.pic_type to AV_PICTURE_TYPE_I will force an I-frame.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
4b806081b2 lavc/videotoolboxenc: add concatentation properties
Add frames_before and frames_after as hints that there will be frames before
or after the frames produced in this session. This may help with
concatenation issues like bit rate spikes.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
ca429e7253 lavc/videotoolboxenc: Add realtime encoding property
Hint to the encoder that encoding should be done in real-time, even at the
expense of quality.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
272dd437bc lavc/videotoolboxenc: Handle out-of-memory and fix memory leak
Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
2fbf39382d lavc/videotoolboxenc: Fix DTS
Some devices output an invalid DTS when B-frames aren't used. Using PTS for
the DTS in this case.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
abe05892be lavc/videotoolboxenc: Fix AVCodecContext.has_b_frames usage.
Now set by the encoder, not used as an input parameter.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
645df43144 lavc/videotoolboxenc: Add entropy setting
Add an entropy setting to choose between CAVLC and CABAC.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
fbe0cf8ca7 lavc/videotoolboxenc: Require hardware encoding
Software encoding can be allowed by setting allow_sw to 1.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
0d4bf3074d lavc/videotoolboxenc: Handle hwaccel format as input
Handle AV_PIX_FMT_VIDEOTOOLBOX.
This results in better energy usage and faster encoding, especially on iOS.
When the buffer comes from the media server, no memcpy's are needed.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Rick Kern
d7cf3610c2 lavc/videotoolboxenc: Use shared pixel buffer pool
This reduces the chance of a memcpy in the media server.

Signed-off-by: Rick Kern <kernrj@gmail.com>
2016-05-04 18:40:40 +02:00
Paul B Mahol
66eb5b809a avcodec/adpcm: fix decoding of stereo non 4-bit ADPCM IMA WAV
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-05-04 11:33:34 +02:00
Paul B Mahol
3395ad48fa avcodec/adpcm: replace char/short/long with int8_t/int16_t/int
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-05-04 00:36:02 +02:00
foo86
b7d267399b avcodec/dca: convert to AVCRC
Signed-off-by: James Almer <jamrial@gmail.com>
2016-05-03 16:40:43 -03:00
Michael Niedermayer
1ef267b83f avcodec/h264: Put the removed SPS handling code back
reverts one hunk from 7966ddfc0b
The new code from 7966ddfc0b only covers extradata based SPS

Fixes: ffplay -ss 13 58af5798-fa2c-42a2-997d-dc8e49de2d8a.flv

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-03 15:56:57 +02:00
Derek Buitenhuis
7966ddfc0b Merge commit 'a7829a2a3f8e6ec0b9f2673c11f56916800aeb33'
* commit 'a7829a2a3f8e6ec0b9f2673c11f56916800aeb33':
  h264: reimplement 3aa661ec5 in a more explicit way

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 13:42:38 +01:00
Derek Buitenhuis
a454ad670c Merge commit 'add1467e5e447b79e8743a0b05c54dcf58c61dfe'
* commit 'add1467e5e447b79e8743a0b05c54dcf58c61dfe':
  svq3: drop the build dependency on the h264 decoder

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:57:36 +01:00
Derek Buitenhuis
43b7e5aa32 Merge commit 'a4d126dc59c39bb03e5e444432d1b27af26a45b4'
* commit 'a4d126dc59c39bb03e5e444432d1b27af26a45b4':
  svq3: eliminate remaining H264Context usage.

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:52:14 +01:00
Derek Buitenhuis
2a018be10f Merge commit '7bbdae81e895a49125dba58bad01b98389966c39'
* commit '7bbdae81e895a49125dba58bad01b98389966c39':
  svq3: move block_offset to SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:27:55 +01:00
Derek Buitenhuis
f32a23c849 Merge commit '1848a154a49d18c1f31f54ee75c7445dc49a7ecc'
* commit '1848a154a49d18c1f31f54ee75c7445dc49a7ecc':
  svq3: stop using H264Context.gb

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:27:24 +01:00
Derek Buitenhuis
8bba752ae9 Merge commit 'ea6ab02a174bcc11f3eaa1b840c9a4c895968690'
* commit 'ea6ab02a174bcc11f3eaa1b840c9a4c895968690':
  svq3: move the frame num variables to the SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:24:33 +01:00
Derek Buitenhuis
014fb816d1 Merge commit '21b746932241246be846a133abb3c5f91b1cab85'
* commit '21b746932241246be846a133abb3c5f91b1cab85':
  svq3: eliminate H264Context.cur_pic usage

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:24:08 +01:00
Derek Buitenhuis
2d3cc682c4 Merge commit '939b388383db8d0db5b2ff483e3a197c27b79791'
* commit '939b388383db8d0db5b2ff483e3a197c27b79791':
  svq3: eliminate remaining H264SliceContext usage

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:23:23 +01:00
Derek Buitenhuis
5db920bcb6 Merge commit '5a5db90edf71ef4c60db8ad7b0ebaa9a810c2d9e'
* commit '5a5db90edf71ef4c60db8ad7b0ebaa9a810c2d9e':
  svq3: move pict_type to the SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:17:34 +01:00
Derek Buitenhuis
1bfbdb8f0b Merge commit '12f13ecb2dcddfa3ee930167395370d3c6fff90c'
* commit '12f13ecb2dcddfa3ee930167395370d3c6fff90c':
  svq3: move mb strides/sizes to the SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:15:54 +01:00
Derek Buitenhuis
297e2768da Merge commit 'ad9d3384de08f02967d6eb11196ee8c78e8b2dba'
* commit 'ad9d3384de08f02967d6eb11196ee8c78e8b2dba':
  svq3: move the dequant buffer to SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-05-03 10:15:22 +01:00
Christophe Gisquet
7d453aaf65 wmalossless: allow calling madd_int16
This is done by actually handling the "prev_values" in the cascaded LMS data
as if it were int16_t, thus requiring switching at various locations the
computations.
2016-05-03 09:18:54 +02:00
Michael Niedermayer
df820af2c5 avcodec/error_resilience: Improve missing slice handling for mpeg2
Fixes: m702_2.avi

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-03 01:07:24 +02:00
foo86
ce2f9fdb0a avcodec/dca: fix sync word search error condition
This didn't actually check if sync word was found and always errored out
with "-err_detect explode" option enabled.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-02 23:26:44 +02:00
Michael Niedermayer
9fcb59c9bc avcodec/options_table: fix strict compliance constant flags to match the strict field
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-02 22:16:57 +02:00
Michael Niedermayer
deaf58abf2 avcodec/mjpegdec: Do not try to detect last scan but apply idct after all scans for progressive jpeg
Fixes: IMG-20160418-WA0002.jpg

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-02 12:45:14 +02:00
Jan Sebechlebsky
0ff3489534 avcodec/mjpeg2jpeg_bsf: Check ff_bsf_get_packet success
This fixes ticket #5487 - mjpeg2jpeg bitstream filter causes
segmentation fault with header-less mjpeg.

Signed-off-by: Jan Sebechlebsky <sebechlebskyjan@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-02 04:10:03 +02:00
foo86
1fee770a1c avcodec/dca: move channel counter utility into dca.h
Signed-off-by: James Almer <jamrial@gmail.com>
2016-05-01 16:50:32 -03:00
foo86
2df7d4fa45 avcodec/dca: move huffman data into separate object file
Signed-off-by: James Almer <jamrial@gmail.com>
2016-05-01 16:50:29 -03:00
Paul B Mahol
bc2fe36228 avcodec/noise_bsf: set correct size of .priv_data_size field
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-05-01 22:23:48 +02:00
Michael Niedermayer
3187277ebb avcodec/wmalosslessdec: Fix memset sizeof
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-01 18:44:06 +02:00
Michael Niedermayer
52623ef785 avcodec/smc: Mark pixel pointer as const
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-01 17:47:55 +02:00
Carl Eugen Hoyos
00ffbdfb68 lavc/fic: Do not warn about empty cursor.
Fixes ticket #5174.
2016-05-01 15:30:22 +02:00
Carl Eugen Hoyos
47a11ff457 lavc/fic: Be less verbose for invisible cursor outside of video. 2016-05-01 15:28:59 +02:00
Clément Bœsch
9f3dd53050 lavc/srtenc: do not emit any subrip tags with text codec
Fixes presence of opening tags when running
  ffmpeg -i x.ass -c text x.srt

Reported-by: Jean First <jeanfirst@gmail.com>
2016-05-01 15:16:50 +02:00
Clément Bœsch
bbf02f7d28 lavc: override decode return value only in case of error
Fixes Ticket #5350

Regression since 2941282124.
2016-05-01 14:53:53 +02:00
Christophe Gisquet
532e937083 avcodec/wmalosslessdec: silence a sample request
16bits samples with CDLMS orders of 8 are currently unsupported, but have never
been encountered before.

However, 8 seems to be the most frequent, if not the only order used for 24bits.
In that case, the dsp functions are fine with handling order that are multiples
of 8, so silence the warning.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-05-01 11:18:09 +02:00
Paul B Mahol
8f4358888f avcodec/wmalosslessdec: fix type for coeffs and lms_updates in cdlms struct
They should really be int16_t.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-05-01 10:49:12 +02:00
foo86
b286ff69c0 avcodec/dcaenc: move channel reordering tables to dcaenc.h
DCA core decoder no longer uses fixed tables for channel reordering.
Move them into private encoder header (and drop ff_dca_ prefix).

Signed-off-by: James Almer <jamrial@gmail.com>
2016-05-01 00:13:41 -03:00
foo86
de28e73cce avcodec/dcaenc: reuse shared quant levels table
Signed-off-by: James Almer <jamrial@gmail.com>
2016-05-01 00:13:37 -03:00
Michael Niedermayer
cb84c12fa2 avcodec/mpeg12dec: Print position in end mismatch error
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-01 01:43:06 +02:00
Michael Niedermayer
390703fcf5 avcodec/mpeg12dec: Do not choke on extra m704 alpha data
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-01 01:43:06 +02:00
Paul B Mahol
a67816bcce avcodec/wmalosslessdec: fix decoding of raw pcm tiles
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-30 19:56:53 +02:00
wm4
66dd21d50b avcodec/utils: split side-data in new decode API too
The deprecated avcodec_decode_video2() and avcodec_decode_audio4()
functions called av_packet_split_side_data() on the input packets. This
is required for packets produced by libavformat with the
AVFMT_FLAG_KEEP_SIDE_DATA flag unset (which is unfortunately the
default).

The new API didn't do this yet, although it didn't matter as no decoder
supports the new API yet. The emulation layer for the old API calls the
old API functions, which took care of the splitting. Add this code to
the new API codec entrypoints too, because we shouldn't send essentially
corrupted data to decoders.
2016-04-29 10:35:00 +02:00
Kieran Kunhya
e9a9ca1936 avcodec/cfhd: Don't decode coefficients if no end of header tag found. Fixes fuzzed files such as the one in in ticket #5383 2016-04-28 21:33:08 +01:00
Timo Rothenpieler
c4312b1cf4 avcodec/nvenc: Add missing lossless presets to doc string 2016-04-27 22:22:29 +02:00
Derek Buitenhuis
6f784c158b Merge commit '549fc77273636d0d02175362af5dcd60c79f7633'
* commit '549fc77273636d0d02175362af5dcd60c79f7633':
  svq3: move mb2br_xy to the SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:52:02 +01:00
Derek Buitenhuis
f09fd96cee Merge commit '99dde60391cade40ae026b9e385a5280be6b9882'
* commit '99dde60391cade40ae026b9e385a5280be6b9882':
  svq3: move {ref,mv}_cache to the SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:49:19 +01:00
Derek Buitenhuis
c0b51aa2d2 Merge commit '89a13998a1b5074411dff5a461dce3837057b0b8'
* commit '89a13998a1b5074411dff5a461dce3837057b0b8':
  svq3: rip out the svq3-relevant parts of pred_motion() out of h264

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:48:30 +01:00
Derek Buitenhuis
fed686af23 Merge commit '8eecae77ff6e2923de57dd883421d24fd53ca61f'
* commit '8eecae77ff6e2923de57dd883421d24fd53ca61f':
  svq3: move edge_emu_buffer to the SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:47:52 +01:00
Derek Buitenhuis
463de5625b Merge commit '527bf5f7c6890664b0f1dccd42397f4d204659fe'
* commit '527bf5f7c6890664b0f1dccd42397f4d204659fe':
  svq3: move the pred mode variables to SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:46:54 +01:00
Derek Buitenhuis
a2922b5d61 Merge commit 'ecc31f6b086453ab9811dce2ae5ceb6a7c19e4ad'
* commit 'ecc31f6b086453ab9811dce2ae5ceb6a7c19e4ad':
  h264: move ff_h264_check_intra[4x4]_pred_mode() to h264_parse

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:34:40 +01:00
Derek Buitenhuis
c18535399d Merge commit '1877712c586df2261f2806f45388c77592b89d1e'
* commit '1877712c586df2261f2806f45388c77592b89d1e':
  svq3: move mb_{x,y,xy} to SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:07:47 +01:00
Derek Buitenhuis
7dca134285 Merge commit 'c2a4ca944d9029a3c162f8f3ddd317b83a7bd600'
* commit 'c2a4ca944d9029a3c162f8f3ddd317b83a7bd600':
  svq3: eliminate write_back_intra_pred_mode() usage

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:07:19 +01:00
Derek Buitenhuis
47bb289170 Merge commit 'c73fb9efb22c8d66d24de2716f7f9970f234c3c3'
* commit 'c73fb9efb22c8d66d24de2716f7f9970f234c3c3':
  svq3: add all the required dsp contexts into SVQ3Context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:06:42 +01:00
Derek Buitenhuis
656b071a8f Merge commit '15b0517da986b312fc2fcb364a92db328380b15b'
* commit '15b0517da986b312fc2fcb364a92db328380b15b':
  svq3: make the dsp functions static

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 16:06:12 +01:00
Derek Buitenhuis
d6f01c61ed Merge commit '9b30f8dd8fa5bef5f16904cb98745b4a58f8f776'
* commit '9b30f8dd8fa5bef5f16904cb98745b4a58f8f776':
  h264: remove the svq3-specific code

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 15:48:00 +01:00
Ivan Uskov
b577a54a7c qsv: Fix wrong ticks_per_frame for H.264
For H.264 stream ticks_per_frame should be 2, as per the docs.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-27 15:33:53 +01:00
Umair Khan
a2ba50b03a avcodec/alsdec: Fix bitstream reading
Signed-off-by: Umair Khan <omerjerk@gmail.com>
Reviewed-by: Thilo Borgmann <thilo.borgmann@mail.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-27 13:15:12 +02:00
Paul B Mahol
1f62a6e780 avcodec/shorten: make max frame size bigger if custom block size was used
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-27 09:08:45 +02:00
Michael Niedermayer
566d64d4fb avcodec/h264: Only recover from reference pictures
Fixes spec compliance
Fixes Ticket5346

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-27 01:33:25 +02:00
Michael Niedermayer
4efd3ec50a avcodec/svq3: fix assert type (was av_assert2 in h264 from where this was copied)
Type was lost in f8d1bb2f2c

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-26 21:45:47 +02:00
Michael Niedermayer
005c61c6b8 avcodec/ttaenc: Reallocate packet if its too small
Fixes assertion failure
Fixes Ticket5394

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-26 19:45:59 +02:00
Rodger Combs
e1c20485c1
lavc/audiotoolboxdec: move to new BSF API 2016-04-26 10:35:09 -05:00
Rodger Combs
95116bf35f
lavc/audiotoolboxdec: fix memory leak 2016-04-26 10:35:09 -05:00
Derek Buitenhuis
f8d1bb2f2c Merge commit 'e42ca48a8bddc637a4013ab253598973f07e1a5c'
* commit 'e42ca48a8bddc637a4013ab253598973f07e1a5c':
  svq3: rip out the mb decoding code shared with h264

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-26 15:11:59 +01:00
Derek Buitenhuis
ee38234c43 Merge commit 'e481458bc308ee838deaeacac51929514762e7a7'
* commit 'e481458bc308ee838deaeacac51929514762e7a7':
  h264: factor out pred weight table parsing into a separate file

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-26 15:04:29 +01:00
Derek Buitenhuis
79aafd43fd Merge commit '90ed6c5cf7f236bc9efb47c97b40358c666d1386'
* commit '90ed6c5cf7f236bc9efb47c97b40358c666d1386':
  h2645_parse: compute the actual data length, without trailing paddding

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-26 14:27:35 +01:00
Derek Buitenhuis
438ed974b8 Merge commit 'b667252a41fbf5a3f6ea8c67fdbc03db3d748977'
* commit 'b667252a41fbf5a3f6ea8c67fdbc03db3d748977':
  h2645_parse: add support for parsing h264

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-26 14:07:03 +01:00
Derek Buitenhuis
b5c10c4c92 Merge commit '52ec149fbee57b6ca817049c9706212a0774a32c'
* commit '52ec149fbee57b6ca817049c9706212a0774a32c':
  h2645_parse: change the AVCodecContext* parameter to void*

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-26 14:04:48 +01:00
Derek Buitenhuis
8e73574d4f Merge commit '8229eff4b7a98ae5d85bb75f3bb072781b4a8ebe'
* commit '8229eff4b7a98ae5d85bb75f3bb072781b4a8ebe':
  h2645_parse: add a function for uninitializing the packet

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-26 14:01:45 +01:00
Derek Buitenhuis
3c4ca4c5d7 Merge commit 'fa936a307f5cddfc2664600157a8207ca8080af6'
* commit 'fa936a307f5cddfc2664600157a8207ca8080af6':
  hevc_parse: rename into h2645_parse

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-26 13:56:47 +01:00
Derek Buitenhuis
492d229303 qsvenc_hevc: Fix usage of ff_hevc_extract_rbsp
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-25 20:03:23 +01:00
Martin Vignali
3ce19882c5 libavcodec/exr: move xsize and ysize to thread data
Fixes slice threading.

Signed-off-by: James Almer <jamrial@gmail.com>
2016-04-25 14:19:05 -03:00
Derek Buitenhuis
4791a910c0 lavc/hevc_parse: Don't take a HEVCContext
It's not even used anymore, and the checks are no longer
functionally important.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-25 14:40:33 +01:00
Michael Niedermayer
9ac154d1fa avcodec/ac3dec: Reset SPX when switching from EAC3 to AC3
Fixes Ticket5319

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-25 04:08:21 +02:00
Jan Ekström
9779b62624 pgssubdec: fix subpicture output colorspace and range
Functionality used before didn't widen the values from limited to
full range. Additionally, now the decoder uses BT.709 where it
should be used according to the video resolution.

Default for not yet set colorimetry is BT.709 due to most observed
HDMV content being HD.

BT.709 coefficients were gathered from the first two parts of BT.709
to BT.2020 conversion guide in ARIB STD-B62 (Pt. 1, Chapter 6.2.2).
They were additionally confirmed by manually calculating values.

Fixes #4637
2016-04-24 23:05:04 +02:00
Derek Buitenhuis
87b8e95008 Merge commit 'cdb1665f70def544ddab3e3ed3763ef99c8b3873'
* commit 'cdb1665f70def544ddab3e3ed3763ef99c8b3873':
  aarch64: Make transpose_4x4H do a regular transpose

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:51:42 +01:00
Derek Buitenhuis
896fce8509 Merge commit '159323897f545e7405fb9db234e0ba123e174376'
* commit '159323897f545e7405fb9db234e0ba123e174376':
  intrax8: Add a local BlockDSPContext and initialize it

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:36:23 +01:00
Derek Buitenhuis
52692eed61 Merge commit '1eaae7abb8f208fefb4e8b9e983e61b2499206a3'
* commit '1eaae7abb8f208fefb4e8b9e983e61b2499206a3':
  intrax8: Reference the current AVCodecContext

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:34:58 +01:00
Derek Buitenhuis
50fa5715bc Merge commit '8072345e9f86d88fbc4a15c17cb03f1e4701c9a5'
* commit '8072345e9f86d88fbc4a15c17cb03f1e4701c9a5':
  intrax8: Keep a reference to the GetBitContext reader

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:34:16 +01:00
Derek Buitenhuis
93c61c980d Merge commit '65f14128c4bcf8fcd9d3ba1e20b7a22057c9cfb0'
* commit '65f14128c4bcf8fcd9d3ba1e20b7a22057c9cfb0':
  intrax8: Use a constant buffer instead of a ScratchpadContext

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:33:07 +01:00
Derek Buitenhuis
36dad14693 Merge commit 'eaeba6f241e0de0e797be10f8fda967ef8489e64'
* commit 'eaeba6f241e0de0e797be10f8fda967ef8489e64':
  intrax8: Pass the output frame to the decoding function

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:32:38 +01:00
Derek Buitenhuis
e5c655b098 Merge commit '577393321c389ad2973bec6168a8045c94a9e099'
* commit '577393321c389ad2973bec6168a8045c94a9e099':
  intrax8: Carry over the loopfilter value in ff_intrax8_decode_picture

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:31:14 +01:00
Derek Buitenhuis
83e0b1b1d7 Merge commit '68127e1bf8037a6e0acd6401cc8c5da950e3fa0a'
* commit '68127e1bf8037a6e0acd6401cc8c5da950e3fa0a':
  intrax8: Keep a reference to the context idctdsp

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:19:53 +01:00
Derek Buitenhuis
627115b3e4 Merge commit '65127450add50c3bca307edc0517d2e8382717a0'
* commit '65127450add50c3bca307edc0517d2e8382717a0':
  intrax8: Make x8_init_block_index not use mpegvideo fields

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:16:16 +01:00
Derek Buitenhuis
1a9ffc59d2 Merge commit '922b7e6d86e6197dfa5ebde602dd12cc66fb5f1f'
* commit '922b7e6d86e6197dfa5ebde602dd12cc66fb5f1f':
  intrax8: Use local destination buffers

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 12:08:11 +01:00
Derek Buitenhuis
9809371aa5 Merge commit 'a7da517f6a5c472f46f67dd33bb6b95ccc919923'
* commit 'a7da517f6a5c472f46f67dd33bb6b95ccc919923':
  h264data: Move all data tables from a header to a .c file

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 11:54:53 +01:00
Derek Buitenhuis
a5a6621616 Merge commit 'f4d581cda3897f66c1dda7586b93f86a591dbbef'
* commit 'f4d581cda3897f66c1dda7586b93f86a591dbbef':
  lavc: Deduplicate zigzag_scan table

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 11:47:39 +01:00
Derek Buitenhuis
64ae08ffec Merge commit '02cd8bb9cb4381c50f42a9284098cc8a33d397db'
* commit '02cd8bb9cb4381c50f42a9284098cc8a33d397db':
  h264: Clean up #includes

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24 11:36:44 +01:00
Anton Khirnov
71d3305c27 h264_parse: make sure the ref count is zeroed on all failure paths 2016-04-24 10:06:23 +02:00
Anton Khirnov
a6e27f7add h264: factor out parsing the reference count into a separate file
This will allow decoupling the parser from the decoder.
2016-04-24 10:06:23 +02:00
Anton Khirnov
56b17a33f2 h264: stop testing whether the reference count changes in ff_set_ref_count()
It is no longer necessary after 741b494fa8
2016-04-24 10:06:23 +02:00
Anton Khirnov
e9f884416c h264: move reading direct_spatial_mv_pred out of ff_set_ref_count()
It has nothing to do with the reference count and so does not belong in
this function.
2016-04-24 10:06:23 +02:00
Anton Khirnov
8d0cc8ca97 h264_parser: switch to h2645_parse for NAL unescaping
Remove now unused ff_h264_decode_nal().
2016-04-24 10:06:23 +02:00
Anton Khirnov
f3ed484953 h264_mp4toannexb_bsf: do not fail on annex B extradata
Just pass through the bitstream as is. This is the same as what is done
for HEVC already.
2016-04-24 10:06:23 +02:00
Michael Niedermayer
38433345e5 avcodec/utils: Assert that the number of consumed bytes in avcodec_decode_audio4() is <= the input size
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-23 17:23:59 +02:00
wm4
27adf9f9cd avcodec/utils: fix minor memory leaks on avcodec_open2() failure 2016-04-22 19:29:48 +02:00
Paul B Mahol
c85d04251d avcodec: add TrueMotion 2.0 Real Time decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-21 20:15:17 +02:00
Vittorio Giovara
5fca95c8e5 libx264: Forbid inverted Stereo3D mode 2016-04-21 12:25:42 -04:00
Vittorio Giovara
9e2af0e907 libx264: Allow Stereo3D monoscopic value 2016-04-21 12:24:35 -04:00
Derek Buitenhuis
5f587b1daf Merge commit '3b08d9d932eef09403074d5af31e10d8011e840b'
* commit '3b08d9d932eef09403074d5af31e10d8011e840b':
  testprogs: K&R formatting cosmetics

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-21 16:50:06 +01:00
wm4
7fc329e2dd lavc: introduce a new decoding/encoding API with decoupled input/output
Until now, the decoding API was restricted to outputting 0 or 1 frames
per input packet. It also enforces a somewhat rigid dataflow in general.

This new API seeks to relax these restrictions by decoupling input and
output. Instead of doing a single call on each decode step, which may
consume the packet and may produce output, the new API requires the user
to send input first, and then ask for output.

For now, there are no codecs supporting this API. The API can work with
codecs using the old API, and most code added here is to make them
interoperate. The reverse is not possible, although for audio it might.

From Libav commit 05f66706d1.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-04-21 14:23:36 +02:00
Michael Niedermayer
0de99ab06f avcodec: Add avpriv_codec_get_cap_skip_frame_fill_param()
With this the use of the caps_internal from libavformat can be avoided

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-21 13:49:32 +02:00
Michael Niedermayer
9f36ea57ae avcodec/avpacket: Fix off by 5 error
Fixes out of array read
Fixes: mozilla bug 1266129
Found-by: Tyson Smith
Tested-by: Tyson Smith
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-21 00:52:40 +02:00
Paul B Mahol
38797a8033 avcodec/takdec: add code that got somehow lost in process of REing
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-20 22:47:09 +02:00
Luca Barbato
f3fdef108e ape: Avoid undefined behaviour
Avoid the clang warning

"warning: shifting a negative signed value is undefined"
2016-04-19 20:22:31 +02:00
Luca Barbato
6b2ad3ca48 indeo3: Avoid undefined behaviour
Avoid the clang warning

"warning: shifting a negative signed value is undefined"
2016-04-19 19:00:41 +02:00
Derek Buitenhuis
eae2ebded3 libxvid: Create extradata in init using a dummy frame
Modifying global header extradata in encode_frame is an API violation
and only happens to work currently because mov writes its header
at the end of the file.

Heavily based off of a patch from 2012 by Nicolas George.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-04-19 19:00:41 +02:00
Anton Khirnov
06edef3d5e Generate the lists of enabled protocols/bsfs from configure. 2016-04-19 13:34:07 +02:00
Paul B Mahol
13406b6124 avcodec/tak_parser: fix parsing of streams with bunch of small frames at end
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-18 23:37:41 +02:00
Michael Niedermayer
ce18e48aec avcodec/dump_extradata_bsf: Add back 'k' and 'e' options
broken since af9cac1be1

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-18 02:54:33 +02:00
Michael Niedermayer
57fc93ecb2 avcodec/remove_extradata_bsf: Add back 'k' and 'e' options
broken since af9cac1be1

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-18 02:54:27 +02:00
Michael Niedermayer
8106479503 avcodec/bitstream_filter: Fix initializing options from the argument string
Fixes ffmpeg ... -vbsf noise=234 ...

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-18 02:48:44 +02:00
Michael Niedermayer
76d0209db4 avcodec/intrax8: Remove duplicated chunk from ba5bcf9612
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-18 00:59:18 +02:00
Carl Eugen Hoyos
db7d0d6e7c lavc/fic: Cosmetics, fix a typo.
Found by Moritz Barsnick
2016-04-18 00:18:54 +02:00
Carl Eugen Hoyos
1106a2c5dd lavc/webp: Print a warning for unsupported chunks. 2016-04-17 20:42:10 +02:00
Derek Buitenhuis
9d4799c247 Merge commit '8dead2aaca4aa8b84b77b05745755afb56b7d37a'
* commit '8dead2aaca4aa8b84b77b05745755afb56b7d37a':
  Move const qualifier before type name

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:35:03 +01:00
Derek Buitenhuis
61400a1dc7 Merge commit 'd909f43b5c773a73c8d526638744547ba4aa8c59'
* commit 'd909f43b5c773a73c8d526638744547ba4aa8c59':
  vc1dec: wmv2dec: Validate ff_intrax8_common_init return value

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:32:26 +01:00
Derek Buitenhuis
f64b53f2bf Merge commit '0372e73f917e72c40b09270f771046fc142be4a7'
* commit '0372e73f917e72c40b09270f771046fc142be4a7':
  intrax8: Check and propagate errors from ff_intrax8_common_init

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:31:32 +01:00
Derek Buitenhuis
c29ac4abb8 Merge commit 'ad8aa8e6c648b61f01b9f106f27b9d4f3d094345'
* commit 'ad8aa8e6c648b61f01b9f106f27b9d4f3d094345':
  intrax8: Move documentation from implementation to header file

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:30:01 +01:00
Derek Buitenhuis
ba5bcf9612 Merge commit '2ade1cdafb96bf47e77f7ed74731d78a30aae950'
* commit '2ade1cdafb96bf47e77f7ed74731d78a30aae950':
  intrax8: K&R formatting cosmetics

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:27:53 +01:00
Derek Buitenhuis
7120bff0a3 Merge commit '6f5ff559dbd01fa4ea96bc0a1d2e0c21f2db8d13'
* commit '6f5ff559dbd01fa4ea96bc0a1d2e0c21f2db8d13':
  intrax8: Adjust printf conversion specifier for sizeof expression

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:13:30 +01:00
Derek Buitenhuis
2c3e38f44f Merge commit '42244ce07a1f4f5108ae86d50fe72db785d483ed'
* commit '42244ce07a1f4f5108ae86d50fe72db785d483ed':
  intrax8: Move a comment to the place it corresponds

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:11:43 +01:00
Derek Buitenhuis
e445b80c74 Merge commit '750562549ceef268b29b94f6a887d9cf331a8c78'
* commit '750562549ceef268b29b94f6a887d9cf331a8c78':
  intrax8: Wrap multiline macros in do{}while(0) clauses

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:11:17 +01:00
Derek Buitenhuis
909f5e7100 Merge commit '0c6a70873fc6e43194b471d112c30823b6c8d0b4'
* commit '0c6a70873fc6e43194b471d112c30823b6c8d0b4':
  intrax8: Move error resilience out of intrax8

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-17 19:09:12 +01:00