summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* rtpdec_h264: Use avpriv_report_missing_feature instead of a manual av_logMartin Storsjö2016-04-30
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Use AVERROR_PATCHWELCOME instead of AVERROR(ENOSYS) for ↵Martin Storsjö2016-04-30
| | | | | | unimplemented features Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_vp9: Update header parsing to spec draft 02Martin Storsjö2016-04-30
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_vp9: Make sure to free the temp buffer on closeMartin Storsjö2016-04-30
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Revert "mmaldec: autodetect by default" since it breaks linking on systems ↵Janne Grunau2016-04-30
| | | | | | without mmal libraries This reverts commit 33ac77e850efdfd0e8835950c3d947baffd4df45.
* mmaldec: autodetect by defaultwm42016-04-30
| | | | | | It qualifies as a system library. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* mmaldec: limit internal bufferingwm42016-04-30
| | | | | | | | | | | | | | | | | | 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>
* mmaldec: print the MMAL format FourCC automaticallywm42016-04-30
| | | | | | | 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>
* configure: fix mmal build dependencieswm42016-04-30
| | | | | | The mmal decoders do not depend on the software decoders. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* mmaldec: send only a single EOS packet on flushingwm42016-04-30
| | | | | | | | 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>
* mmaldec: correct package buffering accountingwm42016-04-30
| | | | | | | | | | | 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>
* mmaldec: add vc1 decoding supportwm42016-04-30
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* mmaldec: Add mpeg2 decoding supportJulian Scheel2016-04-30
| | | | | | | | | | | 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>
* mmaldec: Fix avpriv_atomic_get usageJulian Scheel2016-04-30
| | | | | | | | | 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>
* mmaldec: Use av_assert0() instead of assert()Michael Niedermayer2016-04-30
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* testprogs: Mark some tables as static constDiego Biurrun2016-04-29
|
* fate: Add test for MSS1Diego Biurrun2016-04-27
|
* dds: Add support for monochrome imagesVittorio Giovara2016-04-26
|
* dds: Drop gray-alpha swappingVittorio Giovara2016-04-26
| | | | The original sample was generated with invalid software.
* dxva2_h264: Unbreak compilation after 3176217c6Martin Storsjö2016-04-25
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* ape: Unbreak adaptcoeffs computationLuca Barbato2016-04-24
| | | | | | And simplify and explain the expression. Fault introduced in f3fdef108eb06b1e71b29152bf6822519e787efe
* h264: eliminate max_contextsAnton Khirnov2016-04-24
| | | | It is always equal to nb_slice_ctx.
* h264: allocate some tables per slice contexts, not threadsAnton Khirnov2016-04-24
| | | | | This is more correct and avoids wasting space when frame threading is used.
* h264: remove an artificial restriction on the number of slice threadsAnton Khirnov2016-04-24
| | | | | This limit is now unnecessary, we can easily support an arbitrary number of threads.
* h264: remove pointless setting of some variables in loop_filterAnton Khirnov2016-04-24
| | | | Those should already be set to the correct values.
* h264: remove a pointless commentAnton Khirnov2016-04-24
|
* h264: make slice threading work with deblocking_filter=1Anton Khirnov2016-04-24
| | | | | | | | | | | | 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.
* h264: remove H264Context.pict_typeAnton Khirnov2016-04-24
| | | | | It is not used for anything internally, just exported in the output frames. So remove the indirection and set it directly in frame_start().
* h264: drop a pointless indirectionAnton Khirnov2016-04-24
|
* h264: remove unused H264SliceContext.rbsp_bufferAnton Khirnov2016-04-24
|
* h264: merge ff_h264_free_context() into h264_decode_end()Anton Khirnov2016-04-24
| | | | It is no longer called from outside the h264 decoder.
* h264: eliminate low_delayAnton Khirnov2016-04-24
| | | | | | 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.
* h264: remove a stale commentAnton Khirnov2016-04-24
| | | | This comment used to apply to code that was removed.
* h264_refs: remove an unused parameter from ff_h264_fill_mbaff_ref_list()Anton Khirnov2016-04-24
|
* h264_refs: make the H264Context const where possibleAnton Khirnov2016-04-24
|
* h264_refs: reorder functions to avoid forward declarationsAnton Khirnov2016-04-24
|
* h264: eliminate copy_fieldsAnton Khirnov2016-04-24
| | | | | It is very fragile against fields being moved and hides what is actually being copied. Copy all the fields explicitly instead.
* h264_parser: remove the remaining dependencies on the h264 decoderAnton Khirnov2016-04-24
|
* h264: decouple extradata parsing from the decoderAnton Khirnov2016-04-24
| | | | This will allow decoupling the parser from the decoder.
* h264: decouple h264_sei from the h264 decoderAnton Khirnov2016-04-24
| | | | | Make the SEI parsing independent of the H264Context, to allow decoupling the parser from the decoder.
* h264: factor out calculating the POC count into a separate fileAnton Khirnov2016-04-24
| | | | This will allow decoupling the parser from the decoder.
* h264_parser: move the H264DSPContext to the parser contextAnton Khirnov2016-04-24
|
* h264: decouple h264_ps from the h264 decoderAnton Khirnov2016-04-24
| | | | | | | | | 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.
* h264_parser: eliminate H264SliceContext usageAnton Khirnov2016-04-24
| | | | It is no longer needed for anything.
* h264_parse: make sure the ref count is zeroed on all failure pathsAnton Khirnov2016-04-24
|
* h264: factor out parsing the reference count into a separate fileAnton Khirnov2016-04-24
| | | | This will allow decoupling the parser from the decoder.
* h264: stop testing whether the reference count changes in ff_set_ref_count()Anton Khirnov2016-04-24
| | | | It is no longer necessary after 741b494fa8cd28a7d096349bac183893c236e3f9
* h264: move reading direct_spatial_mv_pred out of ff_set_ref_count()Anton Khirnov2016-04-24
| | | | | It has nothing to do with the reference count and so does not belong in this function.
* h264_parser: switch to h2645_parse for NAL unescapingAnton Khirnov2016-04-24
| | | | Remove now unused ff_h264_decode_nal().
* h264_mp4toannexb_bsf: do not fail on annex B extradataAnton Khirnov2016-04-24
| | | | | Just pass through the bitstream as is. This is the same as what is done for HEVC already.