Ramiro Polla
c08bb33e41
checkasm/sw_rgb: add deinterleaveBytes
4 months ago
Ramiro Polla
4c824ad391
swscale/x86/rgb2rgb: fix deinterleaveBytes writing past the end of the buffers
4 months ago
Ramiro Polla
f17a6bd200
swscale/x86/rgb2rgb: fix deinterleaveBytes for unaligned dst pointers
4 months ago
Frank Plowman
6df0c5f9f4
lavc/vvc: Remove experimental flag
...
This reverts commit 110d8549d5
.
I have been working through fixing bugs, particularly crashes I've
found using a fuzzer, in the VVC decoder for the past few months.
While I won't claim it is now bug-free, it is considerably more
resilient than it was and I think in a position to have the
experimental flag removed for release 7.1.
Additionally, most of the Main 10 features of VVC which were missing
version of the decoder released in 7.0 have now been implemented.
This includes the most major missing features: IBC, subpictures and RPR.
Signed-off-by: Frank Plowman <post@frankplowman.com>
4 months ago
Anton Khirnov
eec1a7a6bb
lavc/hevc: check framerate num/den to be strictly positive
...
Rather than just != 0. These values are read as uint32 and can become
negative when cast to int.
4 months ago
Anton Khirnov
fc8df81cb1
lavc/hevcdec: move active SPS from HEVCParamSets to HEVCLayerContext
...
Currently active SPS is a per-layer property.
4 months ago
Anton Khirnov
9bccc634af
lavc/hevcdec: make a HEVCFrame hold a reference to its PPS
...
ff_hevc_get_ref_list() needs the PPS of a previously decoded frame,
which may be different from the currently active one.
4 months ago
Anton Khirnov
672713761b
lavc/hevcdec: move HEVCContext.sao_pixel_buffer_[vh] to HEVCLayerContext
...
Handle them together with other sps-dependent arrays.
Note that current code only allocates these arrays when hwaccel is not
set, but this is wrong as the relevant code runs BEFORE get_format() is
called and hence before we know whether hwaccel is in use.
4 months ago
Anton Khirnov
6fcf0045cf
lavc/hevcdec: move HEVCContext.{tab_mvf,rpl_tab}_pool to HEVCLayerContext
...
pic_arrays_{init,free}() no longer access HEVCContext
4 months ago
Anton Khirnov
4f87ff7666
lavc/hevcdec: move HEVCContext.{horizontal,vertical}_bs to HEVCLayerContext
4 months ago
Anton Khirnov
e8baf2fb97
lavc/hevcdec: move HEVCContext.qp_y_tab to HEVCLayerContext
4 months ago
Anton Khirnov
d5188adba8
lavc/hevcdec: move HEVCContext.tab_slice_address to HEVCLayerContext
4 months ago
Anton Khirnov
eeb369d24f
lavc/hevcdec: move HEVCContext.filter_slice_edges to HEVCLayerContext
4 months ago
Anton Khirnov
463a85c5a1
lavc/hevcdec: move HEVCContext.is_pcm to HEVCLayerContext
4 months ago
Anton Khirnov
0704559932
lavc/hevcdec: move HEVCContext.tab_ipm to HEVCLayerContext
4 months ago
Anton Khirnov
59de042cf6
lavc/hevcdec: move HEVCContext.cbf_luma to HEVCLayerContext
4 months ago
Anton Khirnov
cf7add8d70
lavc/hevcdec: move HEVCContext.tab_ct_depth to HEVCLayerContext
4 months ago
Anton Khirnov
1ca4c2a96d
lavc/hevcdec: move HEVCContext.skip_flag to HEVCLayerContext
4 months ago
Anton Khirnov
ed2d25e7f0
lavc/hevcdec: move HEVCContext.deblock to HEVCLayerContext
4 months ago
Anton Khirnov
3d4294e344
lavc/hevcdec: move HEVCContext.sao to HEVCLayerContext
4 months ago
Anton Khirnov
747609e967
lavc/hevcdec: move HEVCContext.bs_{width,height} to HEVCLayerContext
4 months ago
Anton Khirnov
c7f0753a6b
lavc/hevcdec: move active VPS from HEVCParamSets to HEVCContext
...
Active VPS is a property of the decoding process, not of the list of
parameter sets.
Check that the VPS can only change in a base layer - while this can
never happen currently (as no other layers can exist in the decoder), it
will become useful when multilayer decoding is supported.
4 months ago
Anton Khirnov
4c0d669b20
lavc/hevcdec: add a per-layer context
...
Start by moving the DPB to it.
Only one context exists for now, so decoder behaviour should not change
with this commit, but that will change in the future.
4 months ago
Anton Khirnov
c35a51f4bb
lavc: add HEVC Multiview Main profile
4 months ago
Anton Khirnov
4cbd1a8a54
MAINTAINERS: add myself for hevc/*
4 months ago
Anton Khirnov
4ef149249a
lavu/opt: handle UINT options as the POD they are
...
Fixes operations on array UINT options.
4 months ago
Anton Khirnov
450a3f58ed
lavu/opt: add API for setting array-type option values
...
Previously one could only replace the entire array with a new one
deserialized from a string. The new API allows inserting, replacing, and
removing arbitrary element ranges.
4 months ago
James Almer
2a6f84718b
fate/checkasm/sw_gbrp: don't randomly set internal values
...
They are set by sws_init_context().
May help with signed integer overflows reported by gcc-usan.
Signed-off-by: James Almer <jamrial@gmail.com>
4 months ago
James Almer
a49188297f
avfilter/af_bs2b: remove unecessary initializer from layouts
...
Fixes compilation with msvc.
Signed-off-by: James Almer <jamrial@gmail.com>
4 months ago
James Almer
d98de855a8
avfilter/af_asr: remove unecessary initializer from layouts
...
Fixes compilation with msvc.
Signed-off-by: James Almer <jamrial@gmail.com>
4 months ago
James Almer
ef6a5c98fb
avfilter/af_apulsator: remove unecessary initializer from layouts
...
Fixes compilation with msvc.
Signed-off-by: James Almer <jamrial@gmail.com>
4 months ago
Gyan Doshi
3d0d0f68d5
doc/filters: update uspp availability status
...
The filter was disabled in 95054bfa48
and re-enabled in 771c27119d
4 months ago
Anton Khirnov
f0f1cf2697
lavfi/af_channelmap: convert to query_func2()
...
Also, drop redundant calls that also happen implicitly in generic code.
4 months ago
Anton Khirnov
3045949945
lavfi/af_bs2b: convert to query_func2()
...
Also, drop redundant calls that also happen implicitly in generic code.
4 months ago
Anton Khirnov
96a8a6139e
lavfi/af_biquads: convert to query_func2()
...
Also, drop redundant calls that also happen implicitly in generic code.
4 months ago
Anton Khirnov
2e899d3bdf
lavfi/af_asr: convert to query_func2()
...
Also, simplify code.
4 months ago
Anton Khirnov
cf43a02c2c
lavfi/af_asetrate: convert to query_func2()
...
Also, drop redundant calls that also happen implicitly in generic code.
4 months ago
Anton Khirnov
b18f7d7e2d
lavfi/af_arnndn: convert to query_func2()
...
Also, drop redundant calls that also happen implicitly in generic code.
4 months ago
Anton Khirnov
dfaa339167
lavfi/af_arls: convert to query_func2()
...
Also, drop redundant calls that also happen implicitly in generic code.
4 months ago
Anton Khirnov
814c961a78
lavfi/af_aresample: convert to query_func2()
4 months ago
Anton Khirnov
c24e0df30b
lavfi/af_apulsator: convert to query_func2()
...
Also, simplify code, and drop a redundant call that also happens
implicitly in generic code.
4 months ago
Anton Khirnov
6f2adb7967
lavfi/af_anlms: convert to query_func2()
...
Also, drop redundant calls that also happen implicitly in generic code.
4 months ago
Anton Khirnov
e0ab1fcc8c
lavfi/af_anequalizer: convert to query_func2()
...
Also, simplify code and drop redundant calls that also happen implicitly
in generic code.
4 months ago
Anton Khirnov
6e4affc407
lavfi/af_aiir: convert to query_func2()
...
Drop redundant ff_set_common_all_channel_counts() /
ff_set_common_all_samplerates() calls, since those happen implicitly in
generic code.
4 months ago
Anton Khirnov
f143723095
lavfi/af_agate: convert to query_func2()
...
Drop redundant ff_set_common_all_channel_counts() /
ff_set_common_all_samplerates() calls, since those happen implicitly in
generic code.
4 months ago
Rémi Denis-Courmont
d9f594209f
checkasm/riscv: print official extension names
4 months ago
Rémi Denis-Courmont
27d28b68da
swscale/rgb2rgb: enable R-V V deinterleaveBytes
...
T-Head C908:
deinterleave_bytes_c: 100328.3 ( 1.00x)
deinterleave_bytes_rvv_i32: 19331.3 ( 5.19x)
deinterleave_bytes_aligned_c: 100337.5 ( 1.00x)
deinterleave_bytes_aligned_rvv_i32: 15748.0 ( 6.37x)
SpacemiT X60:
deinterleave_bytes_c: 95230.6 ( 1.00x)
deinterleave_bytes_rvv_i32: 9790.3 ( 9.73x)
deinterleave_bytes_aligned_c: 96564.1 ( 1.00x)
deinterleave_bytes_aligned_rvv_i32: 7780.1 (12.41x)
4 months ago
Hendrik Leppkes
d4cfbf329c
hevc/sei: return INVALIDDATA when a referenced SPS is not available
...
The code previously returned ENOMEM, despite this not being an
allocation problem, but rather a bitstream problem referring to data not
currently available.
Fixes playback of such streams, as it allows further processing of NAL
units after skipping the broken SEI NAL.
4 months ago
Araz Iusubov
eda3fc6053
avcodec/amfenc: GPU driver version check
...
Implemented gpu driver check.
10-bit patch works incorrectly on driver version lower than 23.30.
Signed-off-by: Dmitrii Ovchinnikov <ovchinnikov.dmitrii@gmail.com>
4 months ago
Evgeny Pavlov
9f02408583
avcodec/amfenc: add 10 bit encoding in av1_amf
...
v2: refactored after review
Signed-off-by: Evgeny Pavlov <lucenticus@gmail.com>
Co-authored-by: Dmitrii Ovchinnikov <ovchinnikov.dmitrii@gmail.com>
Co-authored-by: Araz Iusubov <Primeadvice@gmail.com>
Signed-off-by: Dmitrii Ovchinnikov <ovchinnikov.dmitrii@gmail.com>
4 months ago