summaryrefslogtreecommitdiff
path: root/libavcodec/trace_headers_bsf.c
Commit message (Collapse)AuthorAge
* avcodec/bsf: Add FFBitStreamFilter, hide internals of BSFsAndreas Rheinhardt2022-03-23
| | | | | | | | | | This patch is analogous to 20f972701806be20a77f808db332d9489343bb78: It hides the internal part of AVBitStreamFilter by adding a new internal structure FFBitStreamFilter (declared in bsf_internal.h) that has an AVBitStreamFilter as its first member; the internal part of AVBitStreamFilter is moved to this new structure. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* Remove unnecessary libavutil/(avutil|common|internal).h inclusionsAndreas Rheinhardt2022-02-24
| | | | | | | | | | Some of these were made possible by moving several common macros to libavutil/macros.h. While just at it, also improve the other headers a bit. Reviewed-by: Martin Storsjö <martin@martin.st> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/trace_headers_bsf: also parse extradata in packet side dataJames Almer2021-08-14
| | | | | | | | | Certain mov/mp4 files have parameter sets out of band, and when required for a sample it may be propagated within the relevant packet's side data. This fixes parsing said files if the SPS and/or PPS in the side data is different than the one in extradata. Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/cbs: Remove unused function parametersAndreas Rheinhardt2020-07-07
| | | | | | | | Several cbs-functions had an unused CodedBitstreamContext parameter. This commit removes these. Reviewed-by: Mark Thompson <sw@jkqxz.net> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avcodec.h: split bitstream filters API into its own headerAnton Khirnov2020-05-22
|
* lavc: rename bsf.h to bsf_internal.hAnton Khirnov2020-05-22
| | | | This will allow adding a public header named bsf.h
* libavcodec/cbs: Stop needlessly reallocating the units arrayAndreas Rheinhardt2019-02-25
| | | | | | | | | | | | | | | | | Currently, a fragment's unit array is constantly reallocated during splitting of a packet. This commit changes this: One can keep the units array by distinguishing between the number of allocated and the number of valid units in the units array. The more units a packet is split into, the bigger the benefit. So MPEG-2 benefits the most; for a video coming from an NTSC-DVD (usually 32 units per frame) the average cost of cbs_insert_unit (for a single unit) went down from 6717 decicycles to 450 decicycles (based upon 10 runs with 4194304 runs each); if each packet consists of only one unit, it went down from 2425 to 448; for a H.264 video where most packets contain nine units, it went from 4431 to 450. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
* filter_units, trace_headers: Always use fragment from contextAndreas Rheinhardt2019-02-25
| | | | | | | This is in preparation for another patch that will stop needless reallocations of the unit array. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
* trace_headers: Fix memory leaks on syntax read failuresMark Thompson2018-10-16
|
* cbs: Add a table of all supported codec IDsMark Thompson2018-03-18
| | | | Use it as the set of codec IDs supported by the trace_headers BSF.
* avcodec/trace_headers: move the reference in the bsf internal bufferJames Almer2018-03-11
| | | | | | | There's no need to allocate a new packet for it. Reviewed-by: Mark Thompson <sw@jkqxz.net> Signed-off-by: James Almer <jamrial@gmail.com>
* lavc: Add trace_headers bitstream filterMark Thompson2017-10-17
Supports all streams that the coded bitstream infrastructure does (currently H.264, H.265 and MPEG-2). (cherry picked from commit f11d8a5e8b185340cc50fcbc8a1437b0fbe7e931)