summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* lavfi/overlay_vaapi: set defalut alpha value as 1.0Fei Wang2022-08-09
| | | | | | | | | The present default value of 0 will render the overlay video invisible. A default of 1.0 is consistent with most common use cases. Signed-off-by: Fei Wang <fei.w.wang@intel.com> Reviewed-by: Philip Langdale <philipl@overt.org> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* doc/filters: correct description of overlay_vaapiFei Wang2022-08-09
| | | | | | Signed-off-by: Fei Wang <fei.w.wang@intel.com> Reviewed-by: Philip Langdale <philipl@overt.org> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* doc/filters: add examples for amix to subsectionGyan Doshi2022-08-09
|
* x86/tx_float: save a branch during coefficient deinterleavingLynne2022-08-09
| | | | | | | | | | | Directly branch into the special 64-point deinterleave subroutine rather than going through the general deinterleave. 64-point transform timings on Zen 3: Before: 1974 decicycles in av_tx (fft),16776864 runs, 352 skips After: 1956 decicycles in av_tx (fft),16775378 runs, 1838 skips
* checkasm: Silence warnings about unused return value from read()Martin Storsjö2022-08-08
| | | | | | | This codepath is enabled by default on arm, if the linux perf API is available, unless disabled with --disable-linux-perf. Signed-off-by: Martin Storsjö <martin@martin.st>
* fftools/ffmpeg: move handling corrupt packets to the input threadAnton Khirnov2022-08-08
|
* fftools/ffmpeg_demux: do not store demux packet in the contextAnton Khirnov2022-08-08
| | | | Its use is local to input_thread().
* fftools/ffmpeg_demux: factorize signalling end of demuxingAnton Khirnov2022-08-08
|
* fftools/ffmpeg: move -stream_loop handling to the demuxer threadAnton Khirnov2022-08-08
| | | | | | | | | | | | | -stream_loop is currently handled by destroying the demuxer thread, seeking, then recreating it anew. This is very messy and conflicts with the future goal of moving each major ffmpeg component into its own thread. Handle -stream_loop directly in the demuxer thread. Looping requires the demuxer to know the duration of the file, which takes into account the duration of the last decoded audio frame (if any). Use a thread message queue to communicate this information from the main thread to the demuxer thread.
* fftools/ffmpeg: move seek_to_start() to ffmpeg_demux.cAnton Khirnov2022-08-08
| | | | Reduces the diff in the following commit.
* fftools/ffmpeg: move get_input_packet() to ffmpeg_demux.cAnton Khirnov2022-08-08
| | | | Also rename it to use the ifile_* namespace.
* fftools/ffmpeg: report new streams from the input threadAnton Khirnov2022-08-08
| | | | | | This avoids a potential race with the demuxer adding new streams. It is also more efficient, since we no longer do inter-thread transfers of packets that will be just discarded.
* fftools/ffmpeg: handle dumping input packets in input_thread()Anton Khirnov2022-08-08
| | | | This is a more appropriate place for this.
* fftools/ffmpeg: drop the 'h' key handlingAnton Khirnov2022-08-08
| | | | | | | | | This undocumented feature runtime-enables dumping input packets. I can think of no reasonable real-world use case that cannot also be accomplished in a different way. Keeping this functionality would interfere with the following commit moving it to the input thread (then setting the variable would require locking or atomics, which would be unnecessarily complicated for a feature that probably nobody uses).
* fftools/ffmpeg: move the input thread into its own fileAnton Khirnov2022-08-08
| | | | It will contain more demuxing-specific code in the future.
* fftools/ffmpeg: drop a write-only variableAnton Khirnov2022-08-08
|
* fftools/ffmpeg: always read input in a threadAnton Khirnov2022-08-08
| | | | This will be required by the following architecture changes.
* fftools/ffmpeg: store the input file index in InputFileAnton Khirnov2022-08-08
| | | | | | Use it to simplify some code and fix two off-by-one errors. Similar to what was previously done for OutputFile.
* fftools/ffmpeg: drop a superfluous stack variableAnton Khirnov2022-08-08
|
* doc/ffmpeg: update -map documentationAnton Khirnov2022-08-08
| | | | | Make it match reality (current text was not updated for stream specifiers), extend and clarify the text.
* fftools/ffmpeg: deprecate specifying a sync stream with -mapAnton Khirnov2022-08-08
| | | | It has not had any effect whatsoever for over 10 years.
* fftools/ffmpeg: remove OutputStream.sync_istAnton Khirnov2022-08-08
| | | | It is not actually used for anything.
* fftools/ffmpeg: remove OutputStream.encoding_neededAnton Khirnov2022-08-08
| | | | It is unnecessary, as it is always exactly equivalent to !!ost->enc_ctx
* fftools/ffmpeg: remove OutputStream.stream_copyAnton Khirnov2022-08-08
| | | | | | | | | | | | | | | There are currently three possible modes for an output stream: 1) The stream is produced by encoding output from some filtergraph. This is true when ost->enc_ctx != NULL, or equivalently when ost->encoding_needed != 0. 2) The stream is produced by copying some input stream's packets. This is true when ost->enc_ctx == NULL && ost->source_index >= 0. 3) The stream is produced by attaching some file directly. This is true when ost->enc_ctx == NULL && ost->source_index < 0. OutputStream.stream_copy is currently used to identify case 2), and sometimes to confusingly (or even incorrectly) identify case 1). Remove it, replacing its usage with checking enc_ctx/source_index values.
* fftools/ffmpeg_opt: drop redundant decoder selectionAnton Khirnov2022-08-08
| | | | A decoder is already selected above, in choose_decoder().
* fftools/ffmpeg: stop accessing the decoder context unnecessarilyAnton Khirnov2022-08-08
| | | | | | The same information is available from AVStream.codecpar. This will allow to stop allocating a decoder unless decoding is actually performed.
* fftools/ffmpeg_hw: stop logging to the decoder contextAnton Khirnov2022-08-08
| | | | | Only the decoder itself should do that. Use NULL as is done by all other logging code in ffmpeg.
* fftools/ffmpeg_opt: move adding metadata out of open_output_file()Anton Khirnov2022-08-08
|
* fftools/ffmpeg_opt: move adding programs out of open_output_file()Anton Khirnov2022-08-08
|
* fftools/ffmpeg_opt: move adding attachments out of open_output_file()Anton Khirnov2022-08-08
|
* avformat/movenc: Remove experimental status of flac-in-MP4 muxingMartijn van Beurden2022-08-08
| | | | | | | | | | | | | The fLaC and dfLa box IDs have been registered with the MP4 RA (they are now listed at https://mp4ra.org/#/codecs) and support for muxing FLAC in MP4 has been experimental in ffmpeg for 6 years now, since Nov 21, 2016 This patch removes the experimental status and removes the MP4 object type, as none has been registered for FLAC as it was not deemed necessary. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avformat: allow .ec3 as extension for raw E-AC-3 streamRuben Gonzalez2022-08-08
| | | | | | | | | | | | | In addition to .eac3, .ec3 is also commonly used by people to name raw E-AC-3 streams. Enables automatic recognition of the eac3 format for the .ac3 extension. For instance Dolby Digital Plus software only support files with .ec3. Files with .eac3 are not supported. Check issue #18 in the public dlb_mp4base repository from DolbyLaboratories. Signed-off-by: Ruben Gonzalez <rgonzalez@fluendo.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* swscale/output: fix reading chroma values when generating vuya outputJames Almer2022-08-08
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/nvdec: Use av_buffer_replace() where appropriateAndreas Rheinhardt2022-08-08
| | | | | Reviewed-by: Timo Rothenpieler <timo@rothenpieler.org> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/nvdec: Check av_buffer_ref()Andreas Rheinhardt2022-08-08
| | | | | | | It (unfortunately) involves an allocation and can therefore fail. Reviewed-by: Timo Rothenpieler <timo@rothenpieler.org> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/libspeexdec: Fix use of uninitialized valueAndreas Rheinhardt2022-08-08
| | | | | | | Regression since 97d9a3293854eda84f05c22e2eaefae7406ac969. Fixes Coverity issue #1503072. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/cbs_h2645: Remove always-false checkAndreas Rheinhardt2022-08-08
| | | | | | | | | | The functions to replace parameter sets are only called after the respective parameter set has just been read or has just been written; all of these functions check that the id field is within the appropriate range. So the checks in the replace-functions can be removed. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/cbs: Remove ff_cbs_alloc_unit_contentAndreas Rheinhardt2022-08-08
| | | | | | | It is no longer used. Also rename ff_cbs_alloc_unit_content2 to ff_cbs_alloc_unit_content. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/cbs_jpeg: Use table-based alloc/freeAndreas Rheinhardt2022-08-08
| | | | | | | cbs_jpeg was the last user of CBS that didn't use CodedBitstreamUnitTypeDescriptors. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/cbs_internal: Use unions to shrink size of descriptorsAndreas Rheinhardt2022-08-08
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/cbs_internal, cbs_h2645: Add and use new descriptor macrosAndreas Rheinhardt2022-08-08
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/cbs: Use smaller scope for variables, add constAndreas Rheinhardt2022-08-08
| | | | | | And also avoid an unnecessary indirection for src_buf. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/cbs: Remove redundant assignmentAndreas Rheinhardt2022-08-08
| | | | | | | | | | | The code just creates new references without allocating new buffers for the subobjects; therefore the actual data pointer stays valid and need not be updated. Also remove an assert that ensured that the calculation for updating the pointer makes sense. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/cbs: Avoid code duplication for making unit refcounted/writableAndreas Rheinhardt2022-08-08
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/error_resilience: Avoid overhead of AVBuffer APIAndreas Rheinhardt2022-08-08
| | | | | | These buffers are not shared in any way. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/hwcontext_videotoolbox: add missing include for AVFrameZhao Zhili2022-08-08
| | | | Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
* avformat/avisynth: cosmetics after nb_channels changeStephen Hutchinson2022-08-07
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/avisynth: use ch_layout.nb_channels for channel countStephen Hutchinson2022-08-07
| | | | | | Fixes deprecation warning Signed-off-by: James Almer <jamrial@gmail.com>
* MAINTAINERS: Split project server admin listMichael Niedermayer2022-08-07
| | | | | | | | | | | | | | | | | This updates the list closer to reality. Iam not a professional server admin, iam happy to help maintain the box as i have done in the past. But iam not qualified nor volunteering to fix sudden problems nor do i do major upgrades (i lack the experience to recover the box remotely if something goes wrong) and also iam not maintaining backups ATM (our backup system had a RAID-5 failure, raz is working on setting a new one up) Maybe this should be signaled in a different way than spliting the lines but ATM people ping me if something is wrong and what i do is mainly mail/ping raz and try to find another root admin so raz is not the only active & professional admin on the team. It would be more efficient if people contact raz and others directly instead of depending on my waking up and forwarding a "ffmpeg.org" is down note Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mxfdec: SMPTE RDD 48:2018 Amd 1:2022 supportMichael Niedermayer2022-08-07
| | | | | Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>