Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2172 commits
Select commit Hold shift + click to select a range
249bca7
fftools/ffmpeg_mux_init: handle pixel format endianness
elenril Jul 13, 2023
037d364
fftools/ffmpeg_filter: move "smart" pixfmt selection to ffmpeg_mux_init
elenril Jul 15, 2023
4503515
tests/fate: fix mismatches between requested and actually used pixel …
elenril Jul 6, 2023
9d44eb8
fftools/ffmpeg_filter: stop accessing encoder from pixfmt selection
elenril Jul 6, 2023
3a89e6d
fftools/ffmpeg_filter: restrict reap_filters() to a single filtergraph
elenril Jun 8, 2023
c4b0746
fftools/ffmpeg_mux_init: avoid invalid memory access in set_dispositi…
elenril Jul 14, 2023
80a6480
fftools/ffmpeg_enc: return errors from enc_frame() instead of aborting
elenril Jul 13, 2023
aa1173f
fftools/ffmpeg_enc: return errors from enc_open() instead of aborting
elenril Jul 13, 2023
dde3de0
fftools/ffmpeg_enc: return errors from do_*_out() instead of aborting
elenril Jul 13, 2023
43bcf63
fftools/ffmpeg_enc: return errors from enc_flush() instead of aborting
elenril Jul 13, 2023
2b4afe8
fftools/ffmpeg_enc: return errors from encode_frame() instead of abor…
elenril Jul 13, 2023
e0f4259
fftools/ffmpeg_mux: return errors from of_output_packet() instead of …
elenril Jul 13, 2023
518b49a
fftools/ffmpeg_dec: return error codes from dec_packet() instead of a…
elenril Jul 13, 2023
6298dd6
fftools/ffmpeg_dec: drop redundant handling of AVERROR_EXPERIMENTAL
elenril Jul 13, 2023
ab16e32
fftools/ffmpeg_filter: return error codes from ofilter_bind_ost() ins…
elenril Jul 13, 2023
a52ee1a
fftools/ffmpeg_filter: return error codes from init_input_filter() in…
elenril Jul 13, 2023
8815adf
fftools/ffmpeg_filter: replace remaining exit_program() with error codes
elenril Jul 13, 2023
8db9680
fftools/ffmpeg_filter: return error codes from choose_pix_fmts() inst…
elenril Jul 13, 2023
5ba7aa2
fftools/ffmpeg_filter: return error codes from fg_create() instead of…
elenril Jul 13, 2023
cb8242d
fftools/ffmpeg_filter: return error codes from set_channel_layout() i…
elenril Jul 13, 2023
13ebc9a
fftools/ffmpeg_filter: replace remaining report_and_exit() with error…
elenril Jul 13, 2023
37abb3a
fftools/cmdutils: return error codes from setup_find_stream_info_opts…
elenril Jul 13, 2023
26e1e80
fftools/ffmpeg_opt: reimplement -streamid using a dictionary
elenril Jul 13, 2023
8eb5ade
fftools/cmdutils: drop unused ALLOC_ARRAY_ELEM()
elenril Jul 13, 2023
6be4a29
fftools/cmdutils: add error handling to allocate_array_elem()
elenril Jul 13, 2023
b23abb7
fftools/cmdutils: add error handling to grow_array()
elenril Jul 14, 2023
2e6afa7
fftools/cmdutils: add error handling to GROW_ARRAY()
elenril Jul 14, 2023
6c6f13b
fftools/ffmpeg: return errors from find_codec_or_die() instead of abo…
elenril Jul 14, 2023
a50f90f
fftools/ffmpeg_opt: replace exit_program() with returning error codes
elenril Jul 14, 2023
4adbe2d
fftools/opt_common: replace exit_program() with returning error codes
elenril Jul 14, 2023
9cb47c7
fftools: return errors from parse_number_or_die() instead of aborting
elenril Jul 14, 2023
49ac7fc
fftools: remove parse_time_or_die()
elenril Jul 14, 2023
39d5104
fftools: handle errors in parse_options()
elenril Jul 14, 2023
6b8cf25
fftools/cmdutils: constify the first parameter of filter_codec_opts()
elenril Jul 14, 2023
87f0333
fftools/cmdutils: add error handling to filter_codec_opts()
elenril Jul 14, 2023
c56fabd
fftools/ffmpeg_opt: consolidate printing errors in ffmpeg_parse_optio…
elenril Jul 14, 2023
8173623
fftools/ffmpeg: consolidate exiting from main() on error
elenril Jul 14, 2023
eda1fac
fftools/cmdutils: return AVERROR_EXIT for OPT_EXIT options instead of…
elenril Jul 14, 2023
2f155b1
fftools/ffmpeg: return an error from assert_avoptions() instead of ab…
elenril Jul 14, 2023
83ace80
fftools/ffmpeg: return an error from MATCH_PER_STREAM_OPT() instead o…
elenril Jul 14, 2023
140cb5a
fftools/ffprobe: replace report_and_exit() with returning error codes
elenril Jul 14, 2023
7869992
fftools/ffplay: replace report_and_exit() with returning an error code
elenril Jul 14, 2023
411e183
fftools/opt_common: replace report_and_exit() with returning an error…
elenril Jul 14, 2023
be49c48
fftools/ffprobe: inline opt_output_file() into its only caller
elenril Jul 14, 2023
a81d923
fftools/ffprobe: stop calling exit_program()
elenril Jul 14, 2023
ccc6849
fftools/ffmpeg: stop calling exit_program()
elenril Jul 14, 2023
effadce
avcodec/x86/mathops: clip constants used with shift instructions with…
Jul 16, 2023
b710f88
lavu/float_dsp: unroll RISC-V V loops
Jul 17, 2023
29b9d61
lavu/float_dsp: rework RISC-V V scalar product
Jul 17, 2023
44cac1d
lavc/audiodsp: rework RISC-V V scalar product
Jul 17, 2023
3dc93ac
avfilter/vf_pseudocolor: add four more presets
richardpl Jul 20, 2023
86a1904
avfilter/avf_showcwt: move variables out of loop
richardpl Jul 20, 2023
74474a5
avfilter/avf_showcwt: fix index storing
richardpl Jul 20, 2023
e6bd8b1
hwcontext_vulkan: hide Linux-only header after 571756bf2fe2
jbeich Jul 15, 2023
c06ad64
lavc/vulkan_decode: use a single execution pool per thread
cyanreg Jul 19, 2023
97890c2
lavu/vulkan: remove threadsafe buffer index load and fix a signed ove…
cyanreg Jul 19, 2023
3e3d463
lavu/vulkan: remove unused field from the execution pool structure
cyanreg Jul 19, 2023
e6a12a5
vulkan_av1: remove an invalid debug print
cyanreg Jul 21, 2023
d3948e4
swscale: inline ff_shuffle_bytes_3210_rvv
Jul 18, 2023
1598255
swscale/rgb2rgb2: rework RISC-V V shuffle_bytes_{0321,2103}
Jul 18, 2023
c2b3861
swscale/rgb2rgb2: rework RISC-V V shuffle_bytes_{1230,3012}
Jul 18, 2023
a4e6168
libavutil: Remove TOMI CPU
kierank Dec 17, 2022
8f48a62
avutil/tx_template: extend to 2M
michaelni May 30, 2023
94d44db
avcodec/pcm: allow Changing parameters
michaelni Jun 5, 2023
cf00f60
avcodec/kbdwin: Support arbitrary sized windows
michaelni Jun 14, 2023
fd5aa93
avcodec: Rename ff_kbd_window_init() as it will be needed from outsid…
michaelni Jun 16, 2023
167b4f5
avformat/rka: bps < 8 is invalid
michaelni Apr 9, 2023
f9b2945
avcodec/rka: Fix integer overflow in decode_filter()
michaelni Jun 29, 2023
c41ab87
avformat/id3v2: Free buffer in decode_str()
michaelni Jun 29, 2023
e6168e4
avfilter/avf_showcwt: improve analysis
richardpl Jul 21, 2023
c24c7bc
avfilter/avf_showcwt: no need for big forward FFT with small sample r…
richardpl Jul 22, 2023
ffa3edb
avfilter/avf_showcwt: extend min frequency accepted range
richardpl Jul 22, 2023
c644aab
timer: don't leak perf FD if zero
Jul 19, 2023
983af74
macos_kperf: fix incomplete prototype
Jul 19, 2023
f25ad0f
checkasm: improve Linux perf error message
Jul 14, 2023
b2ceed4
avfilter/avf_showcwt: reduce memory usage
richardpl Jul 22, 2023
6c90fcd
avcodec/videotoolboxenc: use color parameters conversion from avutil
quink-black Jul 16, 2023
c2c96c4
avfilter: add scale_vt for videotoolbox pix_fmt
quink-black Jul 16, 2023
89f5124
avfilter: add transpose_vt for videotoolbox pix_fmt
quink-black Jul 16, 2023
e9e37ea
avfilter/vf_libplacebo: fix skip_aa option range
haasn Jul 23, 2023
2a44c4b
fftools/ffmpeg_mux_init: Fix leak on error
mkver Jul 22, 2023
2654347
fftools/ffmpeg_opt: Fix leak on error
mkver Jul 22, 2023
0368ded
fftools/opt_common: Fix leak on error
mkver Jul 22, 2023
8bb1bcf
fftools/ffmpeg_opt: Fix leak on error
mkver Jul 22, 2023
071c625
fftools/ffmpeg_opt: Reduce scope of variables for deprecated code
mkver Jul 22, 2023
40cec0b
avcodec/wavarc: Fix k limit
michaelni Apr 24, 2023
87f76d3
avcodec/aacdec_template: Fix undefined signed interger operations
michaelni Apr 24, 2023
13f49a7
libavfilter/vf_dnn_detect: bbox index may bigger than bbox number
wenbinc-Bin Jul 17, 2023
5b11ee9
lavd/opengl_enc: fix a compiler error
xhaihao Jul 19, 2023
3fe98db
avcodec/vvc_mp4toannexb_bsf: Improve included headers
mkver Jul 17, 2023
6e5e74c
avcodec/evc*: Improve included headers
mkver Jul 17, 2023
9fb2efe
avfilter/avf_showcwt: make read only variable const
richardpl Jul 23, 2023
60244d0
avfilter/af_afir: fix possible array read-overflow
richardpl Jul 24, 2023
f8035bc
avformat/flvenc: write proper timestamps when muxing hevc
BtbN Jul 24, 2023
6dd5f95
avformat/flvdec: fix size desync when reading timestamp offsets
Nevcairiel Jul 24, 2023
8d1316e
lavc/h264chroma: RISC-V V add motion compensation for 4xH and 2xH chr…
Jun 19, 2023
d383ae4
avcodec/codec_par: always free side data in the destination AVCodecCo…
jamrial Jul 20, 2023
c92948d
avcodec/decode: consistently set channel info when parsing param chan…
jamrial Jul 23, 2023
673862e
avcodec/cbs_h266_syntax_template: add missing checks to subpic dimens…
jamrial Jul 25, 2023
574f3aa
avcodec/vmixdec: Fix several integer anomalies
michaelni Jun 18, 2023
c5c719f
avcodec/h266_metadata_bsf: Check if there are CodedBitstreamFragment …
michaelni Jul 23, 2023
509ce40
avformat/imf_cpl: xmlNodeListGetString() can return NULL
michaelni Jul 23, 2023
ac3e6b7
avformat/imf_cpl: Replace NULL content_title_utf8 by ""
michaelni Jul 23, 2023
0ba719f
avcodec/cbs_h2645: Avoid an unchecked bytesteram read
michaelni Jul 25, 2023
33358b8
avcodec: move mastering display colour volume SEI handling to h2645_sei
jeeb Jul 11, 2023
43e63ff
avcodec: move content light level SEI handling to h2645_sei
jeeb Jul 12, 2023
91e1d11
avcodec/hevcdec: simplify decrementing of MDCV/CLL flags
jeeb Jul 12, 2023
4fa1d3e
avcodec/v4l2_context: suppress POLLERR and fix crash when buffers are…
flamingradian Jul 25, 2023
f983303
avcodec: fix misleading indentation warnings after ticks_per_frame de…
cus Jul 22, 2023
cf9cd35
avcodec/evc_ps: Check num_ref_pic_list_in_sps
michaelni Jul 26, 2023
2780420
vulkan_hevc: use diagonal scan order for scaling lists
lolzballs Jul 28, 2023
830e522
avfilter/avf_showcwt: reduce memory usage even more
richardpl Jul 27, 2023
32a2268
avfilter/avf_showcwt: switch to overlap-save
richardpl Jul 27, 2023
a7a46af
avfilter/avf_showcwt: remove excessive operations
richardpl Jul 28, 2023
e877722
fftools/ffprobe: fix handling parse_options() return value
elenril Jul 26, 2023
7de3fcb
examples: fix build of mux and resample_audio
sebastinas Apr 16, 2023
b300552
avformat/mov: enable identifying TTML subtitle streams as such
jeeb-boox Apr 21, 2023
dca5460
avfilter/avf_showcwt: keep kernels precision as high as possible
richardpl Jul 28, 2023
7d6dd90
avfilter/avf_showcwt: unbreak highest frequencies
richardpl Jul 28, 2023
8c67e13
avfilter/avf_showcwt: remove not needed fabsf()
richardpl Jul 28, 2023
096563c
avcodec/Makefile: Unconditionally skip vulkan_video_codec_av1std.h
mkver Jul 24, 2023
8387241
avcodec/dct: Move fdct function declarations to fdctdsp.h
mkver Jul 24, 2023
27b4364
avcodec/fdctdsp: Mark functions as hidden
mkver Jul 24, 2023
6f6907f
avfilter/avf_showcwt: fix very low freqs leakage
richardpl Jul 28, 2023
44813d6
avfilter/avf_showcwt: make kernels symmetrical
richardpl Jul 29, 2023
075dfc2
avfilter/qsvvpp: remove usage of deprecated fields
jamrial Jul 29, 2023
dcff156
hevcdsp_idct_neon.S: Avoid unnecessary mov.
rdoeffinger Jul 26, 2023
c0f867b
libavformat: fix incorrect handling of incomplete AVBPrint.
rdoeffinger Jun 21, 2023
37d3000
avfilter/avf_showcwt: fix truncation of low Hz kernels
richardpl Jul 29, 2023
bf9f6a5
avformat/lrcdec: Fix declaration-after-statement warning
mkver Jul 29, 2023
4f8b0be
avfilter/avf_showcwt: reduce excessive operations
richardpl Jul 30, 2023
6f552b9
avfilter/avf_showcwt: improve caching of some arrays
richardpl Jul 30, 2023
bd23b1d
avfilter/avf_showcwt: add iscale option
richardpl Jul 30, 2023
48cd556
avfilter/avf_showcwt: rename option value
richardpl Jul 30, 2023
8bbaecb
avfilter/avf_showcwt: improve range detection for morlet scales
richardpl Jul 30, 2023
b85557b
avcodec/h264_slice: Remove always-false check
mkver Sep 20, 2022
a105b11
avcodec/cbs: Add specialization for ff_cbs_(read|write)_unsigned()
mkver Jul 1, 2022
e63d9ba
lavu/hwcontext_qsv: silence the warning
xhaihao Jul 24, 2023
567e78b
lavfi/vf_vpp_qsv: fix duration in pass-through mode
xhaihao Jul 24, 2023
0e9956a
fftools/ffprobe: Fix memleak
mkver Jul 31, 2023
3e97d96
libswresample: Prevent out of bounds.
kobrineli Aug 2, 2023
32556fa
avformat/avr: Check sample rate
michaelni Jul 22, 2023
4140940
fftools/opt_common: Use %c instead of %s to write single char
mkver Jul 31, 2023
739f24d
fftools/opt_common: Don't add unnecessary " "
mkver Jul 31, 2023
80cc9b8
avcodec/nvdec_(mjpeg|vp8): Constify AVHWAccels
mkver Jul 17, 2023
28817b9
avformat/hls_sample_encryption: Always free AC3HeaderInfo on error
mkver Jul 31, 2023
2d7c147
avcodec/nvenc: Remove always-true check
mkver Jul 31, 2023
27a9e1c
avcodec/mpegvideo_dec: Use av_fast_padded_malloc where appropriate
mkver Jul 31, 2023
c7ff0c3
avcodec/sga: Don't use GetBit-API for byte-aligned reads
mkver Jul 31, 2023
207e9f4
avformat/flvdec: handle exheader fourcc correctly in metadata
cus Jul 29, 2023
044ab53
avcodec/jpeg2000htdec: Avoid freeing uninitialized pointers in ff_jpe…
michaelni Aug 2, 2023
96b0b3f
lavfi/qsvvpp: add set_frame_ext_params callback
xhaihao Jul 26, 2023
b42ea03
lavfi/vf_vpp_qsv: take input color properties into account
xhaihao Jul 26, 2023
b66aecf
lavfi/vf_vpp_qsv: set color properties for output
xhaihao Jul 26, 2023
84fb7b9
lavfi/vf_vpp_qsv: perform conversion from HDR to SDR
xhaihao Jul 26, 2023
9732684
avfilter/avfilter: Also deprecate variable name
mkver Jul 29, 2023
1062a6d
avfilter/avfilter: Make functions only used here static
mkver Jul 29, 2023
802d2d1
avcodec/error_resilience, mpeg12dec: Remove always-true checks
mkver Aug 1, 2023
62fac04
intreadwrite: Indicate potential aliasing in AV_RN/AV_WN for Clang/MS…
mstorsjo Aug 1, 2023
271c822
tests: Correctly distinguish between SAMPLES and TARGET_SAMPLES for h…
mstorsjo Aug 1, 2023
7aa9684
w32pthreads: Fix function signature mismatches for CreateThread
mstorsjo Aug 1, 2023
7469f2e
avcodec/avcodec: Remove unnecessary forward declaration
mkver Aug 2, 2023
00597af
avdevice/pulse_audio_common: Avoid inclusion of avcodec.h
mkver Aug 2, 2023
befb7e7
avcodec/tak: Use void* instead of AVCodecContext* for logcontext
mkver Aug 2, 2023
5d63bd5
avcodec/h264dec: Move inline functions only used by CABAC/CAVLC code
mkver Aug 2, 2023
09e8ccb
avformat/av1dec: Remove avcodec.h inclusion
mkver Aug 2, 2023
abc6a4a
avformat/evcdec: Remove unused headers
mkver Aug 2, 2023
76f244b
avformat/internal: Use forward declaration for AVCodecDescriptor
mkver Aug 2, 2023
61f6766
avcodec/dirac: Include used headers directly
mkver Aug 2, 2023
dda471b
avformat/rawdec: Don't include avcodec.h
mkver Aug 2, 2023
92f0d69
avcodec/h264_metadata_bsf: Improve included headers
mkver Aug 2, 2023
866be3f
avcodec/internal: Move FF_MAX_EXTRADATA_SIZE to its only user
mkver Aug 2, 2023
2ece81b
avcodec/utils: Move ff_color_frame() to its only user
mkver Aug 2, 2023
b35ae26
avcodec/utils: Move ff_int_from_list_or_default() to its only user
mkver Aug 2, 2023
dcd0c79
avcodec/svq1enc: Remove unnecessary cast
mkver Aug 2, 2023
9549712
avcodec/jpeg2000htdec: Consolidate jpeg2000 spec bits in jpeg2000_bit…
michaelni Aug 2, 2023
0c02ad8
avformat/movenc: fix sample size being zero in pcmC
quink-black Jul 26, 2023
6b82f35
fate/mov: add remux PCM to mp4 test
quink-black Jul 26, 2023
50ea738
avfilter: Deduplicate default audio inputs/outputs
mkver Aug 2, 2023
6d15643
avfilter/internal: Don't include video.h
mkver Aug 3, 2023
2f62a43
avfilter: Deduplicate default video inputs/outputs
mkver Aug 3, 2023
571d035
avfilter/vf_colorconstancy: Remove redundant CONFIG check
mkver Aug 3, 2023
19af142
avfilter/internal: Don't include formats.h
mkver Aug 3, 2023
19ffa2f
avfilter: Remove unnecessary formats.h inclusions
mkver Aug 3, 2023
428133a
avcodec/qsvenc: Remove unnecessary config_components.h inclusion
mkver Aug 4, 2023
dcc1847
avcodec/hwconfig: Move HWACCEL_CAP_* to a new header
mkver Jul 17, 2023
c48cc9c
avcodec/decode: Extend ff_hwaccel_frame_priv_alloc()'s task
mkver Aug 1, 2023
e35dfe8
avcodec/avcodec: Add FFHWAccel, hide internals of AVHWAccel
mkver Aug 1, 2023
d295b6b
avfilter: fix highshelf zdf coefficients
richardpl Aug 7, 2023
de71928
avfilter/avf_showcwt: add two more options
richardpl Aug 1, 2023
5ff88bb
avfilter/avf_showcwt: simplify
richardpl Aug 1, 2023
482a22e
avfilter/avf_showcwt: reduce latency/delay in some cases
richardpl Aug 3, 2023
f6d8464
configure: use just the pkg-config for sndio
brad0 Jun 17, 2023
c070970
vulkan_h264: fill correct ScalingList8x8 entries
lolzballs Aug 1, 2023
5012b4a
lavu: add video_hint API
Jul 10, 2023
418c954
lavc/libx264: add mb_info option
Jun 20, 2023
b98ee1a
aarch64/hevc: Replace br return with ret
CaseySmalley Jul 27, 2023
c7bfc82
avfilter/af_vibrato: refactor code
richardpl Aug 8, 2023
f296c76
avcodec/on2avc: use the matching AVTX context for the 512 sized iMDCT
cus Aug 5, 2023
2eb7df1
avcodec/on2avc: use correct fft sizes
cus Aug 6, 2023
9583a2c
fftools/ffprobe: Use proper enum type
mkver Aug 6, 2023
7a2b587
avformat/sbgdec: Use avio_read_to_bprint() where appropriate
mkver Aug 8, 2023
c797b64
avformat/matroskaenc: Support rotations
mkver Aug 6, 2023
fd8a395
avformat/matroskaenc: Don't reserve unnecessarily many EBML elements
mkver Aug 6, 2023
11623f3
fate/matroska: Add ALAC remux test
mkver Aug 6, 2023
4e43cdc
avformat/matroskaenc: Don't pretend to support unsupported codecs
mkver Aug 6, 2023
1df13b3
avformat/matroskaenc: Don't pretend to be able to mux RV30
mkver Aug 6, 2023
8a81ecc
avutil/bprint: Don't use value of AV_BPRINT_SIZE_AUTOMATIC directly
mkver Aug 6, 2023
8bea4a8
avutil/bprint: Allow size == 0 in av_bprint_init_for_buffer()
mkver Aug 6, 2023
c4f35ba
avutil/channel_layout: Account for \0 in sizes
mkver Aug 6, 2023
fcaff9b
avutil/tests/channel_layout: Also test non-AVBPrint variants
mkver Aug 6, 2023
bdc4553
avutil/tests/channel_layout: Don't include lavu/channel_layout.c
mkver Aug 6, 2023
3fc8041
avutil/tests/channel_layout: Test av_channel_layout_copy()
mkver Aug 6, 2023
d9d5695
avcodec/amfenc: Fix declaration-after-statement warning
mkver Aug 6, 2023
43db0e5
avformat/matroskaenc: Hoist check out of loop
mkver Aug 8, 2023
f49515b
avformat/matroskaenc: Remove unnecessary check
mkver Aug 8, 2023
1ed03b5
avformat/matroskaenc: Use proper AVIOContext
mkver Aug 8, 2023
cf20f18
avformat/matroskaenc: Use dedicated pointer for accesses
mkver Aug 8, 2023
3b75375
avformat/matroskaenc: Avoid allocations when writing Dynamic HDR10+
mkver Aug 8, 2023
a08ff28
avformat/dovi_isom: Don't use AVFormatContext* for logctx
mkver Aug 8, 2023
a315474
avformat/matroskaenc: Add const where appropriate
mkver Aug 8, 2023
b5968df
avformat/matroskaenc: Don't reserve space for HDR10+ when unnecessary
mkver Aug 8, 2023
59cb099
avformat/matroskaenc: Reindent after the previous commit
mkver Aug 8, 2023
d53acf4
avformat/matroskaenc: Don't write \0 unnecessarily
mkver Aug 8, 2023
a0c669d
add github workflow
nuomi2021 Jul 2, 2023
f22299e
cbs_h266: fix inference for sh_lmcs_used_flag and sh_explicit_scaling…
nuomi2021 Aug 7, 2023
c30ae3f
cbs_h266: fix inference for sh_alf_enabled_flag
nuomi2021 Jul 27, 2023
86b6cbd
cbs_h266: fix inference for xh_deblocking_filter_disabled_flag
nuomi2021 Jul 25, 2023
cd7d9b8
cbs_h266: fix slice_height_in_ctus for single slice tile
nuomi2021 Jul 29, 2023
ad051bf
cbs_h266: H266RawSliceHeader, expose NumEntryPoints
nuomi2021 Jul 24, 2023
09acd7b
cbs_h266: H266RawPredWeightTable, expose num_weights_l0 and num_weigh…
nuomi2021 Jul 28, 2023
0cdeebd
cbs_h266: H266RawSliceHeader, expose NumRefIdxActive[]
nuomi2021 Jul 27, 2023
c366dec
cbs_h266: slice_header, fix inference for pred_weight_table
nuomi2021 Aug 7, 2023
652c6f7
vvcdec: add thread executor
nuomi2021 May 13, 2023
9d8778f
vvcdec: add vvc decoder stub
nuomi2021 May 17, 2023
829b585
vvcdec: add vvc_data
nuomi2021 Aug 11, 2023
44886d1
vvcdec: add parameter parser for sps, pps, ph, sh
nuomi2021 Aug 11, 2023
8425804
vvcdec: add cabac decoder
nuomi2021 May 17, 2023
c66cd14
vvcdec: add reference management
nuomi2021 May 18, 2023
62c6d88
vvcdec: add motion vector decoder
nuomi2021 May 18, 2023
9283818
vvcdec: add inter prediction
nuomi2021 May 18, 2023
aef251a
vvcdec: add inv transform 1d
nuomi2021 May 18, 2023
7b4254c
vvcdec: add intra prediction
nuomi2021 May 18, 2023
9d46423
vvcdec: add LMCS, Deblocking, SAO, and ALF filters
nuomi2021 May 18, 2023
737e02a
vvcdec: add dsp init and inv transform
nuomi2021 May 18, 2023
fba776d
vvcdec: add CTU parser
nuomi2021 May 18, 2023
552527b
vvcdec: add CTU thread logical
nuomi2021 May 19, 2023
a8d6e82
vvcdec: add full vvc decoder
nuomi2021 May 19, 2023
d53d9c3
vvcdec: add asm code
nuomi2021 Aug 11, 2023
4b51ec4
vvcdec: add checkasm
nuomi2021 Aug 11, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
91 changes: 91 additions & 0 deletions .github/workflows/makefile.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
name: test
run-name: ${{ github.workflow }} - ${{ github.sha }}
on:
push:
branches: [ main, up ]
pull_request:
branches: [ main, up ]
workflow_dispatch:


jobs:
ffvvc-test:
name: ffvvc-test / ${{ matrix.os.name }}/${{ matrix.compiler.name }}/${{ matrix.assembler.name }}
env:
configure_flags: --enable-ffmpeg --disable-everything --enable-decoder=vvc --enable-parser=vvc --enable-demuxer=vvc --enable-protocol=file,pipe --enable-encoder=rawvideo --enable-muxer=rawvideo,md5
strategy:
fail-fast: false
matrix:
os:
- { name: linux, runner: ubuntu-latest, shell: bash, runner_threads: 4 }
- { name: windows, runner: windows-latest, shell: 'msys2 {0}', runner_threads: 1 }
compiler:
- { name: gcc, flags: --cc=gcc }
- { name: clang, flags: --cc=clang }
- { name: msvc, flags: --toolchain=msvc }
assembler:
- { name: no asm, flags: --disable-asm }
- { name: yasm, flags: --as=yasm }
- { name: nasm, flags: --as=nasm }
exclude:
- os: { name: linux, runner: ubuntu-latest, shell: bash, runner_threads: 4}
compiler: { name: msvc, flags: --toolchain=msvc }
- os: { name: linux, runner: ubuntu-latest, shell: bash, runner_threads: 4 }
assembler: { name: yasm, flags: --as=yasm }
- os: { name: linux, runner: ubuntu-latest, shell: bash, runner_threads: 4 }
assembler: { name: nasm, flags: --as=nasm }
- os: { name: windows, runner: windows-latest, shell: 'msys2 {0}', runner_threads: 1 }
compiler: { name: gcc, flags: --cc=gcc }
- os: { name: windows, runner: windows-latest, shell: 'msys2 {0}', runner_threads: 1 }
compiler: { name: clang, flags: --cc=clang }

runs-on: ${{ matrix.os.runner }}
defaults:
run:
shell: ${{ matrix.os.shell }}

steps:
- name: Get MSVC
if: ${{ matrix.compiler.name == 'msvc' && matrix.os.name == 'windows' }}
uses: ilammy/msvc-dev-cmd@v1

- name: Set up MSYS2
if: ${{ matrix.os.shell == 'msys2 {0}' }}
uses: msys2/setup-msys2@v2
with:
release: false
msystem: UCRT64
path-type: inherit
install: >-
make
diffutils

- name: Get assembler
if: ${{ matrix.os.shell == 'msys2 {0}' && matrix.assembler.name != 'no asm' }}
run: pacman --noconfirm -S ${{ matrix.assembler.name }}

- name: Get source
uses: actions/checkout@v3
with:
path: FFmpeg

- name: Configure
run: cd FFmpeg && ./configure ${{ matrix.compiler.flags }} ${{ matrix.assembler.flags }} ${{ env.configure_flags }} || (tail ffbuild/config.log; false)

- name: Build
run: cd FFmpeg && make -j8

- name: Get tests
uses: actions/checkout@v3
with:
repository: ffvvc/tests
path: tests

- name: Unit test
run: python3 tests/tools/ffmpeg.py --threads ${{ matrix.os.runner_threads }} --ffmpeg-path=./FFmpeg/ffmpeg tests/conformance/passed

- name: Check ASM
run: cd FFmpeg && make checkasm -j && ./tests/checkasm/checkasm

- name: Negative test
run: python3 tests/tools/ffmpeg.py --threads ${{ matrix.os.runner_threads }} --ffmpeg-path=./FFmpeg/ffmpeg tests/conformance/failed || true
4 changes: 2 additions & 2 deletions CREDITS
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
See the Git history of the project (git://source.ffmpeg.org/ffmpeg) to
See the Git history of the project (https://git.ffmpeg.org/ffmpeg) to
get the names of people who have contributed to FFmpeg.

To check the log, you can type the command "git log" in the FFmpeg
source directory, or browse the online repository at
http://source.ffmpeg.org.
https://git.ffmpeg.org/ffmpeg
45 changes: 45 additions & 0 deletions Changelog
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,34 @@ Entries are sorted chronologically from oldest to youngest within each release,
releases are sorted from youngest to oldest.

version <next>:
- libaribcaption decoder
- Playdate video decoder and demuxer
- Extend VAAPI support for libva-win32 on Windows
- afireqsrc audio source filter
- arls filter
- ffmpeg CLI new option: -readrate_initial_burst
- zoneplate video source filter
- command support in the setpts and asetpts filters
- Vulkan decode hwaccel, supporting H264, HEVC and AV1
- color_vulkan filter
- bwdif_vulkan filter
- nlmeans_vulkan filter
- RivaTuner video decoder
- xfade_vulkan filter
- vMix video decoder
- Essential Video Coding parser, muxer and demuxer
- Essential Video Coding frame merge bsf
- bwdif_cuda filter
- Microsoft RLE video encoder
- Raw AC-4 muxer and demuxer
- Raw VVC bitstream parser, muxer and demuxer
- Bitstream filter for editing metadata in VVC streams
- Bitstream filter for converting VVC from MP4 to Annex B
- scale_vt filter for videotoolbox
- transpose_vt filter for videotoolbox
- support for the P_SKIP hinting to speed up libx264 encoding

version 6.0:
- Radiance HDR image support
- ddagrab (Desktop Duplication) video capture filter
- ffmpeg -shortest_buf_duration option
Expand All @@ -28,6 +56,23 @@ version <next>:
- showcwt multimedia filter
- corr video filter
- adrc audio filter
- afdelaysrc audio filter
- WADY DPCM decoder and demuxer
- CBD2 DPCM decoder
- ssim360 video filter
- ffmpeg CLI new options: -stats_enc_pre[_fmt], -stats_enc_post[_fmt],
-stats_mux_pre[_fmt]
- hstack_vaapi, vstack_vaapi and xstack_vaapi filters
- XMD ADPCM decoder and demuxer
- media100 to mjpegb bsf
- ffmpeg CLI new option: -fix_sub_duration_heartbeat
- WavArc decoder and demuxer
- CrystalHD decoders deprecated
- SDNS demuxer
- RKA decoder and demuxer
- filtergraph syntax in ffmpeg CLI now supports passing file contents
as option values, by prefixing option name with '/'
- hstack_qsv, vstack_qsv and xstack_qsv filters


version 5.1:
Expand Down
10 changes: 7 additions & 3 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,6 @@ Codecs:
ccaption_dec.c Anshul Maheshwari, Aman Gupta
cljr Alex Beregszaszi
cpia.c Stephan Hilb
crystalhd.c Philip Langdale
cscd.c Reimar Doeffinger
cuviddec.c Timo Rothenpieler
dca* foo86
Expand Down Expand Up @@ -211,6 +210,7 @@ Codecs:
mqc* Nicolas Bertrand
msmpeg4.c, msmpeg4data.h Michael Niedermayer
msrle.c Mike Melanson
msrleenc.c Tomas Härdin
msvideo1.c Mike Melanson
nuv.c Reimar Doeffinger
nvdec*, nvenc* Timo Rothenpieler
Expand Down Expand Up @@ -265,7 +265,6 @@ Codecs:
xwd* Paul B Mahol

Hardware acceleration:
crystalhd.c Philip Langdale
dxva2* Hendrik Leppkes, Laurent Aimar, Steve Lhomme
d3d11va* Steve Lhomme
mediacodec* Matthieu Bouron, Aman Gupta
Expand Down Expand Up @@ -419,6 +418,7 @@ Muxers/Demuxers:
dv.c Roman Shaposhnik
electronicarts.c Peter Ross
epafdec.c Paul B Mahol
evc* Samsung (Dawid Kozinski)
ffm* Baptiste Coudurier
flic.c Mike Melanson
flvdec.c Michael Niedermayer
Expand All @@ -429,10 +429,12 @@ Muxers/Demuxers:
idcin.c Mike Melanson
idroqdec.c Mike Melanson
iff.c Jaikrishnan Menon
imf* Pierre-Anthony Lemieux
img2*.c Michael Niedermayer
ipmovie.c Mike Melanson
ircam* Paul B Mahol
iss.c Stefan Gehrer
jpegxl_anim_dec.c Leo Izen
jpegxl_probe.* Leo Izen
jvdec.c Peter Ross
kvag.c Zane van Iperen
Expand Down Expand Up @@ -544,6 +546,7 @@ LoongArch Shiyou Yin
Mac OS X / PowerPC Romain Dolbeau, Guillaume Poirier
Amiga / PowerPC Colin Ward
Linux / PowerPC Lauri Kasanen
RISC-V Rémi Denis-Courmont
Windows MinGW Alex Beregszaszi, Ramiro Polla
Windows Cygwin Victor Paesa
Windows MSVC Matthew Oliver, Hendrik Leppkes
Expand Down Expand Up @@ -615,7 +618,7 @@ Haihao Xiang (haihao) 1F0C 31E8 B4FE F7A4 4DC1 DC99 E0F5 76D4 76FC 437F
Jaikrishnan Menon 61A1 F09F 01C9 2D45 78E1 C862 25DC 8831 AF70 D368
James Almer 7751 2E8C FD94 A169 57E6 9A7A 1463 01AD 7376 59E0
Jean Delvare 7CA6 9F44 60F1 BDC4 1FD2 C858 A552 6B9B B3CD 4E6A
Leo Izen (thebombzen) B6FD 3CFC 7ACF 83FC 9137 6945 5A71 C331 FD2F A19A
Leo Izen (Traneptora) B6FD 3CFC 7ACF 83FC 9137 6945 5A71 C331 FD2F A19A
Loren Merritt ABD9 08F4 C920 3F65 D8BE 35D7 1540 DAA7 060F 56DE
Lynne FE50 139C 6805 72CA FD52 1F8D A2FE A5F0 3F03 4464
Michael Niedermayer 9FF2 128B 147E F673 0BAD F133 611E C787 040B 0FAB
Expand All @@ -626,6 +629,7 @@ Nikolay Aleksandrov 8978 1D8C FB71 588E 4B27 EAA8 C4F0 B5FC E011 13B1
Panagiotis Issaris 6571 13A3 33D9 3726 F728 AA98 F643 B12E ECF3 E029
Peter Ross A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B
Philip Langdale 5DC5 8D66 5FBA 3A43 18EC 045E F8D6 B194 6A75 682E
Pierre-Anthony Lemieux (pal) F4B3 9492 E6F2 E4AF AEC8 46CB 698F A1F0 F8D4 EED4
Ramiro Polla 7859 C65B 751B 1179 792E DAE8 8E95 8B2F 9B6C 5700
Reimar Doeffinger C61D 16E5 9E2C D10C 8958 38A4 0899 A2B9 06D4 D9C7
Reinhard Tartler 9300 5DC2 7E87 6C37 ED7B CA9A 9808 3544 9453 48A4
Expand Down
2 changes: 2 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,8 @@ tools/target_io_dem_fuzzer$(EXESUF): tools/target_io_dem_fuzzer.o $(FF_DEP_LIBS)

tools/enum_options$(EXESUF): ELIBS = $(FF_EXTRALIBS)
tools/enum_options$(EXESUF): $(FF_DEP_LIBS)
tools/enc_recon_frame_test$(EXESUF): $(FF_DEP_LIBS)
tools/enc_recon_frame_test$(EXESUF): ELIBS = $(FF_EXTRALIBS)
tools/scale_slice_test$(EXESUF): $(FF_DEP_LIBS)
tools/scale_slice_test$(EXESUF): ELIBS = $(FF_EXTRALIBS)
tools/sofa2wavs$(EXESUF): ELIBS = $(FF_EXTRALIBS)
Expand Down
9 changes: 8 additions & 1 deletion compat/w32pthreads.h
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,14 @@ typedef CONDITION_VARIABLE pthread_cond_t;
#define PTHREAD_CANCEL_ENABLE 1
#define PTHREAD_CANCEL_DISABLE 0

static av_unused unsigned __stdcall attribute_align_arg win32thread_worker(void *arg)
#if HAVE_WINRT
#define THREADFUNC_RETTYPE DWORD
#else
#define THREADFUNC_RETTYPE unsigned
#endif

static av_unused THREADFUNC_RETTYPE
__stdcall attribute_align_arg win32thread_worker(void *arg)
{
pthread_t *h = (pthread_t*)arg;
h->ret = h->func(h->arg);
Expand Down
10 changes: 5 additions & 5 deletions compat/windows/mswindres
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/sh

if [ "$1" = "--version" ]; then
rc.exe /?
rc.exe -?
exit $?
fi

Expand All @@ -10,12 +10,12 @@ if [ $# -lt 2 ]; then
exit 0
fi

EXTRA_OPTS="/nologo"
EXTRA_OPTS="-nologo"

while [ $# -gt 2 ]; do
case $1 in
-D*) EXTRA_OPTS="$EXTRA_OPTS /d$(echo $1 | sed -e "s/^..//" -e "s/ /\\\\ /g")" ;;
-I*) EXTRA_OPTS="$EXTRA_OPTS /i$(echo $1 | sed -e "s/^..//" -e "s/ /\\\\ /g")" ;;
-D*) EXTRA_OPTS="$EXTRA_OPTS -d$(echo $1 | sed -e "s/^..//" -e "s/ /\\\\ /g")" ;;
-I*) EXTRA_OPTS="$EXTRA_OPTS -i$(echo $1 | sed -e "s/^..//" -e "s/ /\\\\ /g")" ;;
-o) OPT_OUT="$2"; shift ;;
esac
shift
Expand All @@ -29,4 +29,4 @@ else
fi

eval set -- $EXTRA_OPTS
rc.exe "$@" /fo "$OUT" "$IN"
rc.exe "$@" -fo "$OUT" "$IN"
Loading