Libav
|
Basic definitions, functions for querying libavcodec capabilities, allocating core structures, etc. More...
Modules | |
AVPacket | |
Types and functions for working with AVPacket. | |
AVPicture | |
Functions for working with AVPicture. | |
Data Structures | |
struct | AVCodecDescriptor |
This struct describes the properties of a single codec described by an AVCodecID. More... | |
struct | RcOverride |
struct | AVPanScan |
Pan Scan area. More... | |
struct | AVCodecContext |
main external API structure. More... | |
struct | AVProfile |
AVProfile. More... | |
struct | AVCodec |
AVCodec. More... | |
struct | AVHWAccel |
AVHWAccel. More... | |
struct | AVSubtitleRect |
struct | AVSubtitle |
Macros | |
#define | AV_CODEC_PROP_INTRA_ONLY (1 << 0) |
Codec uses only intra compression. More... | |
#define | AV_CODEC_PROP_LOSSY (1 << 1) |
Codec supports lossy compression. More... | |
#define | AV_CODEC_PROP_LOSSLESS (1 << 2) |
Codec supports lossless compression. More... | |
#define | FF_MAX_B_FRAMES 16 |
#define | CODEC_FLAG_UNALIGNED 0x0001 |
Allow decoders to produce frames with data planes that are not aligned to CPU requirements (e.g. More... | |
#define | CODEC_FLAG_QSCALE 0x0002 |
Use fixed qscale. More... | |
#define | CODEC_FLAG_4MV 0x0004 |
4 MV per MB allowed / advanced prediction for H.263. More... | |
#define | CODEC_FLAG_OUTPUT_CORRUPT 0x0008 |
Output even those frames that might be corrupted. More... | |
#define | CODEC_FLAG_QPEL 0x0010 |
Use qpel MC. More... | |
#define | CODEC_FLAG_GMC 0x0020 |
Use GMC. More... | |
#define | CODEC_FLAG_MV0 0x0040 |
Always try a MB with MV=<0,0>. More... | |
#define | CODEC_FLAG_INPUT_PRESERVED 0x0100 |
The parent program guarantees that the input for B-frames containing streams is not written to for at least s->max_b_frames+1 frames, if this is not set the input will be copied. More... | |
#define | CODEC_FLAG_PASS1 0x0200 |
Use internal 2pass ratecontrol in first pass mode. More... | |
#define | CODEC_FLAG_PASS2 0x0400 |
Use internal 2pass ratecontrol in second pass mode. More... | |
#define | CODEC_FLAG_GRAY 0x2000 |
Only decode/encode grayscale. More... | |
#define | CODEC_FLAG_EMU_EDGE 0x4000 |
#define | CODEC_FLAG_PSNR 0x8000 |
error[?] variables will be set during encoding. More... | |
#define | CODEC_FLAG_TRUNCATED |
#define | CODEC_FLAG_NORMALIZE_AQP 0x00020000 |
Normalize adaptive quantization. More... | |
#define | CODEC_FLAG_INTERLACED_DCT 0x00040000 |
Use interlaced DCT. More... | |
#define | CODEC_FLAG_LOW_DELAY 0x00080000 |
Force low delay. More... | |
#define | CODEC_FLAG_GLOBAL_HEADER 0x00400000 |
Place global headers in extradata instead of every keyframe. More... | |
#define | CODEC_FLAG_BITEXACT 0x00800000 |
Use only bitexact stuff (except (I)DCT). More... | |
#define | CODEC_FLAG_AC_PRED 0x01000000 |
H.263 advanced intra coding / MPEG-4 AC prediction. More... | |
#define | CODEC_FLAG_LOOP_FILTER 0x00000800 |
loop filter More... | |
#define | CODEC_FLAG_INTERLACED_ME 0x20000000 |
interlaced motion estimation More... | |
#define | CODEC_FLAG_CLOSED_GOP 0x80000000 |
#define | CODEC_FLAG2_FAST 0x00000001 |
Allow non spec compliant speedup tricks. More... | |
#define | CODEC_FLAG2_NO_OUTPUT 0x00000004 |
Skip bitstream encoding. More... | |
#define | CODEC_FLAG2_LOCAL_HEADER 0x00000008 |
Place global headers at every keyframe instead of in extradata. More... | |
#define | CODEC_FLAG2_IGNORE_CROP 0x00010000 |
Discard cropping information from SPS. More... | |
#define | CODEC_FLAG2_CHUNKS 0x00008000 |
Input bitstream might be truncated at a packet boundaries instead of only at frame boundaries. More... | |
#define | CODEC_CAP_DRAW_HORIZ_BAND 0x0001 |
Decoder can use draw_horiz_band callback. More... | |
#define | CODEC_CAP_DR1 0x0002 |
Codec uses get_buffer() for allocating buffers and supports custom allocators. More... | |
#define | CODEC_CAP_TRUNCATED 0x0008 |
#define | CODEC_CAP_DELAY 0x0020 |
Encoder or decoder requires flushing with NULL input at the end in order to give the complete and correct output. More... | |
#define | CODEC_CAP_SMALL_LAST_FRAME 0x0040 |
Codec can be fed a final frame with a smaller size. More... | |
#define | CODEC_CAP_HWACCEL_VDPAU 0x0080 |
Codec can export data for HW decoding (VDPAU). More... | |
#define | CODEC_CAP_SUBFRAMES 0x0100 |
Codec can output multiple frames per AVPacket Normally demuxers return one frame at a time, demuxers which do not do are connected to a parser to split what they return into proper frames. More... | |
#define | CODEC_CAP_EXPERIMENTAL 0x0200 |
Codec is experimental and is thus avoided in favor of non experimental encoders. More... | |
#define | CODEC_CAP_CHANNEL_CONF 0x0400 |
Codec should fill in channel configuration and samplerate instead of container. More... | |
#define | CODEC_CAP_NEG_LINESIZES 0x0800 |
#define | CODEC_CAP_FRAME_THREADS 0x1000 |
Codec supports frame-level multithreading. More... | |
#define | CODEC_CAP_SLICE_THREADS 0x2000 |
Codec supports slice-based (or partition-based) multithreading. More... | |
#define | CODEC_CAP_PARAM_CHANGE 0x4000 |
Codec supports changed parameters at any point. More... | |
#define | CODEC_CAP_AUTO_THREADS 0x8000 |
Codec supports avctx->thread_count == 0 (auto). More... | |
#define | CODEC_CAP_VARIABLE_FRAME_SIZE 0x10000 |
Audio encoder supports receiving a different number of samples in each call. More... | |
#define | MB_TYPE_INTRA4x4 0x0001 |
#define | MB_TYPE_INTRA16x16 0x0002 |
#define | MB_TYPE_INTRA_PCM 0x0004 |
#define | MB_TYPE_16x16 0x0008 |
#define | MB_TYPE_16x8 0x0010 |
#define | MB_TYPE_8x16 0x0020 |
#define | MB_TYPE_8x8 0x0040 |
#define | MB_TYPE_INTERLACED 0x0080 |
#define | MB_TYPE_DIRECT2 0x0100 |
#define | MB_TYPE_ACPRED 0x0200 |
#define | MB_TYPE_GMC 0x0400 |
#define | MB_TYPE_SKIP 0x0800 |
#define | MB_TYPE_P0L0 0x1000 |
#define | MB_TYPE_P1L0 0x2000 |
#define | MB_TYPE_P0L1 0x4000 |
#define | MB_TYPE_P1L1 0x8000 |
#define | MB_TYPE_L0 (MB_TYPE_P0L0 | MB_TYPE_P1L0) |
#define | MB_TYPE_L1 (MB_TYPE_P0L1 | MB_TYPE_P1L1) |
#define | MB_TYPE_L0L1 (MB_TYPE_L0 | MB_TYPE_L1) |
#define | MB_TYPE_QUANT 0x00010000 |
#define | MB_TYPE_CBP 0x00020000 |
#define | FF_QSCALE_TYPE_MPEG1 0 |
#define | FF_QSCALE_TYPE_MPEG2 1 |
#define | FF_QSCALE_TYPE_H264 2 |
#define | FF_QSCALE_TYPE_VP56 3 |
#define | FF_BUFFER_TYPE_INTERNAL 1 |
#define | FF_BUFFER_TYPE_USER 2 |
direct rendering buffers (image is (de)allocated by user) More... | |
#define | FF_BUFFER_TYPE_SHARED 4 |
Buffer from somewhere else; don't deallocate image (data/base), all other tables are not shared. More... | |
#define | FF_BUFFER_TYPE_COPY 8 |
Just a (modified) copy of some other buffer, don't deallocate anything. More... | |
#define | FF_BUFFER_HINTS_VALID 0x01 |
#define | FF_BUFFER_HINTS_READABLE 0x02 |
#define | FF_BUFFER_HINTS_PRESERVE 0x04 |
#define | FF_BUFFER_HINTS_REUSABLE 0x08 |
#define | AV_GET_BUFFER_FLAG_REF (1 << 0) |
The decoder will keep a reference to the frame and may reuse it later. More... | |
#define | AVPALETTE_SIZE 1024 |
#define | AVPALETTE_COUNT 256 |
#define | AV_SUBTITLE_FLAG_FORCED 0x00000001 |
Functions | |
AVCodec * | av_codec_next (const AVCodec *c) |
If c is NULL, returns the first registered codec, if c is non-NULL, returns the next registered codec after c, or NULL if c is the last one. More... | |
unsigned | avcodec_version (void) |
Return the LIBAVCODEC_VERSION_INT constant. More... | |
const char * | avcodec_configuration (void) |
Return the libavcodec build-time configuration. More... | |
const char * | avcodec_license (void) |
Return the libavcodec license. More... | |
void | avcodec_register (AVCodec *codec) |
Register the codec codec and initialize libavcodec. More... | |
void | avcodec_register_all (void) |
Register all the codecs, parsers and bitstream filters which were enabled at configuration time. More... | |
AVCodecContext * | avcodec_alloc_context3 (const AVCodec *codec) |
Allocate an AVCodecContext and set its fields to default values. More... | |
int | avcodec_get_context_defaults3 (AVCodecContext *s, const AVCodec *codec) |
Set the fields of the given AVCodecContext to default values corresponding to the given codec (defaults may be codec-dependent). More... | |
const AVClass * | avcodec_get_class (void) |
Get the AVClass for AVCodecContext. More... | |
int | avcodec_copy_context (AVCodecContext *dest, const AVCodecContext *src) |
Copy the settings of the source AVCodecContext into the destination AVCodecContext. More... | |
int | avcodec_open2 (AVCodecContext *avctx, const AVCodec *codec, AVDictionary **options) |
Initialize the AVCodecContext to use the given AVCodec. More... | |
int | avcodec_close (AVCodecContext *avctx) |
Close a given AVCodecContext and free all the data associated with it (but not the AVCodecContext itself). More... | |
void | avsubtitle_free (AVSubtitle *sub) |
Free all allocated data in the given subtitle struct. More... | |
Basic definitions, functions for querying libavcodec capabilities, allocating core structures, etc.
#define AV_CODEC_PROP_INTRA_ONLY (1 << 0) |
Codec uses only intra compression.
Video codecs only.
Definition at line 489 of file avcodec.h.
Referenced by is_intra_only(), and show_codecs().
#define AV_CODEC_PROP_LOSSY (1 << 1) |
Codec supports lossy compression.
Audio and video codecs only.
Definition at line 495 of file avcodec.h.
Referenced by show_codecs().
#define AV_CODEC_PROP_LOSSLESS (1 << 2) |
Codec supports lossless compression.
Audio and video codecs only.
Definition at line 499 of file avcodec.h.
Referenced by show_codecs().
#define FF_MAX_B_FRAMES 16 |
#define CODEC_FLAG_UNALIGNED 0x0001 |
Allow decoders to produce frames with data planes that are not aligned to CPU requirements (e.g.
due to cropping).
Definition at line 655 of file avcodec.h.
Referenced by ff_h264_decode_seq_parameter_set(), and ff_hevc_decode_nal_sps().
#define CODEC_FLAG_QSCALE 0x0002 |
Use fixed qscale.
Definition at line 656 of file avcodec.h.
Referenced by aac_encode_frame(), aac_encode_init(), encode_init(), encode_picture(), estimate_best_b_count(), Faac_encode_init(), ff_MPV_encode_init(), lame_window_init(), libschroedinger_encode_init(), mp3lame_encode_init(), new_output_stream(), oggvorbis_init_encoder(), parse_ffconfig(), vorbis_encode_init(), and xvid_encode_init().
#define CODEC_FLAG_4MV 0x0004 |
4 MV per MB allowed / advanced prediction for H.263.
Definition at line 657 of file avcodec.h.
Referenced by ff_estimate_p_frame_motion(), ff_fix_long_p_mvs(), ff_MPV_encode_init(), parse_ffconfig(), and xvid_encode_init().
#define CODEC_FLAG_OUTPUT_CORRUPT 0x0008 |
Output even those frames that might be corrupted.
Definition at line 658 of file avcodec.h.
Referenced by h264_decode_frame().
#define CODEC_FLAG_QPEL 0x0010 |
Use qpel MC.
Definition at line 659 of file avcodec.h.
Referenced by estimate_best_b_count(), ff_init_me(), ff_MPV_encode_init(), get_flags(), and xvid_encode_init().
#define CODEC_FLAG_GMC 0x0020 |
#define CODEC_FLAG_MV0 0x0040 |
Always try a MB with MV=<0,0>.
Definition at line 661 of file avcodec.h.
Referenced by epzs_motion_search_internal(), ff_estimate_b_frame_motion(), and ff_estimate_p_frame_motion().
#define CODEC_FLAG_INPUT_PRESERVED 0x0100 |
The parent program guarantees that the input for B-frames containing streams is not written to for at least s->max_b_frames+1 frames, if this is not set the input will be copied.
Definition at line 667 of file avcodec.h.
Referenced by estimate_best_b_count().
#define CODEC_FLAG_PASS1 0x0200 |
Use internal 2pass ratecontrol in first pass mode.
Definition at line 668 of file avcodec.h.
Referenced by avcodec_string(), encode_422_bitstream(), encode_bgra_bitstream(), encode_frame(), encode_gray_bitstream(), encode_init(), encode_line(), encode_thread(), ff_h263_encode_mb(), ff_mpeg4_encode_mb(), ff_MPV_encode_picture(), ffv1_encode_frame(), ffv1_encode_init(), new_video_stream(), transcode_init(), vp8_encode(), vpx_init(), write_slice_end(), X264_init(), XAVS_init(), and xvid_encode_init().
#define CODEC_FLAG_PASS2 0x0400 |
Use internal 2pass ratecontrol in second pass mode.
Definition at line 669 of file avcodec.h.
Referenced by avcodec_string(), encode_frame(), encode_init(), encode_picture(), ff_MPV_encode_init(), ff_rate_control_init(), ff_rate_control_uninit(), ff_rate_estimate_qscale(), ffv1_encode_init(), new_video_stream(), select_input_picture(), transcode_init(), vpx_init(), X264_init(), XAVS_init(), and xvid_encode_init().
#define CODEC_FLAG_GRAY 0x2000 |
Only decode/encode grayscale.
Definition at line 670 of file avcodec.h.
Referenced by apply_8x8(), apply_obmc(), backup_mb_border(), comp_block(), dct_get(), decode_frame(), decode_slice(), dnxhd_decode_macroblock(), encode_mb_internal(), ff_h264_filter_mb(), ff_mspel_motion(), ff_wmv2_add_mb(), gmc1_motion(), gmc_motion(), h264_filter_mb_fast_internal(), hl_decode_mb(), hl_decode_mb_444(), idct_put(), mc_dir_part(), mpeg_motion_internal(), MPV_decode_mb_internal(), qpel_motion(), render_slice(), svq1_decode_frame(), svq3_mc_dir_part(), tgq_idct_put_mb(), tgq_idct_put_mb_dconly(), tqi_idct_put(), unpack_dct_coeffs(), vble_decode_frame(), vc1_decode_b_mb(), vc1_decode_b_mb_intfi(), vc1_decode_b_mb_intfr(), vc1_decode_i_blocks(), vc1_decode_i_blocks_adv(), vc1_decode_init(), vc1_decode_p_mb(), vc1_decode_p_mb_intfi(), vc1_decode_p_mb_intfr(), vc1_interp_mc(), vc1_mc_1mv(), vc1_mc_4mv_chroma(), vc1_mc_4mv_chroma4(), vc1_smooth_overlap_filter_iblk(), xchg_mb_border(), and xvid_encode_init().
#define CODEC_FLAG_EMU_EDGE 0x4000 |
Definition at line 676 of file avcodec.h.
Referenced by update_frame_pool(), and video_get_buffer().
#define CODEC_FLAG_PSNR 0x8000 |
error[?] variables will be set during encoding.
Definition at line 678 of file avcodec.h.
Referenced by do_video_stats(), encode_thread(), estimate_best_b_count(), MPV_decode_mb_internal(), print_report(), X264_init(), and XAVS_init().
#define CODEC_FLAG_TRUNCATED |
Definition at line 679 of file avcodec.h.
Referenced by ff_h263_decode_frame(), get_consumed_bytes(), mpeg_decode_frame(), validate_thread_parameters(), and video_decode_example().
#define CODEC_FLAG_NORMALIZE_AQP 0x00020000 |
Normalize adaptive quantization.
Definition at line 681 of file avcodec.h.
Referenced by adaptive_quantization().
#define CODEC_FLAG_INTERLACED_DCT 0x00040000 |
Use interlaced DCT.
Definition at line 682 of file avcodec.h.
Referenced by dnxhd_encode_init(), do_video_out(), dv_guess_dct_mode(), encode_frame(), encode_init(), encode_mb_internal(), ff_dnxhd_find_cid(), ff_MPV_encode_init(), X264_init(), and XAVS_init().
#define CODEC_FLAG_LOW_DELAY 0x00080000 |
Force low delay.
Definition at line 683 of file avcodec.h.
Referenced by decode_vop_header(), ff_mpeg4_decode_picture_header(), ff_MPV_encode_init(), h264_set_parameter_from_sps(), mpeg1_decode_sequence(), mpeg_decode_sequence_extension(), and validate_thread_parameters().
#define CODEC_FLAG_GLOBAL_HEADER 0x00400000 |
Place global headers in extradata instead of every keyframe.
Definition at line 684 of file avcodec.h.
Referenced by aac_encode_init(), add_audio_stream(), add_video_stream(), av_parser_change(), encode_init(), Faac_encode_init(), ff_mpeg4_encode_picture_header(), ffm_read_header(), ffm_write_header(), init_muxer(), new_output_stream(), open_output_file(), remove_extradata(), X264_init(), XAVS_init(), and xvid_encode_init().
#define CODEC_FLAG_BITEXACT 0x00800000 |
Use only bitexact stuff (except (I)DCT).
Definition at line 685 of file avcodec.h.
Referenced by aac_decode_init(), aac_encode_frame(), ac3_decode_init(), atrac1_decode_init(), atrac3_decode_init(), atrac3p_decode_init(), dca_decode_init(), decode_init(), dsp_init(), encode_frame(), encode_init(), ff_ac3_encode_init(), ff_dct_common_init(), ff_dsputil_init_pix_mmx(), ff_fmt_convert_init_arm(), ff_fmt_convert_init_ppc(), ff_fmt_convert_init_x86(), ff_MPV_common_init_x86(), ff_twinvq_decode_init(), ff_vp3dsp_init_bfin(), ff_vp3dsp_init_x86(), ff_wma_init(), flac_write_header(), get_cox(), hadamard_func(), hpeldsp_init_3dnow(), hpeldsp_init_mmxext(), imc_decode_init(), init_muxer(), jpeg_put_comments(), mkv_write_header(), mov_write_udta_tag(), mp3lame_encode_init(), mpeg4_encode_vol_header(), mxf_write_header(), mxf_write_identification(), ogg_write_header(), parse_ffconfig(), ra288_decode_init(), vorbis_decode_init(), and vp3_decode_init().
#define CODEC_FLAG_AC_PRED 0x01000000 |
H.263 advanced intra coding / MPEG-4 AC prediction.
Definition at line 687 of file avcodec.h.
Referenced by ff_mpeg4_encode_mb(), ff_MPV_encode_init(), and xvid_encode_init().
#define CODEC_FLAG_LOOP_FILTER 0x00000800 |
loop filter
Definition at line 688 of file avcodec.h.
Referenced by ff_MPV_encode_init(), and X264_init().
#define CODEC_FLAG_INTERLACED_ME 0x20000000 |
interlaced motion estimation
Definition at line 689 of file avcodec.h.
Referenced by do_video_out(), encode_init(), encode_picture(), ff_estimate_b_frame_motion(), ff_estimate_p_frame_motion(), ff_MPV_encode_init(), init_context_frame(), and libschroedinger_encode_init().
#define CODEC_FLAG_CLOSED_GOP 0x80000000 |
Definition at line 690 of file avcodec.h.
Referenced by ff_MPV_encode_init(), libschroedinger_encode_init(), mpeg1_encode_sequence_header(), mpeg4_encode_gop_header(), select_input_picture(), X264_init(), and xvid_encode_init().
#define CODEC_FLAG2_FAST 0x00000001 |
Allow non spec compliant speedup tricks.
Definition at line 691 of file avcodec.h.
Referenced by decode_slice_header(), mpeg_decode_mb(), and stream_component_open().
#define CODEC_FLAG2_NO_OUTPUT 0x00000004 |
Skip bitstream encoding.
Definition at line 692 of file avcodec.h.
Referenced by encode_422_bitstream(), encode_bgra_bitstream(), encode_frame(), encode_gray_bitstream(), ff_h263_encode_motion_vector(), and mpeg4_encode_blocks().
#define CODEC_FLAG2_LOCAL_HEADER 0x00000008 |
Place global headers at every keyframe instead of in extradata.
Definition at line 693 of file avcodec.h.
Referenced by av_parser_change(), dump_extradata(), and remove_extradata().
#define CODEC_FLAG2_IGNORE_CROP 0x00010000 |
Discard cropping information from SPS.
Definition at line 694 of file avcodec.h.
Referenced by decode_vui(), ff_h264_decode_seq_parameter_set(), and ff_hevc_decode_nal_sps().
#define CODEC_FLAG2_CHUNKS 0x00008000 |
Input bitstream might be truncated at a packet boundaries instead of only at frame boundaries.
Definition at line 696 of file avcodec.h.
Referenced by decode_nal_units(), h264_decode_frame(), and validate_thread_parameters().
#define CODEC_CAP_DRAW_HORIZ_BAND 0x0001 |
#define CODEC_CAP_DR1 0x0002 |
Codec uses get_buffer() for allocating buffers and supports custom allocators.
If not set, it might not use get_buffer() at all or use operations that assume the buffer was allocated by avcodec_default_get_buffer.
Definition at line 711 of file avcodec.h.
Referenced by avcodec_decode_video2().
#define CODEC_CAP_TRUNCATED 0x0008 |
Definition at line 712 of file avcodec.h.
Referenced by video_decode_example().
#define CODEC_CAP_DELAY 0x0020 |
Encoder or decoder requires flushing with NULL input at the end in order to give the complete and correct output.
NOTE: If this flag is not set, the codec is guaranteed to never be fed with with NULL data. The user can still send NULL data to the public encode or decode function, but libavcodec will not pass it along to the codec unless this flag is set.
Decoders: The decoder has a non-zero delay and needs to be fed with avpkt->data=NULL, avpkt->size=0 at the end to get the delayed data until the decoder no longer returns frames.
Encoders: The encoder needs to be fed with NULL data at the end of encoding until the encoder no longer returns data.
NOTE: For encoders implementing the AVCodec.encode2() function, setting this flag also means that the encoder must set the pts and duration for each output packet. If this flag is not set, the pts and duration will be determined by libavcodec from the input frame.
Definition at line 740 of file avcodec.h.
Referenced by audio_decode_frame(), avcodec_decode_audio4(), avcodec_decode_video2(), avcodec_encode_audio2(), avcodec_encode_video2(), decode_thread(), mpeg12_class(), and submit_packet().
#define CODEC_CAP_SMALL_LAST_FRAME 0x0040 |
Codec can be fed a final frame with a smaller size.
This can be used to prevent truncation of the last audio samples.
Definition at line 745 of file avcodec.h.
Referenced by avcodec_encode_audio2().
#define CODEC_CAP_HWACCEL_VDPAU 0x0080 |
#define CODEC_CAP_SUBFRAMES 0x0100 |
Codec can output multiple frames per AVPacket Normally demuxers return one frame at a time, demuxers which do not do are connected to a parser to split what they return into proper frames.
This flag is reserved to the very rare category of codecs which have a bitstream that cannot be split into frames without timeconsuming operations like full decoding. Demuxers carring such bitstreams thus may return multiple frames in a packet. This has many disadvantages like prohibiting stream copy in many cases thus it should only be considered as a last resort.
#define CODEC_CAP_EXPERIMENTAL 0x0200 |
Codec is experimental and is thus avoided in favor of non experimental encoders.
Definition at line 768 of file avcodec.h.
Referenced by abort_codec_experimental(), avcodec_open2(), find_encdec(), and print_codecs().
#define CODEC_CAP_CHANNEL_CONF 0x0400 |
Codec should fill in channel configuration and samplerate instead of container.
Definition at line 772 of file avcodec.h.
Referenced by try_decode_frame().
#define CODEC_CAP_NEG_LINESIZES 0x0800 |
#define CODEC_CAP_FRAME_THREADS 0x1000 |
Codec supports frame-level multithreading.
Definition at line 782 of file avcodec.h.
Referenced by print_codec(), print_codecs(), and validate_thread_parameters().
#define CODEC_CAP_SLICE_THREADS 0x2000 |
Codec supports slice-based (or partition-based) multithreading.
Definition at line 786 of file avcodec.h.
Referenced by mpeg12_class(), print_codec(), print_codecs(), and validate_thread_parameters().
#define CODEC_CAP_PARAM_CHANGE 0x4000 |
Codec supports changed parameters at any point.
Definition at line 790 of file avcodec.h.
Referenced by apply_param_change().
#define CODEC_CAP_AUTO_THREADS 0x8000 |
Codec supports avctx->thread_count == 0 (auto).
Definition at line 794 of file avcodec.h.
Referenced by avcodec_open2(), and validate_thread_parameters().
#define CODEC_CAP_VARIABLE_FRAME_SIZE 0x10000 |
Audio encoder supports receiving a different number of samples in each call.
Definition at line 798 of file avcodec.h.
Referenced by avcodec_encode_audio2(), open_audio(), and poll_filter().
#define MB_TYPE_INTRA4x4 0x0001 |
Definition at line 802 of file avcodec.h.
Referenced by ff_er_frame_end(), and svq3_decode_mb().
#define MB_TYPE_INTRA16x16 0x0002 |
Definition at line 803 of file avcodec.h.
Referenced by decode_cabac_intra_mb_type(), rv34_decode_intra_mb_header(), and svq3_decode_mb().
#define MB_TYPE_INTRA_PCM 0x0004 |
Definition at line 804 of file avcodec.h.
Referenced by decode_cabac_intra_mb_type().
#define MB_TYPE_16x16 0x0008 |
Definition at line 805 of file avcodec.h.
Referenced by decode_mb_skip(), ff_er_frame_end(), ff_h263_decode_mb(), ff_h263_update_motion_val(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_mpeg4_set_direct_mv(), fill_decode_caches(), filter_mb_dir(), h261_decode_mb(), h261_decode_mb_skipped(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), mpeg_decode_mb(), msmpeg4v34_decode_mb(), parse_mb_skip(), pred_spatial_direct_motion(), pred_temp_direct_motion(), preview_obmc(), svq3_decode_mb(), vc1_decode_b_mb_intfi(), vc1_decode_p_mb(), and vc1_decode_p_mb_intfi().
#define MB_TYPE_16x8 0x0010 |
Definition at line 806 of file avcodec.h.
Referenced by ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_mpeg4_set_direct_mv(), fill_decode_caches(), get_dct8x8_allowed(), mpeg4_decode_mb(), mpeg_decode_mb(), pred_spatial_direct_motion(), and pred_temp_direct_motion().
#define MB_TYPE_8x16 0x0020 |
Definition at line 807 of file avcodec.h.
Referenced by filter_mb_dir(), get_dct8x8_allowed(), pred_spatial_direct_motion(), and pred_temp_direct_motion().
#define MB_TYPE_8x8 0x0040 |
Definition at line 808 of file avcodec.h.
Referenced by ff_h263_decode_mb(), ff_h263_update_motion_val(), ff_mpeg4_set_direct_mv(), fill_decode_caches(), get_dct8x8_allowed(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), pred_spatial_direct_motion(), pred_temp_direct_motion(), and preview_obmc().
#define MB_TYPE_INTERLACED 0x0080 |
Definition at line 809 of file avcodec.h.
Referenced by decode_mb_skip(), ff_h264_decode_mb_cabac(), ff_h264_decode_mb_cavlc(), ff_mpeg4_set_direct_mv(), mpeg4_decode_mb(), mpeg_decode_mb(), pred_spatial_direct_motion(), and pred_temp_direct_motion().
#define MB_TYPE_DIRECT2 0x0100 |
Definition at line 810 of file avcodec.h.
Referenced by decode_cabac_mb_ref(), decode_mb_skip(), ff_mpeg4_set_direct_mv(), fill_decode_caches(), get_dct8x8_allowed(), mpeg4_decode_mb(), pred_spatial_direct_motion(), and pred_temp_direct_motion().
#define MB_TYPE_ACPRED 0x0200 |
Definition at line 811 of file avcodec.h.
Referenced by ff_h263_decode_mb(), mpeg4_decode_mb(), and mpeg4_decode_partition_b().
#define MB_TYPE_GMC 0x0400 |
Definition at line 812 of file avcodec.h.
Referenced by mpeg4_decode_mb(), and mpeg4_decode_partition_a().
#define MB_TYPE_SKIP 0x0800 |
Definition at line 813 of file avcodec.h.
Referenced by decode_mb_skip(), ff_h263_decode_mb(), ff_h264_decode_mb_cabac(), fill_decode_caches(), h261_decode_mb_skipped(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), mpeg_decode_mb(), msmpeg4v34_decode_mb(), parse_mb_skip(), preview_obmc(), svq3_decode_mb(), vc1_decode_b_mb_intfr(), vc1_decode_p_mb(), and vc1_decode_p_mb_intfr().
#define MB_TYPE_P0L0 0x1000 |
Definition at line 814 of file avcodec.h.
Referenced by decode_mb_skip(), and pred_temp_direct_motion().
#define MB_TYPE_P1L0 0x2000 |
Definition at line 815 of file avcodec.h.
Referenced by decode_mb_skip(), and pred_spatial_direct_motion().
#define MB_TYPE_P0L1 0x4000 |
Definition at line 816 of file avcodec.h.
Referenced by pred_temp_direct_motion().
#define MB_TYPE_P1L1 0x8000 |
Definition at line 817 of file avcodec.h.
Referenced by pred_spatial_direct_motion().
#define MB_TYPE_L0 (MB_TYPE_P0L0 | MB_TYPE_P1L0) |
Definition at line 818 of file avcodec.h.
Referenced by ff_er_frame_end(), ff_h263_decode_mb(), ff_h263_update_motion_val(), h261_decode_mb(), h261_decode_mb_skipped(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), mpeg_decode_mb(), msmpeg4v34_decode_mb(), parse_mb_skip(), pred_spatial_direct_motion(), preview_obmc(), and rv34_pred_mv_b().
#define MB_TYPE_L1 (MB_TYPE_P0L1 | MB_TYPE_P1L1) |
Definition at line 819 of file avcodec.h.
Referenced by rv34_pred_mv_b().
#define MB_TYPE_L0L1 (MB_TYPE_L0 | MB_TYPE_L1) |
Definition at line 820 of file avcodec.h.
Referenced by decode_mb_skip(), ff_mpeg4_set_direct_mv(), mpeg4_decode_mb(), mpeg_decode_mb(), pred_spatial_direct_motion(), and pred_temp_direct_motion().
#define MB_TYPE_QUANT 0x00010000 |
Definition at line 821 of file avcodec.h.
Referenced by mpeg_decode_mb().
#define MB_TYPE_CBP 0x00020000 |
Definition at line 822 of file avcodec.h.
Referenced by mpeg_decode_mb().
#define FF_BUFFER_TYPE_INTERNAL 1 |
Definition at line 863 of file avcodec.h.
Referenced by avcodec_default_get_buffer2().
#define FF_BUFFER_TYPE_USER 2 |
#define FF_BUFFER_TYPE_SHARED 4 |
#define FF_BUFFER_TYPE_COPY 8 |
#define AV_GET_BUFFER_FLAG_REF (1 << 0) |
The decoder will keep a reference to the frame and may reuse it later.
Definition at line 877 of file avcodec.h.
Referenced by alloc_frame(), alloc_frame_buffer(), alloc_picture(), cdg_decode_frame(), cmv_decode_frame(), decode_frame(), decode_pic(), escape124_decode_frame(), execute_code(), ff_get_buffer(), ff_mjpeg_decode_sof(), ff_reget_buffer(), ff_vp56_decode_frame(), ffv1_decode_frame(), get_buffer(), ipvideo_decode_frame(), mimic_decode_frame(), mss2_decode_frame(), mxpeg_decode_frame(), set_sps(), svq1_decode_frame(), tgv_decode_frame(), vmdvideo_decode_frame(), vp8_alloc_frame(), vp9_decode_frame(), xan_decode_frame(), and zerocodec_decode_frame().
#define AVPALETTE_SIZE 1024 |
Definition at line 2959 of file avcodec.h.
Referenced by asf_parse_packet(), asf_read_stream_properties(), cinepak_decode_frame(), cmv_decode_frame(), decode_dvd_subtitles(), decode_frame(), display_end_segment(), dvbsub_display_end_segment(), flic_decode_frame_8BPP(), idcin_decode_frame(), idcin_read_packet(), ipvideo_decode_frame(), ipvideo_decode_opcodes(), load_ipmovie_packet(), mm_decode_frame(), mov_read_packet(), msrle_decode_frame(), mss1_decode_frame(), msvideo1_decode_8bit(), msvideo1_decode_frame(), qtrle_decode_frame(), raw_decode(), raw_init_decoder(), rl2_decode_frame(), smc_decode_frame(), smc_decode_stream(), tgv_decode_frame(), xan_decode_frame(), and yop_decode_frame().
#define AVPALETTE_COUNT 256 |
Definition at line 2960 of file avcodec.h.
Referenced by cmv_process_header(), decode_frame(), rl2_decode_init(), tgv_decode_frame(), and xan_decode_frame().
#define AV_SUBTITLE_FLAG_FORCED 0x00000001 |
Definition at line 2980 of file avcodec.h.
Referenced by display_end_segment().
enum AVCodecID |
Identify the syntax and semantics of the bitstream.
The principle is roughly: Two decoders with the same ID can decode the same streams. Two encoders with the same ID can encode compatible streams. There may be slight deviations from the principle due to implementation details.
If you add a codec ID to this list, add it so that
After adding new codec IDs, do not forget to add an entry to the codec descriptor list and bump libavcodec minor version.
enum AVColorPrimaries |
enum AVColorSpace |
enum AVColorRange |
enum AVChromaLocation |
X X 3 4 X X are luma samples, 1 2 1-6 are possible chroma positions X X 5 6 X 0 is undefined/unknown position.
enum AVAudioServiceType |
enum AVFieldOrder |
enum AVSubtitleType |
If c is NULL, returns the first registered codec, if c is non-NULL, returns the next registered codec after c, or NULL if c is the last one.
Definition at line 86 of file utils.c.
Referenced by codec_child_class_next(), and next_codec_for_id().
unsigned avcodec_version | ( | void | ) |
const char* avcodec_configuration | ( | void | ) |
const char* avcodec_license | ( | void | ) |
Register the codec codec and initialize libavcodec.
Register all the codecs, parsers and bitstream filters which were enabled at configuration time.
If you do not call this function you can select exactly which formats you want to support, by using the individual registration functions.
Definition at line 68 of file allcodecs.c.
Referenced by av_register_all(), and main().
AVCodecContext* avcodec_alloc_context3 | ( | const AVCodec * | codec | ) |
Allocate an AVCodecContext and set its fields to default values.
The resulting struct can be deallocated by calling avcodec_close() on it followed by av_free().
codec | if non-NULL, allocate private data and initialize defaults for the given codec. It is illegal to then call avcodec_open2() with a different codec. If NULL, then the codec-specific defaults won't be initialized, which may result in suboptimal default settings (this is important mainly for encoders, e.g. libx264). |
Definition at line 124 of file options.c.
Referenced by add_av_stream1(), add_codec(), audio_decode_example(), audio_encode_example(), avformat_new_stream(), estimate_best_b_count(), ff_mov_init_hinting(), mov_create_chapter_track(), video_decode_example(), and video_encode_example().
int avcodec_get_context_defaults3 | ( | AVCodecContext * | s, |
const AVCodec * | codec | ||
) |
Set the fields of the given AVCodecContext to default values corresponding to the given codec (defaults may be codec-dependent).
Do not call this function if a non-NULL codec has been passed to avcodec_alloc_context3() that allocated this AVCodecContext. If codec is non-NULL, it is illegal to call avcodec_open2() with a different codec on this AVCodecContext.
Definition at line 80 of file options.c.
Referenced by avcodec_alloc_context3(), new_output_stream(), and parse_ffconfig().
Get the AVClass for AVCodecContext.
It can be used in combination with AV_OPT_SEARCH_FAKE_OBJ for examining options.
Definition at line 194 of file options.c.
Referenced by filter_codec_opts(), open_input_file(), open_output_file(), opt_default(), and show_help_default().
int avcodec_copy_context | ( | AVCodecContext * | dest, |
const AVCodecContext * | src | ||
) |
Copy the settings of the source AVCodecContext into the destination AVCodecContext.
The resulting destination codec context will be unopened, i.e. you are required to call avcodec_open2() before you can use this AVCodecContext to decode/encode video/audio data.
dest | target codec context, should be initialized with avcodec_alloc_context3(), but otherwise uninitialized |
src | source codec context |
Definition at line 138 of file options.c.
Referenced by ff_rtp_chain_mux_open(), hds_write_header(), hls_mux_init(), hls_read_header(), http_receive_data(), ism_write_header(), mpegts_write_header(), sap_fetch_packet(), sap_read_header(), and segment_mux_init().
int avcodec_open2 | ( | AVCodecContext * | avctx, |
const AVCodec * | codec, | ||
AVDictionary ** | options | ||
) |
Initialize the AVCodecContext to use the given AVCodec.
Prior to using this function the context has to be allocated with avcodec_alloc_context3().
The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(), avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for retrieving a codec.
avctx | The context to initialize. |
codec | The codec to open this context for. If a non-NULL codec has been previously passed to avcodec_alloc_context3() or avcodec_get_context_defaults3() for this context, then this parameter MUST be either NULL or equal to the previously passed codec. |
options | A dictionary filled with AVCodecContext and codec-private options. On return this object will be filled with options that were not found. |
Definition at line 872 of file utils.c.
Referenced by audio_decode_example(), audio_encode_example(), avformat_find_stream_info(), estimate_best_b_count(), init_input_stream(), movie_init(), open_audio(), open_input_file(), open_output_file(), open_video(), stream_component_open(), transcode_init(), try_decode_frame(), video_decode_example(), video_encode_example(), and wrap().
int avcodec_close | ( | AVCodecContext * | avctx | ) |
Close a given AVCodecContext and free all the data associated with it (but not the AVCodecContext itself).
Calling this function on an AVCodecContext that hasn't been opened will free the codec-specific data allocated in avcodec_alloc_context3() / avcodec_get_context_defaults3() with a non-NULL codec. Subsequent calls will do nothing.
Definition at line 1590 of file utils.c.
Referenced by audio_decode_example(), audio_encode_example(), avformat_find_stream_info(), close_audio(), close_connection(), close_input_file(), close_video(), estimate_best_b_count(), main(), stream_component_close(), transcode(), uninit(), video_decode_example(), and video_encode_example().
void avsubtitle_free | ( | AVSubtitle * | sub | ) |
Free all allocated data in the given subtitle struct.
sub | AVSubtitle to free. |
Definition at line 1571 of file utils.c.
Referenced by free_subpicture(), and transcode_subtitles().