Anton Khirnov
92736c74fb
qsvdec: add support for P010 (10-bit 420) decoding
9 years ago
Anton Khirnov
ce320cf1c4
qsvdec: use the same mfxFrameInfo for allocating frames that was passed to DECODE_Init
...
Stop duplicating this information.
9 years ago
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.
9 years ago
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).
9 years ago
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.
9 years ago
Vittorio Giovara
9f732e4c99
tiffenc: Check av_pix_fmt_desc_get() return value
9 years ago
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.
9 years ago
Vittorio Giovara
eeb6849ced
rle: K&R formatting cosmetics
9 years ago
Diego Biurrun
326d911693
build: Drop unnecessary libavcodec <-> libavformat object dependencies
9 years ago
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.
9 years ago
Diego Biurrun
fe27792fd7
build: Move ff_mpeg12_frame_rate_tab to a separate file
...
It is also used by the Dirac parsing code.
9 years ago
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.
9 years ago
Luca Barbato
3c08b7bc76
ffv1: Report additional bitstream information in verbose mode
...
Useful to inspect samples.
9 years ago
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).
9 years ago
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>
9 years ago
Anton Khirnov
eccfb9778a
qsvdec_hevc: add the UID of the HEVC HW decoder plugin
9 years ago
Anton Khirnov
c67594a2c7
qsvdec_hevc: fix a variable name
...
hevcenc -> hevcdec, this is a _decoder_ plugin.
9 years ago
Vittorio Giovara
7a745f014f
options_table: Add aliases for color properties
...
All option names now match the ones provided by the av_color_*_name().
9 years ago
Vittorio Giovara
f172e22d6a
pixdesc: Add aliases to SMPTE color properties
...
Drop ST from names and symbols, it does not add anything distinctive or
descriptive.
9 years ago
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.
9 years ago
Clément Bœsch
4a081f224e
libavcodec: fix constness in clobber test avcodec_open2() wrappers
...
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years ago
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>
9 years ago
Martin Storsjö
31aa5335c3
libopenh264enc: Fix inconsistent whitespace
...
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years ago
Diego Biurrun
4f98bb7b6d
msmpeg4: Remove commented-out debug logging code
9 years ago
Diego Biurrun
eedbeb4c27
msmpeg4: Remove some broken, commented-out cruft
9 years ago
Diego Biurrun
3c84eaae9d
h264: Eliminate unused but set variable
...
libavcodec/h264_slice.c:1384:9: warning: variable 'droppable' set but not used
9 years ago
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.
9 years ago
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>
9 years ago
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.
9 years ago
Anton Khirnov
ad9c9440d5
qsvenc: support getting the session from an AVHWFramesContext
9 years ago
Anton Khirnov
a0524d9b1e
qsvdec: support getting the session from an AVHWFramesContext
9 years ago
Anton Khirnov
6f19bbcf85
qsvdec: move reading the user-provided session to qsv_decode_init()
...
This is a more appropriate place for it.
9 years ago
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.
9 years ago
Vittorio Giovara
40dd5166d2
truemotion2rt: Use ff_set_dimensions
9 years ago
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>
9 years ago
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>
9 years ago
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.
9 years ago
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.
9 years ago
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.
9 years ago
Anton Khirnov
606fb6c032
h264: call the hwaccel frame_start() from h264_field_start()
...
This is a more appropriate place for it.
9 years ago
Anton Khirnov
d1d7678040
h264: fix the check for mixed IDR/non-IDR slices
9 years ago
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.
9 years ago
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.
9 years ago
Anton Khirnov
bc7f426851
h264: drop tests whether the codec id is AV_CODEC_ID_H264
...
Those are unused remnants of the old SVQ3 code.
9 years ago
Anton Khirnov
8281cd5cb8
h264_cabac: drop an always true condition
9 years ago
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.
9 years ago
Anton Khirnov
1cf2f3d334
h264_sei: drop an unnecessary h264dec.h include
...
The code does not depend on the h264 decoder anymore and only needs
information from h264_ps
9 years ago
Anton Khirnov
b24dafe105
lavc: drop unnecessary h264dec.h includes
9 years ago
Anton Khirnov
70b1dcef2d
h264: tighten the valid range for ref_frame_count
...
This field (which the spec calls max_num_ref_frames) must be less than
or equal to MaxDpbFrames, which is at most 16.
9 years ago
Anton Khirnov
f638b67e57
h264: move the parameter set definitions to a new header file
...
The PS parsing code is independent from the decoder, so it makes more
sense for it to have its own separate header.
9 years ago