Martin Storsjö
d825b1a530
libopenh264: Support building with the 1.6 release
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-07-09 22:33:58 +03:00
Martin Storsjö
e8b96a7701
arm: Fix a typo in a comment
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-07-06 22:58:51 +03:00
Martin Storsjö
dc08bbf63a
vp8dsp: Clarify the first dimension of the mc function tables
...
Index 0 is w=16, 1 is wd=8, 2 is wd=4.
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-07-06 22:45:29 +03:00
Anton Khirnov
924e2ecd2b
qsvdec: when a frames ctx is supplied, use its frame dimensions
...
The allocated frame size may be larger than the coded dimensions.
2016-07-03 09:13:29 +02:00
Anton Khirnov
92736c74fb
qsvdec: add support for P010 (10-bit 420) decoding
2016-07-03 09:13:29 +02:00
Anton Khirnov
ce320cf1c4
qsvdec: use the same mfxFrameInfo for allocating frames that was passed to DECODE_Init
...
Stop duplicating this information.
2016-07-03 09:13:29 +02:00
Anton Khirnov
536bb17e96
qsvdec: make ff_qsv_map_pixfmt() return a MFX fourcc as well
...
Stop hardcoding NV12.
Also, move this function to the shared code, it will be used by the
encoder as well.
2016-07-03 09:13:29 +02:00
Mark Thompson
221ffca631
vaapi_encode: Respect driver quirks around buffer destruction
...
No longer leaks memory when used with a driver with the "render does
not destroy param buffers" quirk (i.e. Intel i965).
2016-07-02 14:09:58 +01:00
Vittorio Giovara
6c445990e6
tiffenc: Check zlib support for deflate option during initialization
...
This converts a misleading error about an option not found to a more
meaningful one.
2016-06-29 15:25:42 -04:00
Vittorio Giovara
9f732e4c99
tiffenc: Check av_pix_fmt_desc_get() return value
2016-06-29 15:25:42 -04:00
Vittorio Giovara
d8f3b0fb58
targaenc: Move size check to initialization function
...
In case of bogus input, fail early at codec initialization, rather than
at the encode function.
2016-06-29 15:25:42 -04:00
Vittorio Giovara
eeb6849ced
rle: K&R formatting cosmetics
2016-06-29 15:25:42 -04:00
Diego Biurrun
326d911693
build: Drop unnecessary libavcodec <-> libavformat object dependencies
2016-06-29 20:24:10 +02:00
Diego Biurrun
e72d6fa08a
build: Move MP2 muxer declaration away from MP3 muxer code
...
The MP2 muxer uses none of the code of the MP3 muxer.
2016-06-29 20:24:10 +02:00
Diego Biurrun
fe27792fd7
build: Move ff_mpeg12_frame_rate_tab to a separate file
...
It is also used by the Dirac parsing code.
2016-06-29 12:31:03 +02:00
Diego Biurrun
8c929037ec
build: Add a new component for H.264 parsing code
...
This fixes standalone compilation of the SVQ3 decoder, which had
incomplete dependencies related to H.264 parsing.
2016-06-29 12:31:03 +02:00
Luca Barbato
3c08b7bc76
ffv1: Report additional bitstream information in verbose mode
...
Useful to inspect samples.
2016-06-29 07:21:07 +02:00
Luca Barbato
fe6e5cbea7
ffv1: Remove version 2 and mark version 3 as non-experimental
...
The encoder produces bitstream compatible with the current specification
and version 2 is set as reserved (non-standardizable).
2016-06-29 07:21:07 +02:00
Martin Storsjö
82b7525173
Add an OpenH264 decoder wrapper
...
While it is less featureful (and slower) than the built-in H264
decoder, one could potentially want to use it to take advantage
of the cisco patent license offer.
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-06-28 14:17:43 +03:00
Anton Khirnov
eccfb9778a
qsvdec_hevc: add the UID of the HEVC HW decoder plugin
2016-06-28 08:33:27 +02:00
Anton Khirnov
c67594a2c7
qsvdec_hevc: fix a variable name
...
hevcenc -> hevcdec, this is a _decoder_ plugin.
2016-06-28 08:33:13 +02:00
Vittorio Giovara
7a745f014f
options_table: Add aliases for color properties
...
All option names now match the ones provided by the av_color_*_name().
2016-06-27 12:29:04 -04:00
Vittorio Giovara
f172e22d6a
pixdesc: Add aliases to SMPTE color properties
...
Drop ST from names and symbols, it does not add anything distinctive or
descriptive.
2016-06-27 12:27:13 -04:00
Mark Thompson
8a62d2c28f
vaapi_encode: Maintain a pool of bitstream output buffers
...
Previously we would allocate a new one for every frame. This instead
maintains an AVBufferPool of them to use as-needed.
Also makes the maximum size of an output buffer adapt to the frame
size - the fixed upper bound was a bit too easy to hit when encoding
large pictures at high quality.
2016-06-26 19:40:56 +01:00
Clément Bœsch
4a081f224e
libavcodec: fix constness in clobber test avcodec_open2() wrappers
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-06-26 21:34:04 +03:00
Martin Storsjö
0c9c4004ed
omx: Don't return > 0 from omx_encode_frame
...
The encode function is supposed to just return 0 on success.
This stems from a mixup with the return value of decode functions.
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-06-24 22:30:54 +03:00
Martin Storsjö
31aa5335c3
libopenh264enc: Fix inconsistent whitespace
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-06-24 22:30:46 +03:00
Diego Biurrun
4f98bb7b6d
msmpeg4: Remove commented-out debug logging code
2016-06-24 13:25:36 +02:00
Diego Biurrun
eedbeb4c27
msmpeg4: Remove some broken, commented-out cruft
2016-06-24 13:25:36 +02:00
Diego Biurrun
3c84eaae9d
h264: Eliminate unused but set variable
...
libavcodec/h264_slice.c:1384:9: warning: variable 'droppable' set but not used
2016-06-23 14:16:14 +02:00
Mark Thompson
11b8030309
vaapi_encode: Fix fallback when input does not match any format
...
Just a typo. Add a comment to make it clearer what it's doing.
2016-06-21 20:42:22 +01:00
Martin Storsjö
8c3c7b8920
dxva2_h264: Remove an unused variable
...
This was introduced by mistake in 39cdbb12aa
(only one of the
added variables were really needed).
Signed-off-by: Martin Storsjö <martin@martin.st>
2016-06-21 22:09:35 +03:00
Anton Khirnov
32c8359093
lavc: export the timestamps when decoding in AVFrame.pts
...
Currently it's exported as AVFrame.pkt_pts, which is also the only use
for that field. The reason it is done like this is that lavc used to
export various codec-specific "timing" information in AVFrame.pts, which
is not done anymore.
Since it is confusing to the callers to have a separate field which is
used only for decoder timestamps and nothing else, deprecate pkt_pts and
use just AVFrame.pts everywhere.
2016-06-21 19:54:42 +02:00
Anton Khirnov
ad9c9440d5
qsvenc: support getting the session from an AVHWFramesContext
2016-06-21 19:53:38 +02:00
Anton Khirnov
a0524d9b1e
qsvdec: support getting the session from an AVHWFramesContext
2016-06-21 19:53:38 +02:00
Anton Khirnov
6f19bbcf85
qsvdec: move reading the user-provided session to qsv_decode_init()
...
This is a more appropriate place for it.
2016-06-21 19:52:19 +02:00
Anton Khirnov
e85f6f7f8d
lavc: allow using AVCodecContext.hw_frames_ctx for decoding
...
For now it will only be used by the default get_buffer2 callback for
allocating hw frames.
2016-06-21 19:52:17 +02:00
Vittorio Giovara
40dd5166d2
truemotion2rt: Use ff_set_dimensions
2016-06-21 09:38:56 -04:00
Vittorio Giovara
a816432337
pixdesc: Add new SMPTE 431, 432, and 2085 color properties
...
Appeared in H.264 2016/02.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-06-21 09:29:04 -04:00
Neil Birkbeck
5d560d38de
pixfmt: Add ARIB STD-B76 color transfer characteristic
...
Adding hybrid log-gamma (https://en.wikipedia.org/wiki/Hybrid_Log-Gamma )
based on the standardization in ARIB STD-B67:
http://www.arib.or.jp/english/html/overview/doc/2-STD-B67v1_0.pdf
The choice of enum value of 18 is consistent with HEVC:
http://phenix.it-sudparis.eu/jct/doc_end_user/current_document.php?id=10481
And also with latest proposal for color format in mkv:
https://mailarchive.ietf.org/arch/search/?email_list=cellar&gbt=1&q=Colour+Format+proposal
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-06-21 09:02:46 -04:00
Anton Khirnov
58640fe89e
h264: handle frame recovery in h264_field_start()
...
This is a more appropriate place for this. H264Context.recovery_frame is
shared between frame threads, so modifying it where it is right now is
invalid.
2016-06-21 11:20:51 +02:00
Anton Khirnov
e26c64148b
h264: discard slices of redundant pictures right after parsing the slice header
...
Going through the whole decoder initialization process for a slice we
are not going to decode is unnecessary and potentially dangerous.
2016-06-21 11:20:26 +02:00
Anton Khirnov
6efc463858
h264: always set redundant_pic_count during slice header parsing
...
It is always checked in the surrounding code, so this make sure we don't
see a value from an old slice.
2016-06-21 11:20:20 +02:00
Anton Khirnov
606fb6c032
h264: call the hwaccel frame_start() from h264_field_start()
...
This is a more appropriate place for it.
2016-06-21 11:19:51 +02:00
Anton Khirnov
d1d7678040
h264: fix the check for mixed IDR/non-IDR slices
2016-06-21 11:19:19 +02:00
Anton Khirnov
b13fc1e344
h264: do not pass H264Context to h264_slice_header_parse()
...
This should make it more clear that this function does not need any
decoder-global state other than the parameter sets.
2016-06-21 11:18:44 +02:00
Anton Khirnov
996f13413b
h264: fix warnings in fill_filter_caches_inter()
...
The code does some weird casting to a 2-dimensional sub-array of
ref2frm. This is not necessary, since only one dimension is needed
there.
2016-06-21 11:18:15 +02:00
Anton Khirnov
bc7f426851
h264: drop tests whether the codec id is AV_CODEC_ID_H264
...
Those are unused remnants of the old SVQ3 code.
2016-06-21 11:17:59 +02:00
Anton Khirnov
8281cd5cb8
h264_cabac: drop an always true condition
2016-06-21 11:17:53 +02:00
Anton Khirnov
5c2fb561d9
h264: add H264_ prefix to the NAL unit types
...
This will prevent conflicts e.g. in code that deals with both h264 and
hevc.
2016-06-21 11:17:28 +02:00