Stefano Sabatini
026bef7771
doc/muxers/image2: add mention to image2pipe
...
Clarify the difference with regards to the image2 muxer.
2024-04-02 19:48:28 +02:00
Stefano Sabatini
827889d8f3
doc/muxers/image2: apply misc consistency fixes
2024-04-02 19:48:28 +02:00
Stefano Sabatini
b5488392f0
doc/muxers: add ilbc
2024-04-02 19:48:28 +02:00
Stefano Sabatini
3e4f0b07de
doc/muxers: add stub for iamf
2024-04-02 19:48:28 +02:00
Stefano Sabatini
06f17cc9ce
doc/muxers/hls: review, apply consistency fixes
...
Apply misc typo fixes, consistency fixes, and reformat the layout to provide more overall
internal and global consistency.
2024-04-02 19:48:28 +02:00
James Almer
8f85f657d7
RELEASE: update after 7.0 branch
...
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-02 13:02:39 -03:00
James Almer
6e52223f3a
fate/vvc: add vvc-conformance-IBC_B_Tencent_2
...
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-02 12:34:26 -03:00
James Almer
e60d4913ae
fate/vvc: add vvc-conformance-SUBPIC_C_ERICSSON_1
...
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-02 12:15:03 -03:00
James Almer
e9778d20a4
fate/vvc: disable vvc-conformance-OPI_B_3 and vvc-conformance-VPS_A_3
...
Both samples rely on a feature our decoder doesn't currently support.
Should fix fate failures on some systems where not even the one single frame
could be generated.
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-02 11:50:08 -03:00
James Almer
45b56455ad
avcodec/vvc_refs: don't ask for a "Inter layer ref" sample
...
The FATE suite has two already.
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-02 11:48:32 -03:00
Nuo Mi
238bb653e7
avcodec/vvcdec: inter prediction, support subpicture
...
passed files:
LMCS_B_Dolby_2.bit
CodingToolsSets_E_Tencent_1.bit
SUBPIC_A_HUAWEI_3.bit
SUBPIC_B_HUAWEI_3.bit
SUBPIC_C_ERICSSON_1.bit
SUBPIC_D_ERICSSON_1.bit
SUBPIC_E_MediaTek_1.bit
passed dvb conformance files (https://dvb.org/specifications/verification-validation/vvc-test-content ):
VVC_HDR_UHDTV1_OpenGOP_3840x2160_50fps_HLG10_mosaic.bit
VVC_HDR_UHDTV1_OpenGOP_3840x2160_50fps_HLG10_PiP.bit
2024-04-02 20:56:22 +08:00
Nuo Mi
9bc3f3e5fc
avcodec/vvcdec: mvs, support subpicture
2024-04-02 20:56:22 +08:00
Nuo Mi
adeb51c30f
avcodec/vvcdec: alf, support subpicture
2024-04-02 20:56:22 +08:00
Nuo Mi
bbf0ccb8e7
avcodec/vvcdec: sao, support subpicture
2024-04-02 20:56:22 +08:00
Nuo Mi
0c3018b30a
avcodec/vvcdec: sao, refact out tile_edge arrays
2024-04-02 20:56:22 +08:00
Nuo Mi
c9e75393ed
avcodec/vvcdec: refact, movie the lc->sc assignment to task_run_stage to simplify the code
...
This change also make the lc->sc assigned for run_sao
2024-04-02 20:56:22 +08:00
Nuo Mi
8b7304247a
avcodec/vvcdec: deblock, support subpicture
2024-04-02 20:56:22 +08:00
Nuo Mi
0d12e9c3c8
avcodec/vvcdec: refact out deblock_is_boundary
2024-04-02 20:56:22 +08:00
Nuo Mi
4020e68d73
avcodec/vvcdec: misc, rename x_ctb, y_ctb, ctu_x, ctu_y to rx, ry to avoid misleading
2024-04-02 20:56:22 +08:00
Nuo Mi
260130aae8
avcodec/vvcdec: ff_vvc_decode_neighbour, support subpicture
2024-04-02 20:56:22 +08:00
Nuo Mi
4e47847119
avcodec/vvcdec: derive subpic position for PPS
2024-04-02 20:56:03 +08:00
Frank Plowman
8078a0b0fa
avcodec/vvcdec: support rectangular single-slice subpics
...
Co-authored-by: Nuo Mi <nuomi2021@gmail.com >
2024-04-02 20:24:31 +08:00
Frank Plowman
9c845e9087
avcodec/vvcdec: fix uninitialized last element of xxx_bd and ctb_to_xxx_bd arrays
...
see "6.5.1 CTB raster scanning, tile scanning, and subpicture scanning processes"
Co-authored-by: Nuo Mi <nuomi2021@gmail.com >
2024-04-02 20:24:31 +08:00
Nuo Mi
64d5cc67cd
avcodec/vvcdec: misc, add specification name for pps members
2024-04-02 20:24:31 +08:00
Nuo Mi
191fbd7ddc
avcodec/cbs_h266: fix sh_collocated_from_l0_flag and sh_collocated_ref_idx infer
...
we have to infer sh_collocated_from_l0_flag and sh_collocated_ref_idx from picture head if pps_rpl_info_in_ph_flag is true
2024-04-02 20:24:31 +08:00
Nuo Mi
cd540a333e
avcodec/vvcdec: NoBackwardPredFlag, only check active pictures
...
see "8.3.6 Decoding process for collocated picture and no backward prediction"
2024-04-02 20:24:31 +08:00
James Almer
8e294abd9d
avformat/mov: simplify the entry count overflow check in the keys atom
...
Suggested-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-02 09:09:35 -03:00
James Almer
5a06d3810e
avformat/mov: don't read key_size bytes twice in the keys atom
...
We only support mdta as type, yet we were not skipping other types,
but rather reading key_size worth of bytes twice per entry.
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-02 00:16:31 -03:00
James Almer
3d12ba77d9
avformat/mov: take into account the first eight bytes in the keys atom
...
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-02 00:13:12 -03:00
Eugene Zemtsov
8a23a145d8
avformat/mov: Check if a key is longer than the atom containing it
...
Stop reading keys and return AVERROR_INVALIDDATA if key_size
is larger than the amount of space left in the atom.
Bug: https://crbug.com/41496983
Signed-off-by: Eugene Zemtsov <eugene@chromium.org >
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-02 00:13:12 -03:00
Andreas Rheinhardt
9d219ff149
avformat/mov: Don't add attached pic if one is already present
...
Fixes: memleak
Fixes: 67714/clusterfuzz-testcase-minimized-ffmpeg_dem_MOV_fuzzer-5671570999476224
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc >
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 04:13:44 +02:00
James Almer
f492f1ac23
avformat/mov: ensure all items id referenced by a grid are valid
...
Fixes: null pointer dereference
Fixes: 67494/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-6528714521247744
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Tested-by: Michael Niedermayer <michael@niedermayer.cc >
Signed-off-by: James Almer <jamrial@gmail.com >
2024-04-01 21:13:04 -03:00
Andreas Rheinhardt
a8e518e3a7
avcodec/vlc: Use union of uint8_t and uint16_t in VLC_MULTI_ELEM
...
It is more natural and simplifies writing these arrays.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:59 +02:00
Andreas Rheinhardt
4ab82d2fb6
avcodec/vlc, bitstream: Fix multi VLC with uint8_t syms on BE
...
VLC_MULTI_ELEM contains an uint8_t array that is supposed
to be treated as an array of uint16_t when the used symbols
have a size of two; otherwise it should be treated as just
an array of uint8_t, but it was not always treated that way:
vlc_multi_gen() initialized the first entry of the array
by writing the symbol via AV_WN16; on big endian systems,
the intended value was instead written into the second entry
of the array (where it would likely be overwritten lateron
during initialization).
read_vlc_multi() also treated this case incorrectly: In case
the code is so long that it needs a classical multi-stage lookup,
the symbol has been written to the destination as if via AV_WN16.
On little endian systems, this sets the correct first symbol and
clobbers (zeroes) the next one, but the next one will be overwritten
lateron anyway, so it won't be recognized. But on big-endian systems,
the first symbol will be set to zero and the actually read symbol
will be put into the slot for the next one (where it will be overwritten
lateron).
This commit fixes this; this fixes the magicyuv and utvideo FATE-tests
on big endian arches.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:59 +02:00
Andreas Rheinhardt
098f5e2634
fate/fits: Fix tests on BE
...
The fits decoder decodes to native pixel formats; so
the fitsdec-gbrap16be fate test failed on BE despite
its name because the reference file is LE.
This patch fixes this by forcing a pixel format;
the forced pixel format is BE, causing a change
in the reference file.
The fitsdec-gbrp16be test was not affected, because
its source file (lena-rgb48.png from tne FATE suite)
is actually biendian (as if someone had multiplied
8bit content by 257...).
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:59 +02:00
Andreas Rheinhardt
579868f810
fate/filter-video: Insert scale, format filters in filter-yadif,bwdif10
...
The format and the first scale filter ensures that the filter
processing actually happens in high bit depth; the second
scale filter is only necessary for big endian arches.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:58 +02:00
Andreas Rheinhardt
1b684a1527
fate/filter-video: Always use little endian pixel format
...
Fixes filter-metadata-signalstats-yuv420p10 on BE arches.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:58 +02:00
Andreas Rheinhardt
d5897f70d4
fate/video: Only use bitexact IDCT in avid meridian
...
Precludes the usage of the altivec IDCT which fixes
the avid-meridian FATE test on ppc64be here.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:58 +02:00
Andreas Rheinhardt
8ecd383122
avcodec/huffyuvencdsp: Fix load of misaligned values
...
Affected many ffvhuff FATE tests.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:58 +02:00
Andreas Rheinhardt
3ed23dab98
avfilter/vf_spp: Fix left-shift of negative value
...
Affected the vf-spp FATE-test (on x86 only when MMX
is disabled).
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:58 +02:00
Andreas Rheinhardt
9e4e8ae1e6
avcodec/pngdsp: Fix unaligned accesses, effective type violations
...
Affected the lscr fate-test (only visible on x86 if
the SSE2 is disabled).
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:58 +02:00
Andreas Rheinhardt
356610a2ac
avcodec/ppc/hpeldsp_altivec: Fix left-shift of negative number
...
It is UB and affected e.g. the vp5 and vp61 FATE tests:
https://fate.ffmpeg.org/report.cgi?time=20240327083327&slot=ppc-linux-gcc-13.2-ubsan-altivec-qemu
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com >
2024-04-02 00:21:58 +02:00
David Rosca
3f863f089c
lavc/vaapi_encode_av1: Set roi_quant_range
2024-04-01 20:08:11 +01:00
Michael Niedermayer
84ce5ced31
avcodec/vvc/vvcdec: Do not submit frames without VVCFrameThread
...
Such frames will crash when pthread functions are called on the NULL pointer
Fixes: member access within null pointer of type 'VVCFrameThread' (aka 'struct VVCFrameThread')
Fixes: 65160/clusterfuzz-testcase-minimized-ffmpeg_BSF_VVC_METADATA_fuzzer-4665241535119360 (partly)
Fixes: 65636/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VVC_fuzzer-5394745824182272
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2024-04-01 19:05:31 +02:00
Michael Niedermayer
cb9752d897
avformat/mpegts: Reset local nb_prg on add_program() failure
...
add_program() will deallocate the whole array on failure so
we must clear nb_prgs
Fixes: null pointer dereference
Fixes: crash-35a3b39ddcc5babeeb005b7399a3a1217c8781bc
Found-by: Catena cyber
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2024-04-01 19:03:06 +02:00
Michael Niedermayer
c0532f5579
avcodec/iff: dont add into unused pointers
...
Fixes: overflowing pointers
Fixes: 66444/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_IFF_ILBM_fuzzer-4812862400823296
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2024-04-01 19:00:30 +02:00
Michael Niedermayer
23b29f72ee
avformat/aiffdec: Check for previously set channels
...
Fixes: out of array access (av_channel_layout_copy())
Fixes: 67087/clusterfuzz-testcase-minimized-ffmpeg_dem_AIFF_fuzzer-4920720268263424
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2024-04-01 18:59:07 +02:00
Michael Niedermayer
f30fe5e8d0
avformat/mxfdec: Make edit_unit_byte_count unsigned
...
Suggested-by: Marton Balint <cus@passwd.hu >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2024-04-01 18:52:38 +02:00
Michael Niedermayer
d88c284c18
avformat/movenc: Check that cts fits in 32bit
...
Fixes: Assertion av_rescale_rnd(start_dts, mov->movie_timescale, track->timescale, AV_ROUND_DOWN) <= 0 failed at libavformat/movenc.c:3694
Fixes: poc2
Found-by: Wang Dawei and Zhou Geng, from Zhongguancun Laboratory
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2024-04-01 18:51:59 +02:00
James Almer
0a693bce62
avformat/iamf_parse: keep count_label consistent on language_label allocation failure
...
Fixes: null pointer dereference
Fixes: 67023/clusterfuzz-testcase-minimized-ffmpeg_dem_IAMF_fuzzer-6011025237278720
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2024-04-01 18:17:28 +02:00