aboutsummaryrefslogtreecommitdiffstats
path: root/doc/encoders.texi
Commit message (Collapse)AuthorAgeFilesLines
* avcodec/dvbsubenc: add a min_bpp option to work around some decodersRonan Waide5 days1-0/+19
| | | | | | | | | As noted in the code in several places, some DVB subtitle decoders don't handle 2bpp color. This patch adds a min_bpp option which sets a lower bound on the number of bits-per-pixel in the color tables. It defaults to 4 to avoid the problematic 2bpp decoders. Signed-off-by: Ronan Waide <waider@waider.ie>
* avformat/lrcenc: add precision optionKacper Michajłow6 days1-0/+14
| | | | | | | Allows to output LRC with more precision than standard centiseconds. Time base is determined by number of requested digits. Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
* all: fix typos found by codespellTimo Rothenpieler7 days1-5/+5
|
* doc/encoders: Document mediacodec wrapperZhao Zhili2025-06-161-0/+69
| | | | | Reviewed-by: Marth64 <marth64@proxyid.net> Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
* avcodec: add APV encoder using liboapvDawid Kozinski2025-05-041-0/+36
| | | | | Co-authored-by: James Almer <jamrial@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* doc/encoders: Document png predMichael Niedermayer2025-04-101-0/+2
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* doc/encoders: Document compression_level for PNGMichael Niedermayer2025-04-101-0/+7
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* doc/encoders: Move FFV1 encoder to video encoder sectionAndreas Rheinhardt2025-03-311-42/+42
| | | | | | | It is not an audio encoder. Reviewed-by: Gyan Doshi <ffmpeg@gyani.pro> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/ffv1enc: Add -remap_optimizer optionMichael Niedermayer2025-03-311-0/+4
| | | | | | | This allows tuning how much effort (time) the encoder spends on optimizing the remap table Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* aacenc: remove support for AAC Main profileLynne2025-02-261-13/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | The Main profile of AAC is... terrible. It enables the use of delta coding across coefficients of two frames to try to increase compression, and it enabled one more pole for TNS filters. What the AAC authors failed to take into account were basic mathematics, as MDCT leakage (e.g. the spread of each frequency when represented in a discrete spectrum) is significant in most audio codecs. This leads to huge variations between each frame, basically rendering prediction completely pointless. In fact, enabling AAC-Main prediction does not, in general, even recoup the metadata losses from signalling the profile and prediction properties in the first place. So you lose efficiency by using AAC Main. The rumor is that it was put in the AAC spec for patent reasons, though patent-wise, it has about as much use as a patent for a bicycle designed for use by snakes. The only other thing AAC Main changes is it permits 3-pole TNS filters. When AAC's bands are absolutely tiny, except for very high frequency bands, where you're likely to use PNS instead. Just get rid of it.
* doc/encoders: very basic FFv1 documentationMichael Niedermayer2024-12-021-0/+38
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* doc/av1_qsv: Add missed optionsFei Wang2024-09-041-0/+8
| | | | Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* doc/av1_qsv: Fix typoFei Wang2024-09-041-1/+1
| | | | Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* avcodec: add external enc libvvenc for H266/VVCThomas Siedel2024-06-151-0/+64
| | | | | | | | | | | | Add external encoder VVenC for H266/VVC encoding. Register new encoder libvvenc. Add libvvenc to wrap the vvenc interface. libvvenc implements encoder option: preset,qp,qpa,period, passlogfile,stats,vvenc-params,level,tier. Enable encoder by adding --enable-libvvenc in configure step. Co-authored-by: Christian Bartnik chris10317h5@gmail.com Signed-off-by: Thomas Siedel <thomas.ff@spin-digital.com>
* lavc/qsvenc: add support for oneVPL string APIMandava, Mounika2024-05-071-0/+14
| | | | | | | | | | | | A new option -qsv_params <str> is added, where <str> is a :-separated list of key=value parameters. Example: $ ffmpeg -y -f lavfi -i testsrc -vf "format=nv12" -c:v h264_qsv -qsv_params "TargetUsage=1:GopPicSize=30:GopRefDist=2:TargetKbps=5000" -f null - Signed-off-by: Mounika Mandava <mounika.mandava@intel.com> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* avcodec/ac3enc: Remove disabled code for RealAudio variant of AC-3Andreas Rheinhardt2024-04-111-2/+1
| | | | | | | | Implicitly disabled by 4679a474f06c229b10976d7f0b4eee0613c2715a. Given that no one has ever complained about this, this commit removes the now dead code. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* doc/encoders: add missing libxvid optionJames Almer2024-04-051-1/+6
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* doc/encoders: remove non-existent flagJames Almer2024-04-051-3/+0
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/liblc3: add encoding/decoding support of LC3 audio codecAntoine Soulier via ffmpeg-devel2024-04-041-0/+57
| | | | | | | The LC3 audio codec is the default codec of Bluetooth LE audio. This is a wrapper over the liblc3 library (https://github.com/google/liblc3). Signed-off-by: Antoine Soulier <asoulier@google.com>
* lavc/vaapi_encode: Enable block level bitrate controlFei Wang2024-03-181-0/+4
| | | | Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* lavc/qsvenc: update the selection of bitrate control methodHaihao Xiang2024-02-291-2/+5
| | | | | | The default method is changed to CQP Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* lavc/libvpxenc: add screen-content-mode optionDariusz Marcinkiewicz2024-02-151-0/+6
| | | | | | | | This exposes VP8E_SET_SCREEN_CONTENT_MODE option from libvpx. Co-authored-by: Erik Språng <sprang@webrtc.org> Signed-off-by: Dariusz Marcinkiewicz <darekm@google.com> Signed-off-by: James Zern <jzern@google.com>
* doc/encoders/opus: fix typoMarth642024-01-071-1/+1
| | | | Signed-off-by: Marth64 <marth64@proxyid.net>
* doc/encoders: libxeve doc typo, baselie->baselineMarth642024-01-041-1/+1
|
* doc/encoders/libx264: review and extend option descriptionStefano Sabatini2023-12-031-29/+36
| | | | | Also, merge x264opts and x264-opts option docs to avoid duplication and make it clearer that they provide mostly the same functionality.
* avcodec/evc_encoder: Provided support for EVC encoderDawid Kozinski2023-11-201-0/+69
| | | | | | | | | - Added EVC encoder wrapper - Changes in project configuration file and libavcodec Makefile - Added documentation for xeve wrapper Signed-off-by: Dawid Kozinski <d.kozinski@samsung.com> Signed-off-by: James Almer <jamrial@gmail.com>
* doc/encoders/libopus: clarify lowdelay and cutoff optionsStefano Sabatini2023-10-061-2/+5
| | | | | | | | | Extend descriptions for the application=lowdelay and cutoff options. Based on notes by Mingye Wang. Address issues: http://trac.ffmpeg.org/ticket/10330 http://trac.ffmpeg.org/ticket/10343
* doc/encoders/libxvid: fix references for me_quality optionStefano Sabatini2023-10-061-12/+9
| | | | | | | | | | Drop reference to constants removed in 94eed68ace9f2416af8. In particular, rename me_method to me_quality and add description for supported values. Address trac issue: http://trac.ffmpeg.org/ticket/10003
* doc/encoders/libx264: clarify meaning of level optionStefano Sabatini2023-10-061-0/+14
| | | | | | | | In particular, clarify that it can either be set as a field of AVCodecContext or as an x264 option, using a different specification. Should address trac issue: http://trac.ffmpeg.org/ticket/3947
* lavc/vaapi_encode: Add VAAPI AV1 encoderFei Wang2023-09-221-0/+14
| | | | | Signed-off-by: Fei Wang <fei.w.wang@intel.com> Acked-by: Neal Gompa <ngompa13@gmail.com>
* lavc/libx264: add mb_info optionElias Carotti2023-08-081-0/+4
| | | | | Pass the information about unchanged parts of the frame by means of the AVVideoHint side data.
* lavc/msrleenc: Add msrle encoderTomas Härdin2023-06-201-0/+14
| | | | Keyframes are marked automagically
* avcodec/libmp3lame: make it possible to set copyright/original flagsLukáš Lalinský2023-05-101-0/+7
|
* doc/encoders: add an entry for the frame_length option from libfdk-aacJames Almer2023-03-311-0/+5
| | | | | Reviewed-by: Martin Storsjö <martin@martin.st> Signed-off-by: James Almer <jamrial@gmail.com>
* doc/encoders: Add av1 to qsv encoder's summaryWenbin Chen2023-03-171-2/+2
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvenc: Add dynamic setting support of low_delay_brc to av1_qsvWenbin Chen2023-03-171-1/+1
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* doc: remove docs for options removed at the bumpMarton Balint2023-02-191-16/+0
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* libavcodec/qsvenc_av1: Add max_frame_size support to av1_qsv encoderWenbin Chen2023-01-091-0/+5
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvenc_av1: Add low_delay_brc support to av1_qsv encoderWenbin Chen2023-01-091-0/+5
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvenc: Add skip_frame support to qsvencWenbin Chen2022-11-071-0/+36
| | | | | | | | | | | | | | | | | Add skip_frame support to qsvenc. Use per-frame metadata "qsv_skip_frame" to control it. skip_frame option defines the behavior of qsv_skip_frame. no_skip: Frame skipping is disabled. insert_dummy: Encoder inserts into bitstream frame where all macroblocks are encoded as skipped. insert_nothing: Similar to insert_dummy, but encoder inserts nothing. The skipped frames are still used in brc. For example, gop still include skipped frames, and the frames after skipped frames will be larger in size. brc_only: skip_frame metadata indicates the number of missed frames before the current frame. Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* doc/encoders: add doc of the tier option for hevc_qsvnyanmisaka2022-11-071-0/+9
| | | | Signed-off-by: nyanmisaka <nst799610810@gmail.com>
* doc/encoders: Add doc for av1_qsvWenbin Chen2022-10-241-0/+32
| | | | | | Add doc for av1_qsv. Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvenc: Add pic_timing_sei reset support to qsvWenbin Chen2022-09-301-0/+4
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvenc: Add bitrate reset support to qsvencWenbin Chen2022-09-301-0/+6
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvenc: Add framerate reset support to qsvWenbin Chen2022-09-301-0/+3
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* avcodec/libvpxenc: add -min-gf-intervalJames Zern2022-09-221-0/+2
| | | | | | | | this maps to the vpxenc argument with the same name and the VP9E_SET_MIN_GF_INTERVAL codec control Signed-off-by: James Zern <jzern@google.com> Reviewed-by: Vignesh Venkatasubramanian <vigneshv@google.com>
* libavcodec/qsvenc: Add low_delay_brc reset support to qsvencWenbin Chen2022-09-091-0/+4
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvenc: Add max/min qp reset support in qsvencWenbin Chen2022-09-091-0/+11
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvenc: Add intra refresh reset support to qsvencWenbin Chen2022-09-091-0/+7
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvenc: Add "slice" intra refresh type to qsvencWenbin Chen2022-09-091-4/+8
| | | | | | | Add "slice" intra refresh type to h264_qsv and hevc_qsv. This type means horizontal refresh by slices without overlapping. Also update the doc. Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>