Frédéric Devernay
eec67f2522
avcodec/dnxhdenc: fix DNxHR 444 encoding crashes
...
Fixes #6649 .
2017-09-26 10:00:51 +02:00
Paul B Mahol
28e9ba951d
avcodec/dnxhdenc: call slice thread code only if slice threading is enabled
2017-08-17 11:42:16 +02:00
Paul B Mahol
9835ee60da
avcodec/dnxhdenc: enable frame threading
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-07-27 15:23:45 +02:00
Michael Niedermayer
900fe8ee5d
avcodec/dnxhdenc: Assert that frame size is not assigned an error code
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-15 00:16:20 +02:00
Paul B Mahol
f6b5a5c7d0
avcodec/dnxhdenc: fix recent regression
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-04-15 09:23:43 +02:00
Paul B Mahol
5dedb2afd6
avcodec/dnxhd*: add ff_dnxhd_get_hr_frame_size()
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-04-14 16:09:07 +02:00
Paul B Mahol
34c2eea3d8
avcodec/dnxhdenc: make sure that mb_height > 255 can be stored
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-04-14 16:00:35 +02:00
Paul B Mahol
358d4524cc
avcodec/dnxhdenc: fix indentation issue
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-04-01 18:51:18 +02:00
Paul B Mahol
f078bc4c5e
avcodec/dnxhdenc: DNxHR 444 and HQX support
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-04-01 18:46:40 +02:00
Clément Bœsch
e809c2e40d
Merge commit '47756f51fe836959ffa5c6e2baeacbd71e150069'
...
* commit '47756f51fe836959ffa5c6e2baeacbd71e150069':
dnxhdenc: Drop pointless, commented-out debug output
Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:18:24 +01:00
Diego Biurrun
47756f51fe
dnxhdenc: Drop pointless, commented-out debug output
2016-10-27 12:21:46 +02:00
Michael Niedermayer
6c5b98d40b
avcodec/dnxhdenc: Move allocation out of radix_sort()
...
Its slow, its not checked, FPU state is not clean either currently there
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-21 14:17:50 +02:00
Mark Reid
61fac0ea09
libavcodec/dnxhdenc: fix typo, check if profile is dnxhr 444 or hqx
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-22 02:27:15 +02:00
Mark Reid
6051bb338c
libavcodec/dnxhdenc: add edge emulate for dnxhr
...
Fixes handling for resolutions that are not multiples of 16.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-12 23:25:36 +02:00
Mark Reid
ece12db4f1
libavcodec/dnxhdenc: add support for dnxhr encoding
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-23 14:07:43 +02:00
Mark Reid
cdca1902ab
libavcodec/dnxhdenc: add support for variable mircoblock counts
...
dnxhr has variable resolution, 8160 is the mb num for 1920x1080
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-23 14:07:37 +02:00
Mark Reid
41d7642a7b
libavcodec/dnxhd: add dnxhr profiles
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-20 13:40:06 +02:00
Clément Bœsch
8ef57a0d61
Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb'
...
* commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb':
cosmetics: Fix spelling mistakes
Merged-by: Clément Bœsch <u@pkh.me>
2016-06-21 21:55:34 +02:00
Diego Biurrun
5afb94c817
Mark read-only tables as static
2016-05-05 10:48:34 +02:00
Vittorio Giovara
41ed7ab45f
cosmetics: Fix spelling mistakes
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-05-04 18:16:21 +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
Diego Biurrun
8dead2aaca
Move const qualifier before type name
2016-03-23 09:25:30 +01:00
Luca Barbato
99214d42a9
dnxhd: Make the encoder message friendlier
2016-02-09 20:02:31 +01:00
Clément Bœsch
fb99ef0bd3
avcodec: use AV_OPT_TYPE_BOOL in a bunch of places
2015-12-04 15:37:05 +01:00
Timothy Gu
bc22cd244e
dnxhdenc: Optimize get_pixels_8x4_sym for 10-bit
...
This reverts commit 628e6d0164
and uses
a better fix.
Before:
4483 decicycles in get_pixels_8x4_sym, 131032 runs, 40 skips
After:
2569 decicycles in get_pixels_8x4_sym, 131054 runs, 18 skips
2015-10-20 12:36:29 -07:00
Christophe Gisquet
96b165fae2
dnxhd: interleave AC levels and flags
...
This allows more efficient access to the array as the level and flags
are contiguous. Around 4% faster coefficient decoding.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-15 02:46:29 +02:00
Christophe Gisquet
234369d0fd
dnxhdenc: fix access outside of image
...
This is the same test as for the 8bit case.
2015-10-13 18:53:10 -03:00
Christophe Gisquet
9f3bfe30dd
mpegvideo: dnxhdenc: permute 10bits content
...
Dequant or encoding were trying to reverse a scan that hadn't been
applied...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-13 00:01:39 +02:00
Hendrik Leppkes
773570a9dc
Merge commit 'cf7d2f2d2134c0854edf2db91e7436ac2bc9874f'
...
* commit 'cf7d2f2d2134c0854edf2db91e7436ac2bc9874f':
lavc: Simplify checking quant bias option
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-09-29 15:27:59 +02:00
Vittorio Giovara
cf7d2f2d21
lavc: Simplify checking quant bias option
2015-09-29 14:33:01 +02:00
Carl Eugen Hoyos
7f9656f10d
lavc/dnxhdenc: Fix ibias default.
...
Fixes a regression since a8ab64d2
reported by Rens Dijkshoorn, rens offlinemedia nl.
2015-08-27 02:59:43 +02:00
Michael Niedermayer
444e9874a7
Merge commit 'def97856de6021965db86c25a732d78689bd6bb0'
...
* commit 'def97856de6021965db86c25a732d78689bd6bb0':
lavc: AV-prefix all codec capabilities
Conflicts:
cmdutils.c
ffmpeg.c
ffplay.c
libavcodec/8svx.c
libavcodec/aacenc.c
libavcodec/ac3dec.c
libavcodec/adpcm.c
libavcodec/alac.c
libavcodec/atrac3plusdec.c
libavcodec/bink.c
libavcodec/dnxhddec.c
libavcodec/dvdec.c
libavcodec/dvenc.c
libavcodec/ffv1dec.c
libavcodec/ffv1enc.c
libavcodec/fic.c
libavcodec/flacdec.c
libavcodec/flacenc.c
libavcodec/flvdec.c
libavcodec/fraps.c
libavcodec/frwu.c
libavcodec/gifdec.c
libavcodec/h261dec.c
libavcodec/hevc.c
libavcodec/iff.c
libavcodec/imc.c
libavcodec/libopenjpegdec.c
libavcodec/libvo-aacenc.c
libavcodec/libvorbisenc.c
libavcodec/libvpxdec.c
libavcodec/libvpxenc.c
libavcodec/libx264.c
libavcodec/mjpegbdec.c
libavcodec/mjpegdec.c
libavcodec/mpegaudiodec_float.c
libavcodec/msmpeg4dec.c
libavcodec/mxpegdec.c
libavcodec/nvenc_h264.c
libavcodec/nvenc_hevc.c
libavcodec/pngdec.c
libavcodec/qpeg.c
libavcodec/ra288.c
libavcodec/rv10.c
libavcodec/s302m.c
libavcodec/sp5xdec.c
libavcodec/takdec.c
libavcodec/tiff.c
libavcodec/tta.c
libavcodec/utils.c
libavcodec/v210dec.c
libavcodec/vp6.c
libavcodec/vp9.c
libavcodec/wavpack.c
libavcodec/yop.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 22:50:18 +02:00
Michael Niedermayer
94d68a41fa
Merge commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615'
...
* commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615':
lavc: AV-prefix all codec flags
Conflicts:
doc/examples/muxing.c
ffmpeg.c
ffmpeg_opt.c
ffplay.c
libavcodec/aacdec.c
libavcodec/aacenc.c
libavcodec/ac3dec.c
libavcodec/ac3enc_float.c
libavcodec/atrac1.c
libavcodec/atrac3.c
libavcodec/atrac3plusdec.c
libavcodec/dcadec.c
libavcodec/ffv1enc.c
libavcodec/h264.c
libavcodec/h264_loopfilter.c
libavcodec/h264_mb.c
libavcodec/imc.c
libavcodec/libmp3lame.c
libavcodec/libtheoraenc.c
libavcodec/libtwolame.c
libavcodec/libvpxenc.c
libavcodec/libxavs.c
libavcodec/libxvid.c
libavcodec/mpeg12dec.c
libavcodec/mpeg12enc.c
libavcodec/mpegaudiodec_template.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_motion.c
libavcodec/nellymoserdec.c
libavcodec/nellymoserenc.c
libavcodec/nvenc.c
libavcodec/on2avc.c
libavcodec/options_table.h
libavcodec/opus_celt.c
libavcodec/pngenc.c
libavcodec/ra288.c
libavcodec/ratecontrol.c
libavcodec/twinvq.c
libavcodec/vc1_block.c
libavcodec/vc1_loopfilter.c
libavcodec/vc1_mc.c
libavcodec/vc1dec.c
libavcodec/vorbisdec.c
libavcodec/vp3.c
libavcodec/wma.c
libavcodec/wmaprodec.c
libavcodec/x86/hpeldsp_init.c
libavcodec/x86/me_cmp_init.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 22:10:35 +02:00
Vittorio Giovara
def97856de
lavc: AV-prefix all codec capabilities
...
Express bitfields more simply.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-27 15:24:58 +01:00
Vittorio Giovara
7c6eb0a1b7
lavc: AV-prefix all codec flags
...
Convert doxygen to multiline and express bitfields more simply.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-27 15:24:58 +01:00
Michael Niedermayer
e36db49b7b
avcodec: Add a min size parameter to ff_alloc_packet2()
...
This parameter can be used to inform the allocation code about how much
downsizing might occur, and can be used to optimize how to allocate the
packet
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 19:57:52 +02:00
Michael Niedermayer
5362df2ee3
avcodec: remove unused sd variables
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-22 21:04:17 +02:00
Michael Niedermayer
caba19a5be
avcodec/dnxhdenc: Set pict type for AV_PKT_DATA_QUALITY_STATS correctly
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-22 20:46:52 +02:00
Michael Niedermayer
c40ecffd31
Replace AV_PKT_DATA_QUALITY_FACTOR by AV_PKT_DATA_QUALITY_STATS
...
The stats are a superset of the quality factor, also allowing the picture type and encoder "PSNR" stats to be exported
This also replaces the native by fixed little endian order for the affected side data
AV_PKT_DATA_QUALITY_FACTOR is left as a synonym of AV_PKT_DATA_QUALITY_STATS
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-22 19:31:52 +02:00
Michael Niedermayer
495eee0123
Merge commit '40cf1bbacc6220a0aa6bed5c331871d43f9ce370'
...
* commit '40cf1bbacc6220a0aa6bed5c331871d43f9ce370':
Deprecate avctx.coded_frame
Conflicts:
ffmpeg.c
libavcodec/a64multienc.c
libavcodec/asvenc.c
libavcodec/cljrenc.c
libavcodec/dpxenc.c
libavcodec/gif.c
libavcodec/mpegvideo_enc.c
libavcodec/nvenc.c
libavcodec/proresenc_kostya.c
libavcodec/pthread_frame.c
libavcodec/rawenc.c
libavcodec/sunrastenc.c
libavcodec/tiffenc.c
libavcodec/version.h
libavcodec/xbmenc.c
libavcodec/xwdenc.c
libavdevice/v4l2.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 01:17:15 +02:00
Michael Niedermayer
e5bae39f46
Merge commit '5d3addb937946eca5391e40b5e6308e74ac6f77b'
...
* commit '5d3addb937946eca5391e40b5e6308e74ac6f77b':
Add a quality factor packet side data
Conflicts:
doc/APIchanges
ffmpeg.c
libavcodec/avcodec.h
libavcodec/mpegvideo_enc.c
libavcodec/version.h
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 00:54:42 +02:00
Michael Niedermayer
b1fad7ac20
Merge commit 'd6604b29ef544793479d7fb4e05ef6622bb3e534'
...
* commit 'd6604b29ef544793479d7fb4e05ef6622bb3e534':
Gather all coded_frame allocations and free functions to a single place
Conflicts:
libavcodec/a64multienc.c
libavcodec/asvenc.c
libavcodec/cljrenc.c
libavcodec/dpxenc.c
libavcodec/dvenc.c
libavcodec/gif.c
libavcodec/huffyuvenc.c
libavcodec/jpeglsenc.c
libavcodec/libopenjpegenc.c
libavcodec/libtheoraenc.c
libavcodec/libvpxenc.c
libavcodec/mpegvideo_enc.c
libavcodec/nvenc.c
libavcodec/pngenc.c
libavcodec/proresenc_kostya.c
libavcodec/sunrastenc.c
libavcodec/tiffenc.c
libavcodec/utils.c
libavcodec/utvideoenc.c
libavcodec/v210enc.c
libavcodec/v410enc.c
libavcodec/xbmenc.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 23:43:05 +02:00
Vittorio Giovara
40cf1bbacc
Deprecate avctx.coded_frame
...
The rationale is that coded_frame was only used to communicate key_frame,
pict_type and quality to the caller, as well as a few other random fields,
in a non predictable, let alone consistent way.
There was agreement that there was no use case for coded_frame, as it is
a full-sized AVFrame container used for just 2-3 int-sized properties,
which shouldn't even belong into the AVCodecContext in the first place.
The appropriate AVPacket flag can be used instead of key_frame, while
quality is exported with the new AVPacketSideData quality factor.
There is no replacement for the other fields as they were unreliable,
mishandled or just not used at all.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-20 15:06:50 +01:00
Vittorio Giovara
5d3addb937
Add a quality factor packet side data
...
This is necessary to preserve the quality information currently exported
with coded_frame. Add the new side data to every encoder that needs it,
and use it in avconv.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-20 15:06:47 +01:00
Vittorio Giovara
d6604b29ef
Gather all coded_frame allocations and free functions to a single place
...
Allocating coded_frame is what most encoders do anyway, so it makes
sense to always allocate and free it in a single place. Moreover a lot
of encoders freed the frame with av_freep() instead of the correct API
av_frame_free().
This bring uniformity to encoder behaviour and prevents applications
from erroneusly accessing this field when not allocated. Additionally
this helps isolating encoders that export information with coded_frame,
and heavily simplifies its deprecation.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-20 14:16:15 +01:00
Michael Niedermayer
a8ab64d2f7
Merge commit '910247f1720c6aae422723c05dac6d0b19f20bec'
...
* commit '910247f1720c6aae422723c05dac6d0b19f20bec':
lavc: Deprecate avctx.{inter,intra}_quant_bias
Conflicts:
libavcodec/mpegvideo_enc.c
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-03 03:40:22 +02:00
Vittorio Giovara
910247f172
lavc: Deprecate avctx.{inter,intra}_quant_bias
...
They are used by dnxhd and mpegvideo_enc exclusively, move them to codec
private options instead.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-02 22:37:59 +01:00
James Almer
ba625dd8a1
avcodec: use av_mod_uintp2() where useful
...
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-04-21 22:41:20 -03:00
Michael Niedermayer
8f7b022c8c
Merge commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25'
...
* commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25':
lavc: Replace av_dlog and tprintf with internal macros
Conflicts:
libavcodec/aacdec.c
libavcodec/audio_frame_queue.c
libavcodec/bitstream.c
libavcodec/dcadec.c
libavcodec/dnxhddec.c
libavcodec/dvbsubdec.c
libavcodec/dvdec.c
libavcodec/dvdsubdec.c
libavcodec/get_bits.h
libavcodec/gifdec.c
libavcodec/h264.h
libavcodec/h264_cabac.c
libavcodec/h264_cavlc.c
libavcodec/h264_loopfilter.c
libavcodec/h264_refs.c
libavcodec/imc.c
libavcodec/interplayvideo.c
libavcodec/jpeglsdec.c
libavcodec/libopencore-amr.c
libavcodec/mjpegdec.c
libavcodec/mpeg12dec.c
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_parser.c
libavcodec/pngdec.c
libavcodec/ratecontrol.c
libavcodec/rv10.c
libavcodec/svq1dec.c
libavcodec/vqavideo.c
libavcodec/wmadec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 04:10:10 +02:00
Vittorio Giovara
6a85dfc830
lavc: Replace av_dlog and tprintf with internal macros
2015-04-19 12:41:59 +01:00