OSDN Git Service
Diego Biurrun [Wed, 11 Nov 2015 16:38:43 +0000 (17:38 +0100)]
Mark read-only tables as static
Diego Biurrun [Mon, 2 May 2016 05:34:35 +0000 (07:34 +0200)]
configure: Document --enable-libfontconfig
Diego Biurrun [Tue, 3 May 2016 13:24:17 +0000 (15:24 +0200)]
vf_frei0r: Drop overly verbose and broken debug output
Vittorio Giovara [Wed, 27 Apr 2016 17:45:23 +0000 (13:45 -0400)]
cosmetics: Fix spelling mistakes
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Alexandra Hájková [Sat, 23 Apr 2016 14:44:11 +0000 (16:44 +0200)]
Remove unnecessary get_bits.h #includes and add missing headers where needed.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 3 May 2016 12:32:08 +0000 (14:32 +0200)]
h264: Drop broken trace debug output
Diego Biurrun [Thu, 14 Apr 2016 16:25:35 +0000 (18:25 +0200)]
vaapi: Drop pointless debug output
Diego Biurrun [Thu, 14 Apr 2016 16:25:16 +0000 (18:25 +0200)]
libopencore-amr: Fix ff_dlog()/av_log() invocations
Diego Biurrun [Thu, 14 Apr 2016 16:24:51 +0000 (18:24 +0200)]
Drop pointless assert.h #includes
Luca Barbato [Wed, 17 Feb 2016 01:16:42 +0000 (02:16 +0100)]
mpegts: Validate the SL Packet Header Configuration
timeStampLength, OCRLength and AU_Length have well specified upper
boundaries.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Diego Biurrun [Fri, 22 Apr 2016 16:59:43 +0000 (18:59 +0200)]
fate: Add test for MTS2/MSS4
Martin Storsjö [Wed, 27 Apr 2016 11:36:57 +0000 (14:36 +0300)]
rtpdec_vp9: Support parsing the scalability structure
We still only support one single layer though, but this allows
receiving streams that have this structure present even for
single layer streams.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 29 Apr 2016 19:19:33 +0000 (22:19 +0300)]
rtpdec_h264: Use avpriv_report_missing_feature instead of a manual av_log
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 29 Apr 2016 17:37:24 +0000 (20:37 +0300)]
rtpdec: Use AVERROR_PATCHWELCOME instead of AVERROR(ENOSYS) for unimplemented features
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 27 Apr 2016 11:36:24 +0000 (14:36 +0300)]
rtpdec_vp9: Update header parsing to spec draft 02
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 27 Apr 2016 11:03:18 +0000 (14:03 +0300)]
rtpdec_vp9: Make sure to free the temp buffer on close
Signed-off-by: Martin Storsjö <martin@martin.st>
Janne Grunau [Sat, 30 Apr 2016 14:05:32 +0000 (16:05 +0200)]
Revert "mmaldec: autodetect by default" since it breaks linking on systems without mmal libraries
This reverts commit
33ac77e850efdfd0e8835950c3d947baffd4df45.
wm4 [Thu, 14 Apr 2016 10:21:27 +0000 (12:21 +0200)]
mmaldec: autodetect by default
It qualifies as a system library.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
wm4 [Thu, 14 Apr 2016 10:21:26 +0000 (12:21 +0200)]
mmaldec: limit internal buffering
This uses a new MMAL feature, which limits the number of extra frames
that can be buffered within the decoder. VIDEO_MAX_NUM_CALLBACKS can
be defined as positive or negative number. Positive numbers are
absolute, and can lead to deadlocks if the user underestimates the
number of required buffers. Negative numbers specify the number of extra
buffers, e.g. -1 means no extra buffer, (-1-N) means N extra buffers.
Set a gratuitous default of -11 (N=10). This is much lower than the
firmware default, which appears to be 96.
This is backwards compatible, but needs a symbol only present in newer
firmware headers. (It's an enum item, so it requires a check in
configure.)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
wm4 [Thu, 14 Apr 2016 10:21:24 +0000 (12:21 +0200)]
mmaldec: print the MMAL format FourCC automatically
Slight simplification. The result is the same. Also, change the
wording of the message as requested in patch review.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
wm4 [Thu, 14 Apr 2016 10:21:23 +0000 (12:21 +0200)]
configure: fix mmal build dependencies
The mmal decoders do not depend on the software decoders.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
wm4 [Thu, 14 Apr 2016 10:21:22 +0000 (12:21 +0200)]
mmaldec: send only a single EOS packet on flushing
Fixes apparent mmal_port_disable() freezes in ffmmal_stop_decoder() when
calling ffmmal_decode() with flush semantics a large number of times in
a row.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
wm4 [Thu, 14 Apr 2016 10:21:21 +0000 (12:21 +0200)]
mmaldec: correct package buffering accounting
The assert in ffmmal_stop_decoder() could trigger sometimes. The
packets_buffered counter was indeed not correctly maintained, and
packets were not subtracted from it if they were still in the waiting
queue.
For some reason, this happened especially with VC-1.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
wm4 [Thu, 14 Apr 2016 10:21:20 +0000 (12:21 +0200)]
mmaldec: add vc1 decoding support
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Julian Scheel [Thu, 14 Apr 2016 10:21:19 +0000 (12:21 +0200)]
mmaldec: Add mpeg2 decoding support
Register mmaldec as mpeg2 decoder. Supporting mpeg2 in mmaldec is just a
matter of setting the correct MMAL_ENCODING on the input port. To ease the
addition of further supported mmal codecs a macro is introduced to generate
the decoder and decoder class structs.
Signed-off-by: Julian Scheel <julian@jusst.de>
Signed-off-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Julian Scheel [Thu, 14 Apr 2016 10:21:18 +0000 (12:21 +0200)]
mmaldec: Fix avpriv_atomic_get usage
There is no avpriv_atomic_get, instead avpriv_atomic_int_get is to be used for
integers. This fixes building mmaldec.
Signed-off-by: Julian Scheel <julian@jusst.de>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Michael Niedermayer [Thu, 14 Apr 2016 10:21:17 +0000 (12:21 +0200)]
mmaldec: Use av_assert0() instead of assert()
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diego Biurrun [Thu, 7 Apr 2016 16:52:10 +0000 (18:52 +0200)]
testprogs: Mark some tables as static const
Diego Biurrun [Sat, 16 Apr 2016 16:06:16 +0000 (18:06 +0200)]
fate: Add test for MSS1
Vittorio Giovara [Fri, 22 Apr 2016 21:28:04 +0000 (17:28 -0400)]
dds: Add support for monochrome images
Vittorio Giovara [Fri, 22 Apr 2016 21:28:03 +0000 (17:28 -0400)]
dds: Drop gray-alpha swapping
The original sample was generated with invalid software.
Martin Storsjö [Mon, 25 Apr 2016 07:12:24 +0000 (10:12 +0300)]
dxva2_h264: Unbreak compilation after
3176217c6
Signed-off-by: Martin Storsjö <martin@martin.st>
Luca Barbato [Thu, 21 Apr 2016 14:09:38 +0000 (16:09 +0200)]
ape: Unbreak adaptcoeffs computation
And simplify and explain the expression.
Fault introduced in
f3fdef108eb06b1e71b29152bf6822519e787efe
Anton Khirnov [Wed, 13 Apr 2016 15:33:59 +0000 (17:33 +0200)]
h264: eliminate max_contexts
It is always equal to nb_slice_ctx.
Anton Khirnov [Wed, 13 Apr 2016 15:31:27 +0000 (17:31 +0200)]
h264: allocate some tables per slice contexts, not threads
This is more correct and avoids wasting space when frame threading is
used.
Anton Khirnov [Wed, 13 Apr 2016 15:28:26 +0000 (17:28 +0200)]
h264: remove an artificial restriction on the number of slice threads
This limit is now unnecessary, we can easily support an arbitrary number
of threads.
Anton Khirnov [Wed, 13 Apr 2016 15:17:51 +0000 (17:17 +0200)]
h264: remove pointless setting of some variables in loop_filter
Those should already be set to the correct values.
Anton Khirnov [Wed, 13 Apr 2016 15:15:40 +0000 (17:15 +0200)]
h264: remove a pointless comment
Anton Khirnov [Wed, 13 Apr 2016 11:52:36 +0000 (13:52 +0200)]
h264: make slice threading work with deblocking_filter=1
In such a case, decode the MBs in parallel without the loop filter, then
execute the filter serially.
The ref2frm array was previously moved to H264SliceContext. That was
incorrect, since it applies to all the slices and should properly be in
H264Context (it did not actually break decoding, since this distinction
only becomes relevant with slice threading and deblocking_filter=1,
which was not implemented before this commit). The ref2frm array is thus
moved back to H264Context.
Anton Khirnov [Mon, 11 Apr 2016 14:32:02 +0000 (16:32 +0200)]
h264: remove H264Context.pict_type
It is not used for anything internally, just exported in the output
frames. So remove the indirection and set it directly in frame_start().
Anton Khirnov [Mon, 11 Apr 2016 14:19:01 +0000 (16:19 +0200)]
h264: drop a pointless indirection
Anton Khirnov [Mon, 11 Apr 2016 14:04:05 +0000 (16:04 +0200)]
h264: remove unused H264SliceContext.rbsp_buffer
Anton Khirnov [Mon, 11 Apr 2016 13:44:57 +0000 (15:44 +0200)]
h264: merge ff_h264_free_context() into h264_decode_end()
It is no longer called from outside the h264 decoder.
Anton Khirnov [Mon, 11 Apr 2016 13:38:42 +0000 (15:38 +0200)]
h264: eliminate low_delay
It is always unconditionally initialized in decode_postinit() and then
immediately used in one place further below. All the other places where
it is accessed are just useless fluff.
Anton Khirnov [Mon, 11 Apr 2016 12:17:10 +0000 (14:17 +0200)]
h264: remove a stale comment
This comment used to apply to code that was removed.
Anton Khirnov [Mon, 11 Apr 2016 08:06:08 +0000 (10:06 +0200)]
h264_refs: remove an unused parameter from ff_h264_fill_mbaff_ref_list()
Anton Khirnov [Mon, 11 Apr 2016 08:05:25 +0000 (10:05 +0200)]
h264_refs: make the H264Context const where possible
Anton Khirnov [Mon, 11 Apr 2016 07:56:29 +0000 (09:56 +0200)]
h264_refs: reorder functions to avoid forward declarations
Anton Khirnov [Mon, 11 Apr 2016 07:27:08 +0000 (09:27 +0200)]
h264: eliminate copy_fields
It is very fragile against fields being moved and hides what is actually
being copied. Copy all the fields explicitly instead.
Anton Khirnov [Tue, 29 Mar 2016 02:19:50 +0000 (04:19 +0200)]
h264_parser: remove the remaining dependencies on the h264 decoder
Anton Khirnov [Tue, 29 Mar 2016 02:09:14 +0000 (04:09 +0200)]
h264: decouple extradata parsing from the decoder
This will allow decoupling the parser from the decoder.
Anton Khirnov [Tue, 22 Mar 2016 12:31:21 +0000 (13:31 +0100)]
h264: decouple h264_sei from the h264 decoder
Make the SEI parsing independent of the H264Context, to allow
decoupling the parser from the decoder.
Anton Khirnov [Mon, 21 Mar 2016 15:14:31 +0000 (16:14 +0100)]
h264: factor out calculating the POC count into a separate file
This will allow decoupling the parser from the decoder.
Anton Khirnov [Mon, 28 Mar 2016 08:56:51 +0000 (10:56 +0200)]
h264_parser: move the H264DSPContext to the parser context
Anton Khirnov [Tue, 22 Mar 2016 12:31:21 +0000 (13:31 +0100)]
h264: decouple h264_ps from the h264 decoder
Make the SPS/PPS parsing independent of the H264Context, to allow
decoupling the parser from the decoder. The change is modelled after the
one done earlier for HEVC.
Move the dequant buffers to the PPS to avoid complex checks whether they
changed and an expensive copy for frame threads.
Anton Khirnov [Mon, 21 Mar 2016 18:17:03 +0000 (19:17 +0100)]
h264_parser: eliminate H264SliceContext usage
It is no longer needed for anything.
Anton Khirnov [Mon, 21 Mar 2016 15:50:11 +0000 (16:50 +0100)]
h264_parse: make sure the ref count is zeroed on all failure paths
Anton Khirnov [Mon, 21 Mar 2016 15:14:31 +0000 (16:14 +0100)]
h264: factor out parsing the reference count into a separate file
This will allow decoupling the parser from the decoder.
Anton Khirnov [Mon, 21 Mar 2016 15:30:38 +0000 (16:30 +0100)]
h264: stop testing whether the reference count changes in ff_set_ref_count()
It is no longer necessary after
741b494fa8cd28a7d096349bac183893c236e3f9
Anton Khirnov [Mon, 21 Mar 2016 15:25:29 +0000 (16:25 +0100)]
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.
Anton Khirnov [Mon, 21 Mar 2016 14:38:31 +0000 (15:38 +0100)]
h264_parser: switch to h2645_parse for NAL unescaping
Remove now unused ff_h264_decode_nal().
Anton Khirnov [Tue, 19 Apr 2016 17:37:49 +0000 (19:37 +0200)]
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.
Vittorio Giovara [Mon, 11 Apr 2016 21:28:26 +0000 (17:28 -0400)]
libx264: Forbid inverted Stereo3D mode
Vittorio Giovara [Mon, 11 Apr 2016 21:28:25 +0000 (17:28 -0400)]
libx264: Allow Stereo3D monoscopic value
Diego Biurrun [Mon, 11 Apr 2016 14:21:36 +0000 (16:21 +0200)]
build: Silence the lcov-reset target
Martin Storsjö [Wed, 20 Apr 2016 10:38:35 +0000 (13:38 +0300)]
libavformat: Update the comment about AVOutputFormat flags
Add a flag which applies here, which had been missed.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 20 Apr 2016 10:22:41 +0000 (13:22 +0300)]
movenc: Handle pts == NOPTS when autoflushing
This muxer generally handles pts == NOPTS by using dts instead;
do this for consistency here as well.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 19 Apr 2016 11:07:25 +0000 (14:07 +0300)]
movenc: Update a comment to reflect how the code actually behaves
This codepath isn't quite as bad as it used to sound, if fragments
are cut automatically at video packets.
Signed-off-by: Martin Storsjö <martin@martin.st>
Luca Barbato [Thu, 14 Apr 2016 09:34:07 +0000 (11:34 +0200)]
img2enc: Refactor the atomic renaming code
And use it for the separate-plane side-feature as well.
Bug-Id: 935
Luca Barbato [Tue, 12 Apr 2016 20:14:26 +0000 (22:14 +0200)]
ape: Avoid undefined behaviour
Avoid the clang warning
"warning: shifting a negative signed value is undefined"
Luca Barbato [Tue, 12 Apr 2016 20:14:26 +0000 (22:14 +0200)]
indeo3: Avoid undefined behaviour
Avoid the clang warning
"warning: shifting a negative signed value is undefined"
Derek Buitenhuis [Tue, 5 Apr 2016 15:21:35 +0000 (11:21 -0400)]
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>
Thomas Guillem [Sun, 17 Apr 2016 07:43:01 +0000 (10:43 +0300)]
pixfmt: fix wrong comment
The h264/hevc Annex E colour primaries table says that AVCOL_SPC_SMPTE170M is
similar than AVCOL_SPC_SMPTE240M. These two values are not similar than
AVCOL_SPC_BT470BG.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Sun, 20 Mar 2016 09:00:58 +0000 (10:00 +0100)]
Generate the lists of enabled protocols/bsfs from configure.
Anton Khirnov [Fri, 15 Apr 2016 08:15:54 +0000 (10:15 +0200)]
hwcontext: initialize sw_format in av_hwframe_ctx_alloc()
Anton Khirnov [Fri, 15 Apr 2016 08:10:57 +0000 (10:10 +0200)]
lavc: move the vaapi encoders further down in the list of codecs
Right now they are the first encoders for those codecs in the list, so
they are selected when the caller requests a codec by id.
Since they require special treatment, they should not be selected by
default if there are other encoders (e.g. libx264/5) available.
Mark Thompson [Tue, 12 Apr 2016 22:18:53 +0000 (23:18 +0100)]
vaapi_h265: Add -qp option, use it to replace use of -global_quality
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Mark Thompson [Tue, 12 Apr 2016 22:18:13 +0000 (23:18 +0100)]
vaapi_h265: Add constant-bitrate encode support
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Mark Thompson [Tue, 12 Apr 2016 22:16:30 +0000 (23:16 +0100)]
vaapi_h264: Add encode quality option (for quality-speed tradeoff)
Only supported on VAAPI 0.36 and higher.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Mark Thompson [Tue, 12 Apr 2016 22:15:40 +0000 (23:15 +0100)]
vaapi_h264: Add -qp option, use it to replace use of -global_quality
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Mark Thompson [Tue, 12 Apr 2016 22:15:03 +0000 (23:15 +0100)]
vaapi_encode: Add support for codec-local options
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Mark Thompson [Tue, 12 Apr 2016 22:14:23 +0000 (23:14 +0100)]
vaapi_h264: Add constant-bitrate encode support
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Mark Thompson [Tue, 12 Apr 2016 22:13:31 +0000 (23:13 +0100)]
vaapi_encode: Refactor slightly to allow easier setting of global options
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Sun, 10 Apr 2016 09:24:03 +0000 (11:24 +0200)]
FATE: add an H.264 test with unescaped extradata
See commit
a7829a2
Anton Khirnov [Sun, 10 Apr 2016 09:24:03 +0000 (11:24 +0200)]
FATE: add an H.264 test with invalid reference lists
See commit
9d74012
Martin Storsjö [Wed, 6 Apr 2016 18:59:59 +0000 (21:59 +0300)]
libavcodec: Document that encoders may use the framerate field in AVCodecContext
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 17 Mar 2015 09:44:27 +0000 (11:44 +0200)]
omx: Add support for zerocopy input of frames
This can only be used if the input data happens to be laid out
exactly correctly.
This might not be supported on all encoders, so only enable it
with an option, but enable it automatically on raspberry pi,
where it is known to be supported.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 24 Jul 2012 21:33:42 +0000 (21:33 +0000)]
omx: Add support for broadcom OMX on raspberry pi
The raspberry pi uses the alternative API/ABI for OMX; this makes
such builds incompatible with all the normal OpenMAX implementations.
Since this can't easily be detected at configure time (one can
build for raspberry pi's OMX just fine using the generic, pristine
Khronos OpenMAX IL headers, no need for their own extensions),
require a separate configure switch for it instead.
The broadcom host library can't be unloaded once loaded and started;
the deinit function that it provides is a no-op, and after started,
it has got background threads running, so dlclosing it makes it
crash.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Sat, 7 Apr 2012 22:18:07 +0000 (01:18 +0300)]
libavcodec: Add H264/MPEG4 encoders based on OpenMAX IL
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 12 Apr 2016 07:48:10 +0000 (10:48 +0300)]
mmaldec: Use imgutils.h for copying frames
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 11 Apr 2016 07:04:23 +0000 (10:04 +0300)]
testprogs: Add missing libm.h includes
This fixes building on MSVC 2010 and 2012 after
d12b5b2f135.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Thu, 17 Mar 2016 18:13:17 +0000 (19:13 +0100)]
build: Split test programs off into separate files
This avoids spurious library rebuilds when only the test program
code is changed and simplifies the build system.
Diego Biurrun [Mon, 21 Mar 2016 15:06:32 +0000 (16:06 +0100)]
build: Group declarations for hw-accelerated de-/encoding separately
Diego Biurrun [Tue, 16 Feb 2016 16:58:50 +0000 (17:58 +0100)]
build: miscellaneous cosmetics
Restore alphabetical order in lists, break overly long lines, do some
prettyprinting, add some explanatory section comments, group parts
together that belong together logically.
Diego Biurrun [Mon, 4 Apr 2016 18:16:54 +0000 (20:16 +0200)]
configure: cosmetics: Drop pointless end-of-line semicolons
Vittorio Giovara [Fri, 1 Apr 2016 13:12:37 +0000 (15:12 +0200)]
fate: Update DDS tests
Vittorio Giovara [Tue, 29 Mar 2016 19:00:45 +0000 (21:00 +0200)]
dds: Simplify postprocessing check
Vittorio Giovara [Fri, 1 Apr 2016 13:11:50 +0000 (15:11 +0200)]
dds: Add support for alpha-only files
Due to how pixel format conversion is done, they behave the same way
as gray files.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Vittorio Giovara [Tue, 29 Mar 2016 19:00:43 +0000 (21:00 +0200)]
dds: Add support for rgb555 files
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Vittorio Giovara [Tue, 29 Mar 2016 18:30:49 +0000 (20:30 +0200)]
fate: Update Screenpresso tests