Commit Graph

35174 Commits

Author SHA1 Message Date
Derek Buitenhuis fdd7a594c3 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.

Original-by: Nicolas George <george@nsup.org>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-05 11:16:24 -04:00
Paul B Mahol 8a4c3f5258 avcodec: add adpcm dat4 decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-05 10:48:59 +02:00
Claudio Freire 7d49abdf47 AAC encoder: fix filling of wi.clipping array
Fill all windows in all window groups instead of only the first
window of each group.

Also avoid uninitialized access of window_type.
2016-04-05 04:03:05 -03:00
Martin Vignali 832861535a libavcodec/exr : add support for compression in tile 2016-04-04 22:30:50 +02:00
Martin Vignali 062ad63064 libavcodec/exr : cosmetic change 2016-04-04 22:30:33 +02:00
Claudio Freire bad41d3724 AAC encoder: fix initialization of minsf
In some situations (exactly zeroed DC coeffs) minsf would
be initialized with garbage
2016-04-03 15:03:53 -03:00
Martin Vignali 25a01c52b8 libavcodec/exr: add tile support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-03 17:09:34 +02:00
Martin Vignali d2ed3391fb libavcodec/exr: fix PRX24 Float decompression
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-04-03 17:09:29 +02:00
Michael Niedermayer de0bcea664 avcodec/mjpegdec: Do not permute quantization tables
This fixes issues if the permutation changes, as quantizations tables would need to be reread

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-03 01:50:08 +02:00
Hendrik Leppkes ce87711df5 exif: take a generic log context
The AVCodecContext is only used for logging, so instead take any valid log context.
This allows reusing the exif functions more easily in avformat.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-02 22:48:15 +01:00
Hendrik Leppkes 994412fb9b avcodec: properly initialize AVCodecParameters profile/level
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-02 22:48:03 +01:00
Rick Kern c9ad357aeb lavc/videotoolboxenc: Workaround encoder error
CMVideoFormatDescriptionGetH264ParameterSetAtIndex() fails on some
hardware/OS versions when retrieving the parameter set count alone.

Signed-off-by: Rick Kern <kernrj@gmail.com>
Signed-off-by: wm4 <nfxjfg@googlemail.com>
2016-04-02 19:16:20 +02:00
Rick Kern 7801669470 lavc/videotoolboxenc: Fix crash when closing codec after error
Fixes crash in #5352. VTCompressionSessionInvalidate() crashes if the
internal encoder hasn't completed, but hasn't experienced an error.
The function call isn't needed since the encoder is invalidated when
the reference count reaches 0 anyway.

Signed-off-by: Rick Kern <kernrj@gmail.com>
Signed-off-by: wm4 <nfxjfg@googlemail.com>
2016-04-02 19:16:15 +02:00
Clément Bœsch ffd1c3eeb7 lavc/utils: use pkt_timebase for legacy subtitles timing code
This is consistent with other AVSubtitle timing adjustments.
2016-04-02 19:03:06 +02:00
Clément Bœsch d8620158c7 lavc/ccaption_dec: remove usage of avctx->time_base
lavc/utils already rescales avpkt->pts to sub->pts in AV_TIME_BASE_Q
before calling the decode callback. This prevents from rescaling again
into the decoder, and avoid the use of avctx->time_base which will
disappear in the incoming codecpar merge.

This commit also replaces the use of "20 centisecond" (ass time base)
with "200 ms".
2016-04-02 19:03:06 +02:00
Rodger Combs b4daa2c40f lavc/audiotoolboxdec: add eac3 decoder
This is added in 10.11, so we add a #define when building against older SDKs.

The decoder actually supports 7.1-channel eac3, but since the parser only
reports 6 channels, we end up decoding the 5.1 downmix (same as the internal
decoder) for now.
2016-04-02 03:03:13 -05:00
Rodger Combs 1b9e90ee80 lavc/audiotoolboxdec: fix a number of config and timestamp issues
- ADTS-formatted AAC didn't work
- Channel layouts were never exported
- Channel mappings were incorrect beyond stereo
- Channel counts weren't updated after packets were decoded
- Timestamps were exported incorrectly
2016-04-02 03:03:13 -05:00
Rodger Combs 59a4492371 lavc/audiotoolboxdec: support ADTS AAC input 2016-04-02 03:03:13 -05:00
Rodger Combs 36770d8769 lavc/audiotoolboxenc: allow setting maxrate with pre-10.9 deployment targets
The build failure here is caused by the enum value not being defined, but
as long as we're on a newer SDK that has it, it's safe to use it even
when our deployment target is older. Setting the property will error, but
we're not failing on errors there.
2016-04-02 03:03:13 -05:00
Rodger Combs 0667327f3f lavc/audiotoolboxenc: fix iOS build 2016-04-02 03:03:13 -05:00
Rodger Combs c820e600ea lavc/audiotoolboxenc: fix a number of config issues
- size variables were used in a confusing way
- incorrect size var use led to channel layouts not being set properly
- channel layouts were incorrectly mapped for >2-channel AAC
- bitrates not accepted by the encoder were discarded instead of being clamped
- some minor style/indentation fixes
2016-04-02 03:03:13 -05:00
Rodger Combs 7524b67817 lavc/audiotoolboxenc: remove unneeded packet metadata
This isn't necessary here, and for some reason broke only multichannel
AAC encoding when a channel layout tag was set.
2016-04-02 03:03:13 -05:00
Michael Niedermayer 9f03b85045 avcodec/parser: assert that the codec id is not NONE in av_parser_parse2()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-01 19:08:29 +02:00
Aaron Boxer b6b4b0a65e avcodec/j2kenc: Add attribution to OpenJPEG project:
http://ghostscript.com/~tor/gs-browse/gs/openjpeg/libopenjpeg/t1.c

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-01 17:35:15 +02:00
wm4 a5f5b8b96a lavc: factor apply_param_change() AV_EF_EXPLODE handling
Remove the duplicated code for handling failure of apply_param_change().
2016-04-01 12:52:56 +02:00
Clément Bœsch be8d98c1ad lavc/utils: transfer width/height for subs in codecpar
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-31 21:20:39 +01:00
Derek Buitenhuis dd77dad4e6 codecpar: Add video delay field
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-31 21:20:39 +01:00
Hendrik Leppkes 5b4f8af2f1 Add frame_size to AVCodecParameters
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-31 21:20:39 +01:00
James Almer 3fafde6cbe lavc: Add seek_preroll to AVCodecParameters
Signed-off-by: James Almer <jamrial@gmail.com>
2016-03-31 21:20:39 +01:00
Derek Buitenhuis e6053b3b19 Merge commit 'a8068346e48e123f8d3bdf4d64464d81e53e5fc7'
* commit 'a8068346e48e123f8d3bdf4d64464d81e53e5fc7':
  lavc: add a variant of av_get_audio_frame_duration working with AVCodecParameters

Fixes from jamrial incorporated.

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-31 21:20:02 +01:00
Derek Buitenhuis f9b1cf15c2 Merge commit '998e1b8f521b73e1ed3a13caaabcf79eb401cf0d'
* commit '998e1b8f521b73e1ed3a13caaabcf79eb401cf0d':
  lavc: add codec parameters API

  Fixes added in:
    - bit_rate has been made int64_t to match.
    - profile and level are properly initialize.

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-31 21:19:03 +01:00
Claudio Freire be746ae470 AAC encoder: fix undefined behavior
Fix uninitialized access of minsf in short windows
Fix potential invocation of coef2minsf(0)
2016-03-30 22:35:28 -03:00
Claudio Freire c883da6bf4 AAC encoder: fix signed integer overflow
Clamp scalefactors by coef2minsf to avoid undefined behavior
caused by signed integer overflow. It also avoids clipping of
coefficients so it should avoid artifacts as well, on very
rare corner cases.
2016-03-30 10:05:03 -03:00
Timo Rothenpieler b3557c79dc avcodec/nvenc: Generate AUD NAL units for better compatiblity 2016-03-30 12:03:59 +02:00
Rostislav Pehlivanov 02172d93f6 Revert "aacenc: use av_clip() instead of av_clip() during quantization"
This reverts commit c0918613a0, since it
triggered a new assertion with gcc.
This bug definitely needs a true proper fix.
2016-03-30 02:31:22 +01:00
Rostislav Pehlivanov c0918613a0 aacenc: use av_clip() instead of av_clip() during quantization
Seems like clang might be miscompiling it and causing a signed integer overflow,
making a FATE test fail.
Doesn't seem to affect performance, it only runs on the ESC codebook.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2016-03-30 01:04:43 +01:00
Jovan Zelincevic b73c27151e avcodec/mips: Optimization synced to the newest code base.
FFT expanded to 2^17.

Signed-off-by: Jovan Zelincevic <jovan.zelincevic@imgtec.com>
Reviewed-by: Nedeljko Babic <Nedeljko.Babic@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-29 17:06:16 +02:00
Vittorio Giovara 7888ae8266 cfhd: Do not initialize context size
Otherwise probing and stream analisys will report a correct coded size
but an empty visible size.

Approved by: kieran
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-29 17:06:15 +02:00
Lou Logan 06eef96b69 fix some a/an typos
Signed-off-by: Lou Logan <lou@lrcd.com>
2016-03-28 14:13:17 -08:00
Marton Balint 99f2a59c2f avcodec/utils: fix packet duration of frames with discarded paddings
Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2016-03-28 23:40:12 +02:00
Kirill Gavrilov f3ec8ac0f4 lavc/mediacodec: fix zero stride for OMX.allwinner.video.decoder.avc 2016-03-28 21:23:15 +02:00
Paul B Mahol ff982e02b5 avcodec: add dca core extraction bsf
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-03-28 10:50:41 +02:00
Matthieu Bouron 308d3ed5aa lavc/mediacodec: use ternary operator to set slice-height value 2016-03-28 10:10:21 +02:00
Michael Niedermayer 8f2a1990c0 avcodec/diracdec: check bitstream size related fields for overflows
Fixes segfault
Fixes Ticket5333

Regression since bfc8a4dabe
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-28 04:39:57 +02:00
Kieran Kunhya e259dc86a8 avcodec: Remove libdcadec, we already have it merged internally 2016-03-27 04:21:38 +01:00
Michael Niedermayer c50be7a52b avcodec/h264_slice: Check PPS more extensively when its not copied
Fixes Ticket5371
Fixes null pointer dereference

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-27 05:03:44 +02:00
Dan Dennedy 28688d7c2b avcodec/audiotoolboxenc: Fix compile error on OS X 10.8.
Fixes error "libavcodec/audiotoolboxenc.c:294:50: error: use of undeclared
identifier 'kAudioCodecPropertyPacketSizeLimitForVBR'."

That was added to 10.9:
https://developer.apple.com/library/mac/releasenotes/General/APIDiffsMacOSX10_9/AudioUnit.html

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-03-26 16:35:44 +01:00
Carl Eugen Hoyos de1a0d4359 lavc/flicvideo: Implement padding in COPY chunks.
Reviewed-by: Reimar
2016-03-26 14:56:55 +01:00
Martin Vignali 495f08edb4 avcodec/exr: add support for B44 and B44A compression 2016-03-26 09:27:26 +01:00
Paul B Mahol 585cfabb79 avcodec/jpeg2000dec: add slice threading support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-03-25 22:00:52 +01:00