summaryrefslogtreecommitdiff
path: root/doc
Commit message (Collapse)AuthorAge
* doc: remove docs for options removed at the bumpMarton Balint2023-02-19
| | | | | Signed-off-by: Marton Balint <cus@passwd.hu> (cherry picked from commit 3807fbd90ab9c5125d21b39017ec48d40d3f019f)
* swresample/swresample: add a used channel layout option using the new APIJames Almer2023-02-19
| | | | | | | Replaces the "used channel count" option, which is now deprecated. Signed-off-by: James Almer <jamrial@gmail.com> (cherry picked from commit 223c70cf1d8b816b59dede36a21492d7e8542e06)
* doc/resampler.texi: add missing swr channel layout optionsJames Almer2023-02-19
| | | | | Signed-off-by: James Almer <jamrial@gmail.com> (cherry picked from commit 1d14959f12ffd720377684af830a51d0cdb2aa8c)
* Update things for 6.0Michael Niedermayer2023-02-19
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* doc/APIchanges: Add 6.0 cut pointMichael Niedermayer2023-02-19
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* doc/APIchange: fill in missing thingsMichael Niedermayer2023-02-19
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_libplacebo: add SMPTE ST2094 tone-mappersNiklas Haas2023-02-17
| | | | libplacebo gained these exciting new functions upstream.
* avfilter: add QSV variants of the stack filtersHaihao Xiang2023-02-16
| | | | | | | | | | | | | | | | | | | Include hstack_qsv, vstack_qsv and xstack_qsv. They may accept input streams with different sizes. Examples: $ ffmpeg -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -filter_complex "[0:v][0:v]hstack_qsv" -f null - $ ffmpeg \ -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -filter_complex "[0:v][1:v][2:v][3:v]xstack_qsv=inputs=4:fill=0x000000:layout=0_0_1920x1080|w0_0_1920x1080|0_h0_1920x1080|w0_h0_1920x1080" \ -f null - Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* avformat: deprecate AVFormatContext io_close callbackMarton Balint2023-02-16
| | | | | | io_close2 should be used instead. Signed-off-by: Marton Balint <cus@passwd.hu>
* avutil/frame: deprecate AVFrame.coded_picture_number and display_picture_numberMarton Balint2023-02-13
| | | | | | | | Their usefulness is questionable, very few decoders set them, and their type should have been int64_t. A replacement field can be added later if a valid use case is found. Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec: add AVCodecContext.frame_num as 64 bit variant to frame_numberMarton Balint2023-02-13
| | | | | | | | | | Frame counters can overflow relatively easily (INT_MAX number of frames is slightly more than 1 year for 60 fps content), so make sure we use 64 bit values for them. Also deprecate the old 32 bit frame_number attribute. Signed-off-by: Marton Balint <cus@passwd.hu>
* fftools/ffmpeg: add special syntax for loading filter options from filesAnton Khirnov2023-02-12
| | | | | | | | | | | | | | | | | Many filters accept user-provided data that is cumbersome to provide as text strings - e.g. binary files or very long text. For that reason such filters typically provide a option whose value is the path from which the filter loads the actual data. However, filters doing their own IO internally is a layering violation that the callers may not expect, and is thus best avoided. With the recently introduced graph segment parsing API, loading option values from files can now be handled by the caller. This commit makes use of the new API in ffmpeg CLI. Any option name in the filtergraph syntax can now be prefixed with a slash '/'. This will cause ffmpeg to interpret the value as the path to load the actual value from.
* lavfi: add a new filtergraph parsing APIAnton Khirnov2023-02-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Callers currently have two ways of adding filters to a graph - they can either - create, initialize, and link them manually - use one of the avfilter_graph_parse*() functions, which take a (typically end-user-written) string, split it into individual filter definitions+options, then create filters, apply options, initialize filters, and finally link them - all based on information from this string. A major problem with the second approach is that it performs many actions as a single atomic unit, leaving the caller no space to intervene in between. Such intervention would be useful e.g. to - modify filter options; - supply hardware device contexts; both of which typically must be done before the filter is initialized. Callers who need such intervention are then forced to invent their own filtergraph parsing, which is clearly suboptimal. This commit aims to address this problem by adding a new modular filtergraph parsing API. It adds a new avfilter_graph_segment_parse() function to parse a string filtergraph description into an intermediate tree-like representation (AVFilterGraphSegment and its children). This intermediate form may then be applied step by step using further new avfilter_graph_segment*() functions, with user intervention possible between each step.
* tools: add general_assembly.plJ. Dekker2023-02-12
| | | | | | | | This script generates the current general assembly voters according to the criteria of '20 commits in the last 36 months'. Signed-off-by: J. Dekker <jdek@itanimul.li> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avformat: add RKA demuxerPaul B Mahol2023-02-11
|
* avcodec: add RKA decoderPaul B Mahol2023-02-11
|
* doc/examples: fix make command, reference Makefile.exampleStefano Sabatini2023-02-11
| | | | Fix regression since b25d6290c67e193.
* examples/Makefile.example: add note about missing entriesStefano Sabatini2023-02-11
|
* examples: apply doxy entries consistency fixesStefano Sabatini2023-02-11
| | | | Use consistent format for the @file field and file description.
* examples: rename transcoding to transcodeStefano Sabatini2023-02-11
|
* examples: rename scaling_video to scale_videoStefano Sabatini2023-02-11
|
* examples: rename resampling audio to resample_audioStefano Sabatini2023-02-11
|
* examples: rename remuxing to remuxStefano Sabatini2023-02-11
|
* examples: rename qsvdec to qsv_decodeStefano Sabatini2023-02-11
|
* examples: rename muxing to muxStefano Sabatini2023-02-11
|
* examples: rename metadata to show_metadataStefano Sabatini2023-02-11
|
* examples: rename http_multiclient to avio_http_serve_filesStefano Sabatini2023-02-11
|
* examples: rename filtering_video to decode_filter_videoStefano Sabatini2023-02-11
|
* examples: rename filtering_audio to decode_filter_audioStefano Sabatini2023-02-11
|
* examples: rename demuxing_decoding to demux_decodeStefano Sabatini2023-02-11
| | | | Follow general scheme VERB_OBJECT.
* examples: rename avio_reading to avio_read_callbackStefano Sabatini2023-02-11
| | | | Adopt general scheme VERB_OBJECT.
* doc/filters/astats: sort measure entries, add missing onesStefano Sabatini2023-02-11
| | | | | | | Also apply minor consistency and formatting fixes. Fix trac issue: http://trac.ffmpeg.org/ticket/8397
* avformat: add SDNS demuxerPaul B Mahol2023-02-11
|
* fftools/ffmpeg: rename -enc_stats* to -stats_enc*Anton Khirnov2023-02-10
| | | | | | | This is consistent with -stats_mux* As the options were added very recently, this should not break any users.
* Bump major versions of all librariesJames Almer2023-02-09
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/{color_utils, csp}: merge color_utils into csp and expose APILeo Izen2023-02-09
| | | | | | | | | | | | | | | | | | | | | | | | libavutil/color_utils contains some avpriv_ symbols that map enum AVTransferCharacteristic values to gamma-curve approximations and to the actual transfer functions to invert them (i.e. -> linear). There's two issues with this: (1) avpriv is evil and should be avoided whenever possible (2) libavutil/csp.h exposes a public API for handling color that already handles primaries and matricies I don't see any reason this API has to be private, so this commit takes the functionality from avutil/color_utils and merges it into avutil/csp with an exposed av_ API rather than the previous avpriv_ API. Every reference to the previous API has been updated to point to the new one. color_utils.h has been deleted as well. This should not break any applications as it only contained avpriv_ symbols in the first place, so nothing in that header could be referenced by other applications. Signed-off-by: Leo Izen <leo.izen@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avcodec: Make avcodec_decode_subtitle2 accept a const AVPacket*Andreas Rheinhardt2023-02-09
| | | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* fftools/ffmpeg: add an option for writing pre-muxing statsAnton Khirnov2023-02-09
| | | | | | Analogous to -enc_stats*, but happens right before muxing. Useful because bitstream filters and the sync queue can modify packets after encoding and before muxing. Also has access to the muxing timebase.
* avformat/hls: Add option to retry failed segments for hlsgnattu2023-02-09
| | | | | | | | | | | Current HLS implementation simply skip a failed segment to catch up the stream, but this is not optimal for some use cases like livestream recording. Add an option to retry a failed segment to ensure the output file is a complete stream. Signed-off-by: gnattu <gnattuoc@me.com> Reviewed-by: Steven Liu <liuqi05@kuaishou.com>
* lavc/decode: allow using AV_CODEC_FLAG_COPY_OPAQUE for decodingAnton Khirnov2023-02-04
| | | | | Use it to propagate AVPacket.opaque[_ref] to corresponding AVFrame fields. This is a more convenient alternative to reordered_opaque.
* avformat: add WavArc demuxerPaul B Mahol2023-02-04
|
* avcodec: add WavArc decoderPaul B Mahol2023-02-04
|
* ffmpeg: add video heartbeat capability to fix_sub_durationJan Ekström2023-02-03
| | | | | | | | | | | | | | | | | | | Splits the currently handled subtitle at random access point packets that can be configured to follow a specific output stream. Currently only subtitle streams which are directly mapped into the same output in which the heartbeat stream resides are affected. This way the subtitle - which is known to be shown at this time can be split and passed to muxer before its full duration is yet known. This is also a drawback, as this essentially outputs multiple subtitles from a single input subtitle that continues over multiple random access points. Thus this feature should not be utilized in cases where subtitle output latency does not matter. Co-authored-by: Andrzej Nadachowski <andrzej.nadachowski@24i.com> Co-authored-by: Bernard Boulay <bernard.boulay@24i.com> Signed-off-by: Jan Ekström <jan.ekstrom@24i.com>
* fftools/ffmpeg: support input frame params in encoding statsAnton Khirnov2023-01-31
|
* doc/general_contents: sync with available decoders and demuxersPaul B Mahol2023-01-30
|
* avfilter: add VA-API variants of the stack filtersHaihao Xiang2023-01-30
| | | | | | | | | | | | | | | | | | | Include hstack_vaapi, vstack_vaapi and xstack_vaapi. They may accept input streams with different sizes. libva2 (VA-API 1.0+) is required. Example: $ ffmpeg -hwaccel vaapi -hwaccel_output_format vaapi -i input.h265 -filter_complex "[0:v][0:v]hstack_vaapi" -c:v h264_vaapi out.h264 $ ffmpeg \ -hwaccel vaapi -hwaccel_output_format vaapi -i input.h264 \ -hwaccel vaapi -hwaccel_output_format vaapi -i input.h264 \ -hwaccel vaapi -hwaccel_output_format vaapi -i input.h264 \ -hwaccel vaapi -hwaccel_output_format vaapi -i input.h264 \ -filter_complex "[0:v][1:v][2:v][3:v]xstack_vaapi=inputs=4:fill=0x000000:layout=0_0_1920x1080|w0_0_1920x1080|0_h0_1920x1080|w0_h0_1920x1080" \ -c:v hevc_vaapi out.h265 Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* lavc/encode: pass through frame durations to encoded packetsAnton Khirnov2023-01-29
| | | | | | The generic code can only handle the no-delay case. Encoders with delay need to be handled individually, which will be done in the following commits.
* lavc: add a codec flag for propagating opaque from frames to packetsAnton Khirnov2023-01-29
| | | | | | | | | This is intended to be a more convenient replacement for reordered_opaque. Add support for it in the two encoders that offer AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE: libx264 and libx265. Other encoders will be supported in future commits.
* doc/ffmpeg: drop non-existent -dc optionAnton Khirnov2023-01-29
|
* fftools/ffmpeg: add options for writing encoding statsAnton Khirnov2023-01-29
| | | | | | | Similar to -vstats, but more flexible: - works for audio as well as video - frame and/or packet information - user-specifiable format