Anton Khirnov
6c6f13baf3
fftools/ffmpeg: return errors from find_codec_or_die() instead of aborting
...
Rename the function to just find_codec().
1 year ago
Anton Khirnov
2e6afa799e
fftools/cmdutils: add error handling to GROW_ARRAY()
1 year ago
Anton Khirnov
b23abb7c48
fftools/cmdutils: add error handling to grow_array()
1 year ago
Anton Khirnov
6be4a29397
fftools/cmdutils: add error handling to allocate_array_elem()
1 year ago
Anton Khirnov
8eb5adeab8
fftools/cmdutils: drop unused ALLOC_ARRAY_ELEM()
1 year ago
Anton Khirnov
26e1e80152
fftools/ffmpeg_opt: reimplement -streamid using a dictionary
...
This does not require an arbitrary limit on the number of streams.
Also, return error codes from opt_streamid() instead of aborting.
1 year ago
Anton Khirnov
37abb3a419
fftools/cmdutils: return error codes from setup_find_stream_info_opts() instead of aborting
1 year ago
Anton Khirnov
13ebc9a0a9
fftools/ffmpeg_filter: replace remaining report_and_exit() with error codes
1 year ago
Anton Khirnov
cb8242db8d
fftools/ffmpeg_filter: return error codes from set_channel_layout() instead of aborting
1 year ago
Anton Khirnov
5ba7aa2ce8
fftools/ffmpeg_filter: return error codes from fg_create() instead of aborting
1 year ago
Anton Khirnov
8db96808bc
fftools/ffmpeg_filter: return error codes from choose_pix_fmts() instead of aborting
1 year ago
Anton Khirnov
8815adfe75
fftools/ffmpeg_filter: replace remaining exit_program() with error codes
1 year ago
Anton Khirnov
a52ee1aa47
fftools/ffmpeg_filter: return error codes from init_input_filter() instead of aborting
1 year ago
Anton Khirnov
ab16e324ea
fftools/ffmpeg_filter: return error codes from ofilter_bind_ost() instead of aborting
1 year ago
Anton Khirnov
6298dd683b
fftools/ffmpeg_dec: drop redundant handling of AVERROR_EXPERIMENTAL
...
Normal error handling does the job just as well.
1 year ago
Anton Khirnov
518b49a735
fftools/ffmpeg_dec: return error codes from dec_packet() instead of aborting
1 year ago
Anton Khirnov
e0f4259689
fftools/ffmpeg_mux: return errors from of_output_packet() instead of aborting
1 year ago
Anton Khirnov
2b4afe8169
fftools/ffmpeg_enc: return errors from encode_frame() instead of aborting
1 year ago
Anton Khirnov
43bcf631d0
fftools/ffmpeg_enc: return errors from enc_flush() instead of aborting
1 year ago
Anton Khirnov
dde3de0170
fftools/ffmpeg_enc: return errors from do_*_out() instead of aborting
1 year ago
Anton Khirnov
aa1173feee
fftools/ffmpeg_enc: return errors from enc_open() instead of aborting
1 year ago
Anton Khirnov
80a64800ea
fftools/ffmpeg_enc: return errors from enc_frame() instead of aborting
1 year ago
Anton Khirnov
c4b074676a
fftools/ffmpeg_mux_init: avoid invalid memory access in set_dispositions()
...
This function assumes AVMEDIA_* are always positive, while in fact it
can also handle AVMEDIA_TYPE_UNKNOWN, which is -1.
1 year ago
Anton Khirnov
3a89e6d352
fftools/ffmpeg_filter: restrict reap_filters() to a single filtergraph
...
This is more natural, as all except one of its callers require
processing only one filtergraph.
1 year ago
Anton Khirnov
9d44eb8af5
fftools/ffmpeg_filter: stop accessing encoder from pixfmt selection
...
ffmpeg CLI pixel format selection for filtering currently special-cases
MJPEG encoding, where it will restrict the supported list of pixel
formats depending on the value of the -strict option. In order to get
that value it will apply it from the options dict into the encoder
context, which is a highly invasive action even now, and would become a
race once encoding is moved to its own thread.
The ugliness of this code can be much reduced by moving the special
handling of MJPEG into ofilter_bind_ost(), which is called from encoder
init and is thus synchronized with it. There is also no need to write
anything to the encoder context, we can evaluate the option into our
stack variable.
There is also no need to access AVCodec at all during pixel format
selection, as the pixel formats array is already stored in
OutputFilterPriv.
1 year ago
Anton Khirnov
45035154be
tests/fate: fix mismatches between requested and actually used pixel formats
1 year ago
Anton Khirnov
037d364797
fftools/ffmpeg_filter: move "smart" pixfmt selection to ffmpeg_mux_init
...
This code works on encoder information and has no interaction with
filtering, so it does not belong in ffmpeg_filter.
1 year ago
Anton Khirnov
249bca763d
fftools/ffmpeg_mux_init: handle pixel format endianness
...
When -pix_fmt designates a BE/LE pixel format, it gets translated into
the native one by av_get_pix_fmt(). This may not always be the best
choice, as the encoder might only support one endianness. In such a
case, explicitly choose the endianness supported by the encoder.
While this is currently redundant with choose_pixel_fmt() in
ffmpeg_filter.c, the latter code will be deprecated in following commits.
1 year ago
Tobias Rapp
0b075b4092
doc/filters: Extend description of overlay filter format option values
1 year ago
Tobias Rapp
afaa345824
tests/fate: Add test for overlay filter using yuv444p10 output format
1 year ago
Tobias Rapp
6747cda5ca
avfilter/vf_overlay: Add support for yuv444p10 pixel format
1 year ago
Stephen Hutchinson
efa6cec759
configure: bump minimum AviSynth+ header version
...
AVISYNTH_INTERFACE_VERSION 10 fell in-between the releases of
3.7.2 and 3.7.3, and is required to be able to read the channel
layout information.
Signed-off-by: Stephen Hutchinson <qyot27@gmail.com>
1 year ago
Stephen Hutchinson
1e36e1f258
avisynth: pass audio channel layout
...
Signed-off-by: Stephen Hutchinson <qyot27@gmail.com>
1 year ago
Paul B Mahol
72390c7d80
avfilter/vf_pseudocolor: add heat preset
1 year ago
Paul B Mahol
5d8879208c
avfilter/vf_pseudocolor: add cool preset
1 year ago
Rémi Denis-Courmont
61e5ca4ded
lavc/bswapdsp: purge RISC-V V bswap32
...
This cannot beat the Zbb implementation, and it is unlikely that a real
meaningful CPU design would support V and not Zbb. The best loop rewrite
that I could come up with (4 shifts, 2 ands, 3 ors) is still ~40% slower
than Zbb.
A proper faster vector implementation should be feasible with the
cryptographic vector extensions, but that is a story for another time.
1 year ago
Rémi Denis-Courmont
5de1db5370
lavc/bswapdsp: rewrite RISC-V V bswap16
...
This favours bit-wise logic over slow strided stores.
1 year ago
Rémi Denis-Courmont
b6585eb04c
lavu: add/use flag for RISC-V Zba extension
...
The code was blindly assuming that Zbb or V implied Zba. While the
earlier is practically always true, the later broke some QEMU setups,
as V was introduced earlier than Zba.
1 year ago
Rémi Denis-Courmont
98e4dd39c5
checkasm: test Zbb before V
...
Without this, Zbb functions get shadowed by V functions on devices
supporting both extensions, and never tested.
1 year ago
Rémi Denis-Courmont
2eb55157aa
lavc/aacpsdsp: unroll RISC-V V add_squares
...
This slightly improves performance with the Device Under Test.
1 year ago
Zhao Zhili
be7ac511a6
avformat/mov: avss box should be AV_CODEC_ID_CAVS
...
I cannot find the spec, but according to the original commit
d4fdba0df7
, it's CAVS. e571305a71
changed it to AVS by
accident. Ten years on, nothing happened. We still have the
sample [1], however, since there is no cavs_mp4tofoobar bsf, the
cavs decoder doesn't work. I don't know if there is any use case.
[1] https://samples.ffmpeg.org/AVS/AVSFileFormat/AVSFileFormat.mp4
Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
1 year ago
Zhao Zhili
3af0dc6d05
avutil/bfin: remove dead code
...
The code is unused for a decade since bf6c84d7eb
.
Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
1 year ago
Steven Liu
2cd09fec9f
avformat/flvdec: support demux vp9 in enhanced flv
...
Tested-by: Tristan Matthews <tmatth@videolan.org>
Tested-by: Neal Gompa <ngompa13@gmail.com>
Reviewed-by: Tristan Matthews <tmatth@videolan.org>
Reviewed-by: Neal Gompa <ngompa13@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
1 year ago
Steven Liu
0693a2a86e
avformat/flvenc: support mux vp9 in enhanced flv
...
Tested-by: Tristan Matthews <tmatth@videolan.org>
Tested-by: Neal Gompa <ngompa13@gmail.com>
Reviewed-by: Tristan Matthews <tmatth@videolan.org>
Reviewed-by: Neal Gompa <ngompa13@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
1 year ago
Steven Liu
23b02557e9
avformat/flvdec: support demux av1 in enhanced flv
...
Tested-by: Tristan Matthews <tmatth@videolan.org>
Tested-by: Neal Gompa <ngompa13@gmail.com>
Reviewed-by: Tristan Matthews <tmatth@videolan.org>
Reviewed-by: Neal Gompa <ngompa13@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
1 year ago
Steven Liu
7a5e9a68b0
avformat/flvenc: support mux av1 in enhanced flv
...
Tested-by: Tristan Matthews <tmatth@videolan.org>
Tested-by: Neal Gompa <ngompa13@gmail.com>
Reviewed-by: Tristan Matthews <tmatth@videolan.org>
Reviewed-by: Neal Gompa <ngompa13@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
1 year ago
Steven Liu
ac5cc66f9e
avformat/flvdec: support demux hevc in enhanced flv
...
Tested-by: Tristan Matthews <tmatth@videolan.org>
Tested-by: Neal Gompa <ngompa13@gmail.com>
Reviewed-by: Tristan Matthews <tmatth@videolan.org>
Reviewed-by: Neal Gompa <ngompa13@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
1 year ago
Steven Liu
aa83654d94
avformat/flvenc: support mux hevc in enhanced flv
...
Tested-by: Tristan Matthews <tmatth@videolan.org>
Tested-by: Neal Gompa <ngompa13@gmail.com>
Reviewed-by: Tristan Matthews <tmatth@videolan.org>
Reviewed-by: Neal Gompa <ngompa13@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
1 year ago
Rémi Denis-Courmont
3d79afbe70
lavu/fixed_dsp: unroll RISC-V V loop
...
Before:
butterflies_fixed_c: 804.7
butterflies_fixed_rvv_i32: 348.2
After:
butterflies_fixed_rvv_i32: 308.7
1 year ago
Rémi Denis-Courmont
d8ea5f50e2
checkasm: print usage on invalid arguments
...
This checks that arguments are handled. If not, then this prints a
short usage notice and returns an error.
1 year ago