aarch64 |
|
|
allcodecs.c |
@file
Provide registration of all codecs, parsers and bitstream filters for libavcodec.
|
38421 |
arm |
|
|
atsc_a53.c |
'GA94' is standard in North America for ATSC, but hard coding
this style may not be the right thing to do -- other formats
do exist. This information is not available in the side_data
so we are going with this right now.
|
3376 |
atsc_a53.h |
Check AVFrame for A53 side data and allocate and fill SEI message with A53 info
@param frame Raw frame to get A53 side data from
@param prefix_len Number of bytes to allocate before SEI message
@param data Pointer to a variable to store allocated memory
Upon return the variable will hold NULL on error or if frame has no A53 info.
Otherwise it will point to prefix_len uninitialized bytes followed by
*sei_size SEI message
@param sei_size Pointer to a variable to store generated SEI message length
@return Zero on success, negative error code on failure
|
2344 |
audio_frame_queue.c |
get frame parameters |
3989 |
audio_frame_queue.h |
Initialize AudioFrameQueue.
@param avctx context to use for time_base and av_log
@param afq queue context
|
2506 |
av1.h |
@file
AV1 common definitions
|
5368 |
av1_parse.c |
|
3702 |
av1_parse.h |
Size of payload |
4535 |
av1_parser.c |
|
7026 |
av1dec.c |
< same with Div_Lut defined in spec 7.11.3.7 |
52332 |
av1dec.h |
AVCODEC_AV1DEC_H |
2754 |
avcodec.c |
@file
AVCodecContext functions for libavcodec
|
24844 |
avcodec.h |
@file
@ingroup libavc
Libavcodec external API header
|
112853 |
avcodec.symbols |
|
1279 |
avcodec_internal.h |
APIs internal to the generic codec layer.
MUST NOT be included by individual encoders or decoders.
|
2283 |
avdct.c |
|
5733 |
avdct.h |
AVDCT context.
@note function pointers can be NULL if the specific features have been
disabled at build time.
|
2726 |
avfft.c |
FFT |
6577 |
avfft.h |
@file
@ingroup lavc_fft
FFT functions
|
4081 |
bit_depth_template.c |
|
2927 |
bitstream.c |
@file
bitstream api.
|
2110 |
bitstream_filters.c |
find next filter with priv options |
4036 |
blockdsp.h |
add and put pixel (decoding)
Block sizes for op_pixels_func are 8x4,8x8 16x8 16x16.
h for op_pixels_func is limited to { width / 2, width },
but never larger than 16 and never smaller than 4. |
1782 |
bsf |
|
|
bsf.c |
allocate priv data and init private options |
13763 |
bsf.h |
@defgroup lavc_bsf Bitstream filters
@ingroup libavc
Bitstream filters transform encoded media data without decoding it. This
allows e.g. manipulating various header values. Bitstream filters operate on
@ref AVPacket "AVPackets".
The bitstream filtering API is centered around two structures:
AVBitStreamFilter and AVBSFContext. The former represents a bitstream filter
in abstract, the latter a specific filtering process. Obtain an
AVBitStreamFilter using av_bsf_get_by_name() or av_bsf_iterate(), then pass
it to av_bsf_alloc() to create an AVBSFContext. Fill in the user-settable
AVBSFContext fields, as described in its documentation, then call
av_bsf_init() to prepare the filter context for use.
Submit packets for filtering using av_bsf_send_packet(), obtain filtered
results with av_bsf_receive_packet(). When no more input packets will be
sent, submit a NULL AVPacket to signal the end of the stream to the filter.
av_bsf_receive_packet() will then return trailing packets, if any are
produced by the filter.
Finally, free the filter context with av_bsf_free().
@{
|
11540 |
bsf_internal.h |
The public AVBitStreamFilter. See bsf.h for it.
|
1926 |
bsf_list.c |
|
267 |
bytestream.h |
|
14911 |
cbs.c |
Must be before any error |
30217 |
cbs.h |
This defines a framework for converting between a coded bitstream
and structures defining all individual syntax elements found in
such a stream.
Conversion in both directions is possible. Given a coded bitstream
(any meaningful fragment), it can be parsed and decomposed into
syntax elements stored in a set of codec-specific structures.
Similarly, given a set of those same codec-specific structures the
syntax elements can be serialised and combined to create a coded
bitstream.
|
17308 |
cbs_av1.c |
|
39017 |
cbs_av1.h |
|
14406 |
cbs_av1_syntax_template.c |
|
70418 |
cbs_internal.h |
|
13785 |
codec.h |
@addtogroup lavc_core
@{
|
13211 |
codec_desc.c |
video codecs |
138446 |
codec_desc.h |
@addtogroup lavc_core
@{
|
3974 |
codec_id.h |
@addtogroup lavc_core
@{
|
18031 |
codec_internal.h |
The codec is not known to be init-threadsafe (i.e. it might be unsafe
to initialize this codec and another codec concurrently, typically because
the codec calls external APIs that are not known to be thread-safe).
Therefore calling the codec's init function needs to be guarded with a lock.
|
11379 |
codec_list.c |
|
1370 |
codec_par.c |
@file
AVCodecParameters functions for libavcodec.
|
9270 |
codec_par.h |
@addtogroup lavc_core
@{
|
7727 |
dct.h |
AVCODEC_DCT_H |
1336 |
dct32.h |
AVCODEC_DCT32_H |
941 |
dct32_fixed.c |
|
814 |
dct32_float.c |
|
814 |
dct32_template.c |
tab[i][j] = 1.0 / (2.0 * cos(pi*(2*k+1) / 2^(6 - j))) |
7526 |
decode.c |
to prevent infinite loop on errors when draining |
63825 |
decode.h |
This struct stores per-frame lavc-internal data and is attached to it via
private_ref.
|
7546 |
defs.h |
@file
@ingroup libavc
Misc types and constants that do not belong anywhere else.
|
12358 |
dovi_rpu.h |
Stubs for dovi_rpu.{c,h} |
964 |
encode.c |
This is set to AV_PKT_FLAG_KEY for encoders that encode intra-only
formats (i.e. whose codec descriptor has AV_CODEC_PROP_INTRA_ONLY set).
This is used to set said flag generically for said encoders.
|
29451 |
encode.h |
Used by some encoders as upper bound for the length of headers.
TODO: Use proper codec-specific upper bounds.
|
3505 |
error_resilience.h |
Indicate that a frame has finished decoding and perform error concealment
in case it has been enabled and is necessary and supported.
@param s ERContext in use
@param decode_error_flags pointer where updated decode_error_flags are written
if supplied; if not, the new flags are directly
applied to the AVFrame whose errors are concealed
|
3153 |
faandct.c |
Floating point AAN DCT
this implementation is based upon the IJG integer AAN DCT (see jfdctfst.c)
Copyright (c) 2003 Michael Niedermayer <michaelni@gmx.at>
Copyright (c) 2003 Roman Shaposhnik
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
7058 |
faandct.h |
@file
@brief
Floating point AAN DCT
@author Michael Niedermayer <michaelni@gmx.at>
|
1135 |
faanidct.c |
To allow switching to double. |
6134 |
faanidct.h |
AVCODEC_FAANIDCT_H |
1175 |
fdctdsp.c |
CONFIG_FAANDCT |
1759 |
fdctdsp.h |
align 16 |
1702 |
flac.c |
frame sync code |
7252 |
flac.h |
@file
FLAC (Free Lossless Audio Codec) common stuff
|
2239 |
flac_parse.h |
@file
FLAC (Free Lossless Audio Codec) decoder/parser common functions
|
3752 |
flacdata.c |
|
1164 |
flacdata.h |
AVCODEC_FLACDATA_H |
1034 |
flacdec.c |
@file
FLAC (Free Lossless Audio Codec) decoder
@author Alex Beregszaszi
@see http://flac.sourceforge.net/
This decoder can be used in 1 of 2 ways: Either raw FLAC data can be fed
through, starting from the initial 'fLaC' signature; or by passing the
34-byte streaminfo structure through avctx->extradata[_size] followed
by data starting with the 0xFFF8 marker.
|
28974 |
flacdsp.c |
|
3855 |
flacdsp.h |
AVCODEC_FLACDSP_H |
1907 |
flacdsp_lpc_template.c |
|
5112 |
flacdsp_template.c |
|
2893 |
frame_thread_encoder.h |
Initialize frame thread encoder.
@note hardware encoders are not supported
|
1320 |
get_bits.h |
@file
bitstream reader API header.
|
22052 |
get_buffer.c |
Pools for each data plane. For audio all the planes have the same size,
so only pools[0] is used.
|
9389 |
golomb.c |
@file
@brief
exp golomb vlc stuff
@author Michael Niedermayer <michaelni@gmx.at>
|
9956 |
golomb.h |
@file
@brief
exp golomb vlc stuff
@author Michael Niedermayer <michaelni@gmx.at> and Alex Beregszaszi
|
15512 |
h263dsp.h |
AVCODEC_H263DSP_H |
1255 |
h264chroma.h |
align 8 |
1742 |
h264dsp.h |
@file
H.264 DSP functions.
@author Michael Niedermayer <michaelni@gmx.at>
|
7044 |
h264pred.c |
@file
H.264 / AVC / MPEG-4 part10 prediction functions.
@author Michael Niedermayer <michaelni@gmx.at>
|
22186 |
h264pred.h |
@file
H.264 / AVC / MPEG-4 prediction functions.
@author Michael Niedermayer <michaelni@gmx.at>
|
4935 |
h264pred_template.c |
@file
H.264 / AVC / MPEG-4 part10 prediction functions.
@author Michael Niedermayer <michaelni@gmx.at>
|
43346 |
hpeldsp.h |
@file
Half-pel DSP functions.
|
4187 |
hwaccel_internal.h |
Header providing the internals of AVHWAccel.
|
5829 |
hwaccels.h |
AVCODEC_HWACCELS_H |
4664 |
hwconfig.h |
This is the structure which will be returned to the user by
avcodec_get_hw_config().
|
4207 |
idctdsp.c |
read the pixels |
10373 |
idctdsp.h |
pixel ops : interface with DCT |
5019 |
imgconvert.c |
@file
misc image conversion routines
|
1569 |
internal.h |
@file
common internal api header.
|
5526 |
itut35.h |
AVCODEC_ITUT35_H |
1097 |
jfdctfst.c |
This file is part of the Independent JPEG Group's software.
The authors make NO WARRANTY or representation, either express or implied,
with respect to this software, its quality, accuracy, merchantability, or
fitness for a particular purpose. This software is provided "AS IS", and
you, its user, assume the entire risk as to its quality and accuracy.
This software is copyright (C) 1994-1996, Thomas G. Lane.
All Rights Reserved except as specified below.
Permission is hereby granted to use, copy, modify, and distribute this
software (or portions thereof) for any purpose, without fee, subject to
these conditions:
(1) If any part of the source code for this software is distributed, then
this README file must be included, with this copyright and no-warranty
notice unaltered; and any additions, deletions, or changes to the original
files must be clearly indicated in accompanying documentation.
(2) If only executable code is distributed, then the accompanying
documentation must state that "this software is based in part on the work
of the Independent JPEG Group".
(3) Permission for use of this software is granted only if the user accepts
full responsibility for any undesirable consequences; the authors accept
NO LIABILITY for damages of any kind.
These conditions apply to any software derived from or based on the IJG
code, not just to the unmodified library. If you use our work, you ought
to acknowledge us.
Permission is NOT granted for the use of any IJG author's name or company
name in advertising or publicity relating to this software or products
derived from it. This software may be referred to only as "the Independent
JPEG Group's software".
We specifically permit and encourage the use of this software as the basis
of commercial products, provided that all warranty or liability claims are
assumed by the product vendor.
This file contains a fast, not so accurate integer implementation of the
forward DCT (Discrete Cosine Transform).
A 2-D DCT can be done by 1-D DCT on each row followed by 1-D DCT
on each column. Direct algorithms are also available, but they are
much more complex and seem not to be any faster when reduced to code.
This implementation is based on Arai, Agui, and Nakajima's algorithm for
scaled DCT. Their original paper (Trans. IEICE E-71(11):1095) is in
Japanese, but the algorithm is described in the Pennebaker & Mitchell
JPEG textbook (see REFERENCES section in file README). The following code
is based directly on figure 4-8 in P&M.
While an 8-point DCT cannot be done in less than 11 multiplies, it is
possible to arrange the computation so that many of the multiplies are
simple scalings of the final outputs. These multiplies can then be
folded into the multiplications or divisions by the JPEG quantization
table entries. The AA&N method leaves only 5 multiplies and 29 adds
to be done in the DCT itself.
The primary disadvantage of this method is that with fixed-point math,
accuracy is lost due to imprecise representation of the scaled
quantization values. The smaller the quantization table entry, the less
precise the scaled value, so this implementation does worse with high-
quality-setting files than with low-quality ones.
|
11232 |
jfdctint.c |
|
902 |
jfdctint_template.c |
This file is part of the Independent JPEG Group's software.
The authors make NO WARRANTY or representation, either express or implied,
with respect to this software, its quality, accuracy, merchantability, or
fitness for a particular purpose. This software is provided "AS IS", and
you, its user, assume the entire risk as to its quality and accuracy.
This software is copyright (C) 1991-1996, Thomas G. Lane.
All Rights Reserved except as specified below.
Permission is hereby granted to use, copy, modify, and distribute this
software (or portions thereof) for any purpose, without fee, subject to
these conditions:
(1) If any part of the source code for this software is distributed, then
this README file must be included, with this copyright and no-warranty
notice unaltered; and any additions, deletions, or changes to the original
files must be clearly indicated in accompanying documentation.
(2) If only executable code is distributed, then the accompanying
documentation must state that "this software is based in part on the work
of the Independent JPEG Group".
(3) Permission for use of this software is granted only if the user accepts
full responsibility for any undesirable consequences; the authors accept
NO LIABILITY for damages of any kind.
These conditions apply to any software derived from or based on the IJG
code, not just to the unmodified library. If you use our work, you ought
to acknowledge us.
Permission is NOT granted for the use of any IJG author's name or company
name in advertising or publicity relating to this software or products
derived from it. This software may be referred to only as "the Independent
JPEG Group's software".
We specifically permit and encourage the use of this software as the basis
of commercial products, provided that all warranty or liability claims are
assumed by the product vendor.
This file contains a slow-but-accurate integer implementation of the
forward DCT (Discrete Cosine Transform).
A 2-D DCT can be done by 1-D DCT on each row followed by 1-D DCT
on each column. Direct algorithms are also available, but they are
much more complex and seem not to be any faster when reduced to code.
This implementation is based on an algorithm described in
C. Loeffler, A. Ligtenberg and G. Moschytz, "Practical Fast 1-D DCT
Algorithms with 11 Multiplications", Proc. Int'l. Conf. on Acoustics,
Speech, and Signal Processing 1989 (ICASSP '89), pp. 988-991.
The primary algorithm described there uses 11 multiplies and 29 adds.
We use their alternate method with 12 multiplies and 32 adds.
The advantage of this method is that no data path contains more than one
multiplication; this allows a very simple and accurate implementation in
scaled fixed-point arithmetic, with a minimal number of shifts.
|
15639 |
jrevdct.c |
This file is part of the Independent JPEG Group's software.
The authors make NO WARRANTY or representation, either express or implied,
with respect to this software, its quality, accuracy, merchantability, or
fitness for a particular purpose. This software is provided "AS IS", and
you, its user, assume the entire risk as to its quality and accuracy.
This software is copyright (C) 1991, 1992, Thomas G. Lane.
All Rights Reserved except as specified below.
Permission is hereby granted to use, copy, modify, and distribute this
software (or portions thereof) for any purpose, without fee, subject to
these conditions:
(1) If any part of the source code for this software is distributed, then
this README file must be included, with this copyright and no-warranty
notice unaltered; and any additions, deletions, or changes to the original
files must be clearly indicated in accompanying documentation.
(2) If only executable code is distributed, then the accompanying
documentation must state that "this software is based in part on the work
of the Independent JPEG Group".
(3) Permission for use of this software is granted only if the user accepts
full responsibility for any undesirable consequences; the authors accept
NO LIABILITY for damages of any kind.
These conditions apply to any software derived from or based on the IJG
code, not just to the unmodified library. If you use our work, you ought
to acknowledge us.
Permission is NOT granted for the use of any IJG author's name or company
name in advertising or publicity relating to this software or products
derived from it. This software may be referred to only as "the Independent
JPEG Group's software".
We specifically permit and encourage the use of this software as the basis
of commercial products, provided that all warranty or liability claims are
assumed by the product vendor.
This file contains the basic inverse-DCT transformation subroutine.
This implementation is based on an algorithm described in
C. Loeffler, A. Ligtenberg and G. Moschytz, "Practical Fast 1-D DCT
Algorithms with 11 Multiplications", Proc. Int'l. Conf. on Acoustics,
Speech, and Signal Processing 1989 (ICASSP '89), pp. 988-991.
The primary algorithm described there uses 11 multiplies and 29 adds.
We use their alternate method with 12 multiplies and 32 adds.
The advantage of this method is that no data path contains more than one
multiplication; this allows a very simple and accurate implementation in
scaled fixed-point arithmetic, with a minimal number of shifts.
I've made lots of modifications to attempt to take advantage of the
sparse nature of the DCT matrices we're getting. Although the logic
is cumbersome, it's straightforward and the resulting code is much
faster.
A better way to do this would be to pass in the DCT block as a sparse
matrix, perhaps with the difference cases encoded.
|
44393 |
leb.h |
@file
leb128 handling implementations
|
1913 |
libaom.c |
@file
AOM common functions
|
1554 |
libaom.h |
@file
AOM common functions
|
1015 |
libaomenc.c |
@file
AV1 encoder support via libaom
|
70675 |
libdav1d.c |
|
24426 |
libopus.c |
|
1460 |
libopus.h |
AVCODEC_LIBOPUS_H |
967 |
libopusdec.c |
Remap channels from Vorbis order to ffmpeg order |
8682 |
libopusenc.c |
Opus internal to Vorbis channel order mapping written in the header |
23252 |
libvorbisdec.c |
< vorbis_info used during init |
7433 |
libvorbisenc.c |
Number of samples the user should send in each call.
This value is used because it is the LCD of all possible frame sizes, so
an output packet will always start at the same point as one of the input
packets.
|
14497 |
libvpx.h |
AVCODEC_LIBVPX_H |
937 |
libvpxdec.c |
@file
VP8/9 decoder support via libvpx
|
13590 |
libvpxenc.c |
@file
VP8/9 encoder support via libvpx
|
82136 |
log2_tab.c |
|
32 |
mathops.h |
generic implementation |
6119 |
mathtables.c |
a*inverse[b]>>32 == a/b for all 0<=a<=16909558 && 2<=b<=256
for a>16909558, is an overestimate by less than 1 part in 1<<24 |
7440 |
me_cmp.h |
minimum alignment rules ;)
If you notice errors in the align stuff, need more alignment for some ASM code
for some CPU or need to use a function with less aligned data then send a mail
to the ffmpeg-devel mailing list, ...
!warning These alignments might not match reality, (missing attribute((align))
stuff somewhere possible).
I (Michael) did not check them, these are just the alignments which I think
could be reached easily ...
!future video codecs might need functions with less strict alignment
|
3507 |
motion_est.h |
Motion estimation context.
|
4720 |
moz.build |
|
3598 |
mpeg12data.h |
@file
MPEG-1/2 tables.
|
1781 |
mpegaudio.c |
@file
MPEG Audio common code.
|
1464 |
mpegaudio.h |
@file
mpeg audio declarations for both encoder and decoder.
|
2064 |
mpegaudio_tablegen.h |
2 ^ (0 * 0.25) |
2824 |
mpegaudiodata.c |
@file
mpeg audio layer common tables.
|
4213 |
mpegaudiodata.h |
@file
mpeg audio layer common tables.
|
2642 |
mpegaudiodec_common.c |
@file
mpeg audio layer decoder tables.
|
23579 |
mpegaudiodec_common_tablegen.h |
2 ^ (0 * 0.25) |
2342 |
mpegaudiodec_fixed.c |
WARNING: only correct for positive numbers |
5931 |
mpegaudiodec_template.c |
@file
MPEG Audio decoder
|
64046 |
mpegaudiodecheader.c |
@file
MPEG Audio header decoder.
|
4313 |
mpegaudiodecheader.h |
@file
MPEG Audio header decoder.
|
2449 |
mpegaudiodsp.c |
compute mdct windows |
3503 |
mpegaudiodsp.h |
For SSE implementation, MDCT_BUF_SIZE/2 should be 128-bit aligned |
3873 |
mpegaudiodsp_data.c |
half mpeg encoding window (full precision) |
2714 |
mpegaudiodsp_fixed.c |
|
820 |
mpegaudiodsp_float.c |
|
820 |
mpegaudiodsp_template.c |
Window for MDCT. Actually only the elements in [0,17] and
[MDCT_BUF_SIZE/2, MDCT_BUF_SIZE/2 + 17] are actually used. The rest
is just to preserve alignment for SIMD implementations.
|
11146 |
mpegaudiotab.h |
@file
mpeg audio layer 2 tables.
Most of them come from the mpeg audio specification.
|
2995 |
mpegaudiotabs.c |
|
860 |
mpegaudiotabs.h |
|
1527 |
mpegpicture.h |
Picture.
|
3396 |
mpegutils.h |
Return value for header parsers if frame is not coded.
|
5113 |
mpegvideo.h |
@file
mpegvideo header.
|
25055 |
mpegvideodata.h |
encoding scans |
1362 |
mpegvideoencdsp.h |
AVCODEC_MPEGVIDEOENCDSP_H |
2230 |
options.c |
@file
Options definition for AVCodecContext.
|
6543 |
options_table.h |
|
51926 |
packet.c |
|
21086 |
packet.h |
@defgroup lavc_packet_side_data AVPacketSideData
Types and functions for working with AVPacketSideData.
@{
|
29751 |
packet_internal.h |
Append an AVPacket to the list.
@param list A PacketList
@param pkt The packet being appended. The data described in it will
be made reference counted if it isn't already.
@param copy A callback to copy the contents of the packet to the list.
May be null, in which case the packet's reference will be
moved to the list.
@return 0 on success, negative AVERROR value on failure. On failure,
the packet and the list are unchanged.
|
2594 |
parser.c |
s->next_frame_offset + off < |
9700 |
parser.h |
Combine the (truncated) bitstream to a complete frame.
@return -1 if no complete frame could be created,
AVERROR(ENOMEM) if there was a memory allocation error
|
2240 |
parser_list.c |
|
195 |
parsers.c |
|
3650 |
pcm.c |
@file
PCM codecs
|
25273 |
pcm_tablegen.h |
from g711.c by SUN microsystems (unrestricted use) |
4275 |
pixblockdsp.h |
align 16 |
2714 |
profiles.c |
|
8574 |
profiles.h |
AVCODEC_PROFILES_H |
4009 |
pthread.c |
@file
Multithreading support functions
@see doc/multithreading.txt
|
4566 |
pthread_frame.c |
@file
Frame multithreading support functions
@see doc/multithreading.txt
|
32857 |
pthread_internal.h |
H.264 slice threading seems to be buggy with more than 16 threads,
limit the number of threads to 16 for automatic detection |
3108 |
pthread_slice.c |
@file
Slice multithreading support functions
@see doc/multithreading.txt
|
7813 |
put_bits.h |
@file
bitstream writer API
|
11220 |
qpeldsp.h |
@file
quarterpel DSP functions
|
3106 |
qsv_api.c |
|
1136 |
ratecontrol.h |
@file
ratecontrol header.
|
2937 |
raw.c |
@file
Raw Video Codec
|
17904 |
raw.h |
@file
Raw Video Codec
|
1362 |
rectangle.h |
@file
useful rectangle filling function
@author Michael Niedermayer <michaelni@gmx.at>
|
4336 |
refstruct.c |
An uintptr_t is big enough to hold the address of every reference,
so no overflow can happen when incrementing the refcount as long as
the user does not throw away references.
|
11405 |
refstruct.h |
RefStruct is an API for creating reference-counted objects
with minimal overhead. The API is designed for objects,
not buffers like the AVBuffer API. The main differences
to the AVBuffer API are as follows:
- It uses void* instead of uint8_t* as its base type due to
its focus on objects.
- There are no equivalents of AVBuffer and AVBufferRef.
E.g. there is no way to get the usable size of the object:
The user is supposed to know what is at the other end of
the pointer. It also avoids one level of indirection.
- Custom allocators are not supported. This allows to simplify
the implementation and reduce the amount of allocations.
- It also has the advantage that the user's free callback need
only free the resources owned by the object, but not the
object itself.
- Because referencing (and replacing) an object managed by the
RefStruct API does not involve allocations, they can not fail
and therefore need not be checked.
@note Referencing and unreferencing the buffers is thread-safe and thus
may be done from multiple threads simultaneously without any need for
additional locking.
|
12174 |
reverse.c |
|
31 |
rl.h |
@file
rl header.
|
3904 |
rnd_avg.h |
AVCODEC_RND_AVG_H |
1570 |
simple_idct.c |
@file
simpleidct in C.
|
6674 |
simple_idct.h |
@file
simple idct header.
|
2572 |
simple_idct_template.c |
@file
simpleidct in C.
|
11724 |
startcode.h |
@file
Accelerated start code search function for start codes common to
MPEG-1/2/4 video, VC-1, H.264/5
|
1233 |
thread.h |
@file
Multithreading support functions
@author Alexander Strange <astrange@ithinksw.com>
|
3136 |
threadframe.h |
Notify later decoding threads when part of their reference picture is ready.
Call this when some part of the picture is finished decoding.
Later calls with lower values of progress have no effect.
@param f The picture being decoded.
@param progress Value, in arbitrary units, of how much of the picture has decoded.
@param field The field being decoded, for field-picture codecs.
0 for top field or frame pictures, 1 for bottom field.
|
3156 |
unary.h |
Get unary code of limited length
@param gb GetBitContext
@param[in] stop The bitstop value (unary code of 1's or 0's)
@param[in] len Maximum length
@return unary 0 based code index. This is also the length in bits of the
code excluding the stop bit.
(in case len=1)
1 0
0 1
(in case len=2)
1 0
01 1
00 2
(in case len=3)
1 0
01 1
001 2
000 3
|
1883 |
utils.c |
@file
utils.
|
33513 |
vaapi_av1.c |
For film grain case, VAAPI generate 2 output for each frame,
current_frame will not apply film grain, and will be used for
references for next frames. Maintain the reference list without
applying film grain here. And current_display_picture will be
used to apply film grain and push to downstream.
|
20384 |
vaapi_decode.c |
|
24499 |
vaapi_decode.h |
AVCODEC_VAAPI_DECODE_H |
3004 |
vaapi_hevc.h |
AVCODEC_VAAPI_HEVC_H |
970 |
vaapi_vp8.c |
|
8875 |
vaapi_vp9.c |
|
7453 |
version.c |
|
1842 |
version.h |
@file
@ingroup libavc
Libavcodec version macros.
|
1619 |
version_major.h |
@file
@ingroup libavc
Libavcodec version macros.
|
2098 |
videodsp.c |
|
1742 |
videodsp.h |
@file
Core video DSP helper functions
|
3452 |
videodsp_template.c |
|
3211 |
vlc.c |
codeword, with the first bit-to-be-read in the msb
(even if intended for a little-endian bitstream reader) |
22353 |
vlc.h |
Build VLC decoding tables suitable for use with get_vlc2().
@param[in,out] vlc The VLC to be initialized; table and table_allocated
must have been set when initializing a static VLC,
otherwise this will be treated as uninitialized.
@param[in] nb_bits The number of bits to use for the VLC table;
higher values take up more memory and cache, but
allow to read codes with fewer reads.
Corresponds to the `bits` parameter of get_vlc2().
@param[in] nb_codes The number of provided bits, codes and (if supplied)
symbol entries.
@param[in] bits The lengths (in bits) of the codes. Entries > 0
correspond to valid codes; entries == 0 will be skipped.
@param[in] bits_wrap Stride (in bytes) of the bits table.
@param[in] codes_size Size of the bits. 1, 2 and 4 are supported.
@param[in] codes Table which gives the bit pattern of of each vlc code.
@param[in] codes_wrap Stride (in bytes) of the codes table.
@param[in] codes_size Size of the codes. 1, 2 and 4 are supported.
@param[in] symbols The symbols, i.e. what is returned from get_vlc2()
when the corresponding code is encountered.
May be NULL, then 0, 1, 2, 3, 4,... will be used.
@param[in] symbols_wrap Stride (in bytes) of the symbols table.
@param[in] symbols_size Size of the symbols. 1 and 2 are supported.
@param[in] flags A combination of the VLC_INIT_* flags.
'wrap' and 'size' make it possible to use any memory configuration and types
(byte/word/int) to store the 'bits', 'codes', and 'symbols' tables.
|
14980 |
vorbis_data.c |
|
137138 |
vorbis_data.h |
AVCODEC_VORBIS_DATA_H |
1235 |
vorbis_parser.c |
@file
Vorbis audio parser
Determines the duration for each packet.
|
10766 |
vorbis_parser.h |
@file
A public API for Vorbis parsing
Determines the duration for each packet.
|
2285 |
vorbis_parser_internal.h |
@file
Vorbis audio parser
Determines the duration for each packet.
|
1713 |
vp3dsp.h |
Copy 8xH pixels from source to destination buffer using a bilinear
filter with no rounding (i.e. *dst = (*a + *b) >> 1).
@param dst destination buffer, aligned by 8
@param a first source buffer, no alignment
@param b second source buffer, no alignment
@param stride distance between two lines in source/dest buffers
@param h height
|
2801 |
vp8.c |
CONFIG_VP8_DECODER |
110257 |
vp8.h |
This is the index plus one of the last non-zero coeff
for each of the blocks in the current macroblock.
So, 0 -> no coeffs
1 -> dc-only (special transform)
2+-> full transform
|
10187 |
vp8_parser.c |
|
2390 |
vp8data.c |
|
8970 |
vp8data.h |
@file
VP8 compatible video decoder
|
25477 |
vp8dsp.c |
@file
VP8 compatible video decoder
|
34830 |
vp8dsp.h |
@file
VP8 compatible video decoder
|
4545 |
vp9.c |
|
76301 |
vp9.h |
AVCODEC_VP9_H |
1703 |
vp9_mc_template.c |
|
24918 |
vp9_parser.c |
|
2058 |
vp9block.c |
|
60286 |
vp9data.c |
64x64 -> 32x32 |
114232 |
vp9data.h |
AVCODEC_VP9DATA_H |
3144 |
vp9dec.h |
bit=col |
7772 |
vp9dsp.c |
|
4087 |
vp9dsp.h |
dimension 1: 0=4x4, 1=8x8, 2=16x16, 3=32x32
dimension 2: intra prediction modes
dst/left/top is aligned by transform-size (i.e. 4, 8, 16 or 32 pixels)
stride is aligned by 16 pixels
top[-1] is top/left; top[4,7] is top-right for 4x4
|
5644 |
vp9dsp_8bpp.c |
|
979 |
vp9dsp_10bpp.c |
|
984 |
vp9dsp_12bpp.c |
|
984 |
vp9dsp_template.c |
|
88301 |
vp9lpf.c |
|
8958 |
vp9mvs.c |
|
15648 |
vp9prob.c |
|
10338 |
vp9recon.c |
have_left |
29773 |
vp9shared.h |
AVCODEC_VP9SHARED_H |
4021 |
vp56.h |
@file
VP5 and VP6 compatible video decoder (common features)
|
8001 |
vp56dsp.h |
AVCODEC_VP56DSP_H |
1613 |
vp89_rac.h |
@file
Range decoder functions common to VP8 and VP9
|
1846 |
vpx_rac.c |
|
1835 |
vpx_rac.h |
@file
Common VP5-VP9 range decoder stuff
|
3697 |
x86 |
|
|
xiph.c |
|
2420 |
xiph.h |
Split a single extradata buffer into the three headers that most
Xiph codecs use. (e.g. Theora and Vorbis)
Works both with Matroska's packing and lavc's packing.
@param[in] extradata The single chunk that combines all three headers
@param[in] extradata_size The size of the extradata buffer
@param[in] first_header_size The size of the first header, used to
differentiate between the Matroska packing and lavc packing.
@param[out] header_start Pointers to the start of the three separate headers.
@param[out] header_len The sizes of each of the three headers.
@return On error a negative value is returned, on success zero.
|
1781 |
xvididct.h |
AVCODEC_XVIDIDCT_H |
1268 |