Name Description Size Coverage
aarch64 -
adts_header.c id 2999 -
adts_header.h Parse the ADTS frame header to the end of the variable header, which is the first 54 bits. @param[in] gbc BitContext containing the first 54 bits of the frame. @param[out] hdr Pointer to struct where header info is written. @return the size in bytes of the header parsed on success and AAC_PARSE_ERROR_* values otherwise. 2919 -
adts_parser.c 2080 -
adts_parser.h Extract the number of samples and frames from AAC data. @param[in] buf pointer to AAC data buffer @param[out] samples Pointer to where number of samples is written @param[out] frames Pointer to where number of frames is written @return Returns 0 on success, error code on failure. 1354 -
allcodecs.c @file Provide registration of all codecs, parsers and bitstream filters for libavcodec. 40611 -
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 53330 -
av1dec.h AVCODEC_AV1DEC_H 3630 -
avcodec.c @file AVCodecContext functions for libavcodec 29509 -
avcodec.h @file @ingroup libavc Libavcodec external API header 115694 -
avcodec.symbols 1526 -
avcodec_internal.h APIs internal to the generic codec layer. MUST NOT be included by individual encoders or decoders. 3484 -
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 4084 -
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 323 -
bytestream.h 14911 -
cbs.c Must be before any error 30227 -
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 39602 -
cbs_av1.h 14635 -
cbs_av1_syntax_template.c 71624 -
cbs_internal.h 13795 -
codec.h @addtogroup lavc_core @{ 13314 -
codec_desc.c video codecs 139898 -
codec_desc.h @addtogroup lavc_core @{ 3974 -
codec_id.h @addtogroup lavc_core @{ 18222 -
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. 12446 -
codec_list.c 2181 -
codec_par.c @file AVCodecParameters functions for libavcodec. 9301 -
codec_par.h @addtogroup lavc_core @{ 7727 -
d3d11va.c CONFIG_D3D11VA 1361 -
d3d11va.h @file @ingroup lavc_codec_hwaccel_d3d11va Public libavcodec D3D11VA header. 2610 -
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 This is set to AV_FRAME_FLAG_KEY for decoders of intra-only formats (those whose codec descriptor has AV_CODEC_PROP_INTRA_ONLY set) to set the flag generically. 74668 -
decode.h This struct stores per-frame lavc-internal data and is attached to it via private_ref. 8605 -
defs.h @file @ingroup libavc Misc types and constants that do not belong anywhere else. 12450 -
dovi_rpu.h Stubs for dovi_rpu.{c,h} 1477 -
dxva2.c define all the GUIDs used directly here, to avoid problems with inconsistent dxva2api.h versions in mingw-w64 and different MSVC version 38269 -
dxva2.h @file @ingroup lavc_codec_hwaccel_dxva2 Public libavcodec DXVA2 header. 2128 -
dxva2_av1.c Tiling info 22807 -
dxva2_internal.h define the proper COM entries before forcing desktop APIs 8111 -
dxva2_vp9.c subsampling_x 13808 -
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. 30567 -
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 3196 -
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 1833 -
fdctdsp.h align 16 1835 -
fffjni.c 2664 -
fffjni.h Manually set a Java virtual machine which will be used to retrieve the JNI environment. Once a Java VM is set it cannot be changed afterwards, meaning you can call multiple times av_jni_set_java_vm with the same Java VM pointer however it will error out if you try to set a different Java VM. @param vm Java virtual machine @param log_ctx context used for logging, can be NULL @return 0 on success, < 0 otherwise 2263 -
ffjni.c 12300 -
ffjni.h Attach permanently a JNI environment to the current thread and retrieve it. If successfully attached, the JNI environment will automatically be detached at thread destruction. @param attached pointer to an integer that will be set to 1 if the environment has been attached to the current thread or 0 if it is already attached. @param log_ctx context used for logging, can be NULL @return the JNI environment on success, NULL otherwise 4931 -
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. 28678 -
flacdsp.c 4786 -
flacdsp.h AVCODEC_FLACDSP_H 2214 -
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. 9530 -
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 15601 -
h263dsp.h AVCODEC_H263DSP_H 1304 -
h264chroma.h align 8 1742 -
h264dsp.h @file H.264 DSP functions. @author Michael Niedermayer <michaelni@gmx.at> 7168 -
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. 5839 -
hwaccels.h AVCODEC_HWACCELS_H 4775 -
hwconfig.h This is the structure which will be returned to the user by avcodec_get_hw_config(). 4207 -
idctdsp.c read the pixels 10303 -
idctdsp.h pixel ops : interface with DCT 5019 -
imgconvert.c @file misc image conversion routines 1569 -
internal.h @file common internal api header. 6057 -
itut35.h AVCODEC_ITUT35_H 1179 -
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. 15669 -
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 -
lcevcdec.h Stubs for lcevcdec.{c,h} 859 -
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 71955 -
libdav1d.c 24670 -
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 82921 -
log2_tab.c 32 -
mathops.h generic implementation 6072 -
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 3535 -
mediacodec.c 3988 -
mediacodec.h This structure holds a reference to a android/view/Surface object that will be used as output by the decoder. 3570 -
mediacodec_surface.c 2097 -
mediacodec_surface.h AVCODEC_MEDIACODEC_SURFACE_H 1296 -
mediacodec_sw_buffer.c 11894 -
mediacodec_sw_buffer.h AVCODEC_MEDIACODEC_SW_BUFFER_H 2934 -
mediacodec_wrapper.c 89030 -
mediacodec_wrapper.h The following API around MediaCodec and MediaFormat is based on the NDK one provided by Google since Android 5.0. Differences from the NDK API: Buffers returned by ff_AMediaFormat_toString and ff_AMediaFormat_getString are newly allocated buffer and must be freed by the user after use. The MediaCrypto API is not implemented. ff_AMediaCodec_infoTryAgainLater, ff_AMediaCodec_infoOutputBuffersChanged, ff_AMediaCodec_infoOutputFormatChanged, ff_AMediaCodec_cleanOutputBuffers ff_AMediaCodec_getName and ff_AMediaCodec_getBufferFlagEndOfStream are not part of the original NDK API and are convenience functions to hide JNI implementation. The API around MediaCodecList is not part of the NDK (and is lacking as we still need to retrieve the codec name to work around faulty decoders and encoders). For documentation, please refers to NdkMediaCodec.h NdkMediaFormat.h and http://developer.android.com/reference/android/media/MediaCodec.html. 15974 -
mediacodecdec.c Escape 0x00, 0x00, 0x0{0-3} pattern 24865 -
mediacodecdec_common.c 40737 -
mediacodecdec_common.h AVCODEC_MEDIACODECDEC_COMMON_H 2946 -
mediacodecenc.c Constant quality mode 52727 -
motion_est.h Motion estimation context. 5112 -
moz.build 4592 -
mpeg4audio.c Parse MPEG-4 audio configuration for ALS object type. @param[in] gb bit reader context @param[in] c MPEG4AudioConfig structure to fill @return on success 0 is returned, otherwise a value < 0 5691 -
mpeg4audio.h Parse MPEG-4 systems extradata from a potentially unaligned GetBitContext to retrieve audio configuration. @param[in] c MPEG4AudioConfig structure to fill. @param[in] gb Extradata from container. @param[in] sync_extension look for a sync extension after config if true. @param[in] logctx opaque struct starting with an AVClass element, used for logging. @return negative AVERROR code on error, on success AudioSpecificConfig bit index in extradata. 6520 -
mpeg4audio_copy_pce.h AVCODEC_MPEG4AUDIO_COPY_PCE_H 2579 -
mpeg4audio_sample_rates.c 965 -
mpeg4audio_sample_rates.h 1164 -
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 MPVPicture. 4838 -
mpegutils.h picture type 4382 -
mpegvideo.h @file mpegvideo header. 25060 -
mpegvideodata.h encoding scans 1362 -
mpegvideoencdsp.h AVCODEC_MPEGVIDEOENCDSP_H 2506 -
options.c @file Options definition for AVCodecContext. 6448 -
options_table.h 52223 -
packet.c 23285 -
packet.h @defgroup lavc_packet_side_data AVPacketSideData Types and functions for working with AVPacketSideData. @{ 30512 -
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 < 9785 -
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 3694 -
pcm.c @file PCM codecs 25273 -
pcm_tablegen.h from g711.c by SUN microsystems (unrestricted use) 4275 -
pixblockdsp.h align 16 2714 -
pixels.h pixel operations 1384 -
profiles.c 8684 -
profiles.h AVCODEC_PROFILES_H 4089 -
progressframe.h ProgressFrame is an API to easily share frames without an underlying av_frame_ref(). Its main usecase is in frame-threading scenarios, yet it could also be used for purely single-threaded decoders that want to keep multiple references to the same frame. The underlying principle behind the API is that all that is needed to share a frame is a reference count and a contract between all parties. The ProgressFrame provides the reference count and the frame is unreferenced via ff_thread_release_buffer() when the reference count reaches zero. In order to make this API also usable for frame-threaded decoders it also provides a way of exchanging simple information about the state of decoding the frame via ff_thread_progress_report() and ff_thread_progress_await(). The typical contract for frame-threaded decoders is as follows: Thread A initializes a ProgressFrame via ff_thread_progress_get_buffer() (which already allocates the AVFrame's data buffers), calls ff_thread_finish_setup() and starts decoding the frame. Later threads receive a reference to this frame, which means they get a pointer to the AVFrame and the internal reference count gets incremented. Later threads whose frames use A's frame as reference as well as the thread that will eventually output A's frame will wait for progress on said frame reported by A. As soon as A has reported that it has finished decoding its frame, it must no longer modify it (neither its data nor its properties). Because creating a reference with this API does not involve reads from the actual AVFrame, the decoding thread may modify the properties (i.e. non-data fields) until it has indicated to be done with this frame. This is important for e.g. propagating decode_error_flags; it also allows to add side-data late. 6519 -
pthread.c @file Multithreading support functions @see doc/multithreading.txt 4596 -
pthread_frame.c @file Frame multithreading support functions @see doc/multithreading.txt 35890 -
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 5000 -
put_bits.h @file bitstream writer API 11221 -
qpeldsp.h @file quarterpel DSP functions 3106 -
qsv_api.c 1136 -
ratecontrol.h @file ratecontrol header. 2916 -
raw.c @file Raw Video Codec 18344 -
raw.h @file Raw Video Codec 1362 -
rectangle.h @file useful rectangle filling function @author Michael Niedermayer <michaelni@gmx.at> 4336 -
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 API for decoders @author Alexander Strange <astrange@ithinksw.com> 3308 -
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 -
threadprogress.c Casting const away here is safe, because we only read from progress and will leave pro_c in the same state upon leaving the function as it had at the beginning. 2614 -
threadprogress.h ThreadProgress is an API to easily notify other threads about progress of any kind as long as it can be packaged into an int and is consistent with the natural ordering of integers. Each initialized ThreadProgress can be in one of two modes: No-op mode or ordinary mode. In the former mode, ff_thread_report_progress() and ff_thread_await_progress() are no-ops to simply support usecases like non-frame-threading. Only in the latter case perform these functions what their name already implies. 3300 -
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. 33449 -
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. 20455 -
vaapi_decode.c 25724 -
vaapi_decode.h AVCODEC_VAAPI_DECODE_H 3010 -
vaapi_hevc.h AVCODEC_VAAPI_HEVC_H 970 -
vaapi_vp8.c 8875 -
vaapi_vp9.c 7445 -
version.c 1842 -
version.h @file @ingroup libavc Libavcodec version macros. 1619 -
version_major.h @file @ingroup libavc Libavcodec version macros. 2622 -
videodsp.c 1797 -
videodsp.h @file Core video DSP helper functions 3512 -
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) 22340 -
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 109758 -
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 10212 -
vp8_parser.c 2390 -
vp8data.c 8970 -
vp8data.h @file VP8 compatible video decoder 25477 -
vp8dsp.c @file VP8 compatible video decoder 34933 -
vp8dsp.h @file VP8 compatible video decoder 4637 -
vp9.c 74944 -
vp9.h AVCODEC_VP9_H 1703 -
vp9_mc_template.c 24920 -
vp9_parser.c 2058 -
vp9block.c 60313 -
vp9data.c 64x64 -> 32x32 114232 -
vp9data.h AVCODEC_VP9DATA_H 3144 -
vp9dec.h bit=col 7779 -
vp9dsp.c 4150 -
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 5714 -
vp9dsp_8bpp.c 979 -
vp9dsp_10bpp.c 984 -
vp9dsp_12bpp.c 984 -
vp9dsp_template.c 89045 -
vp9lpf.c 8979 -
vp9mvs.c 15677 -
vp9prob.c 10338 -
vp9recon.c have_left 30342 -
vp9shared.h AVCODEC_VP9SHARED_H 4049 -
vp56.h @file VP5 and VP6 compatible video decoder (common features) 8146 -
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 -