

..
    This file is generated by includes.py; any modifications will be destroyed!

Wrapped C Types and Functions
=============================


``Python.h``
------------

.. c:function:: Py_AddPendingCall()


.. c:function:: PyErr_PrintEx()


.. c:function:: Py_IsInitialized()


.. c:function:: PyErr_Display()


``libavcodec/avcodec.pyav.h``
-----------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gadf72cccead0dc2575adcea2dc3e1ae7c>`_
.. c:function:: unsigned avcodec_version(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gaba6aaa26147862a94d660a7b21ecd156>`_
.. c:function:: const char * avcodec_configuration(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gae594db5f65482502088cba133ff96352>`_
.. c:function:: const char * avcodec_license(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__time.html#ga2eaefe702f95f619ea6f2d08afa01be1>`_
.. c:var:: AV_NOPTS_VALUE

    Referenced by: :attr:`av.frame.Frame.dts`, :attr:`av.packet.Packet.duration`, :attr:`av.frame.Frame.pts`, :attr:`av.stream.Stream.start_time`, :attr:`av.frame.Frame.time`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodec.html>`_
.. c:type:: struct AVCodec



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodec.html#ab539ca86026d043803c24ba06fa84197>`_
    .. c:member:: AVMediaType type



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodec.html#a01a53d07936f4c7ee280444793b6967b>`_
    .. c:member:: AVCodecID id



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodec.html#af51f7ff3dac8b730f46b9713e49a2518>`_
    .. c:member:: int capabilities



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#ga2b665824e4d9144f8d4f6c01e3e85aa3>`_
.. c:function:: int av_codec_is_encoder(const AVCodec *codec)

    Referenced by: :attr:`av.codec.context.CodecContext.is_encoder`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#ga6dc18eef1afca3610644a52565cf8a31>`_
.. c:function:: int av_codec_is_decoder(const AVCodec *codec)

    Referenced by: :attr:`av.codec.context.CodecContext.is_decoder`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecDescriptor.html>`_
.. c:type:: struct AVCodecDescriptor



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecDescriptor.html#ab7ba57d70e9d4d50bba20c778c09d069>`_
    .. c:member:: AVCodecID id



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecDescriptor.html#a9949288403a12812cd6e3892ac45f40f>`_
    .. c:member:: int props



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#gac09f8ddc2d4b36c5a85c6befba0d0888>`_
.. c:function:: const AVCodecDescriptor * avcodec_descriptor_get(enum AVCodecID id)

    Referenced by: :attr:`av.data.stream.DataStream.name`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html>`_
.. c:type:: struct AVCodecContext



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a3f99ca3115c44e6d7772c9384faf15e6>`_
    .. c:member:: AVMediaType codec_type



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a2c974557671dd459674b170c5e64d79a>`_
    .. c:member:: int codec_tag



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#adc5f65d6099fd8339c1580c091777223>`_
    .. c:member:: AVCodecID codec_id



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#abb01e291550fa3fb96188af4d494587e>`_
    .. c:member:: int flags



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#aa852b6227d0778b62e9cc4034ad3720c>`_
    .. c:member:: int thread_count



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a7651614f4309122981d70e06a4b42fcb>`_
    .. c:member:: int thread_type



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a7abe7095de73df98df4895bf9e25fc6b>`_
    .. c:member:: int profile



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#af869b808363998c80adf7df6a944a5a6>`_
    .. c:member:: AVDiscard skip_frame



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a6b53fda85ad61baa345edbd96cb8a33c>`_
    .. c:member:: int bit_rate



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a65f37abbfc9d4630aa7fd44b9a1ebb21>`_
    .. c:member:: int bit_rate_tolerance



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a66af0e26734255f1eacabd7d67558482>`_
    .. c:member:: int mb_decision



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a209f5ec60cb5f0b0a4962f4c5c5bb541>`_
    .. c:member:: int global_quality



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#aa401ca663644caa51ede1889659c23d6>`_
    .. c:member:: int compression_level



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a9e5a25a530d01c04491216c368a1a04a>`_
    .. c:member:: int frame_number



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a3f63bc9141e25bf7f1cda0cef7cd4a60>`_
    .. c:member:: int qmin



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#ab015db3b7fcd227193a7c17283914187>`_
    .. c:member:: int qmax



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#aa2b5582f1a360534310b686cc3f7c668>`_
    .. c:member:: int rc_max_rate



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#ac265c70b89e87455ec05eb2978def81b>`_
    .. c:member:: int rc_min_rate



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a15000607a7e2371162348bb35b0184c1>`_
    .. c:member:: int rc_buffer_size



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a023d28b8d65fe09ded1987cdea18dddb>`_
    .. c:member:: float rc_max_available_vbv_use



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#ab7380222079393197e5d6fdce042b2dd>`_
    .. c:member:: float rc_min_vbv_overflow_use



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a4d08b297e97eefd66c714df4fff493c8>`_
    .. c:member:: AVRational framerate



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#ab7bfeb9fa5840aac090e2b0bd0ef7589>`_
    .. c:member:: AVRational time_base



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a5c62b9c1528a272923ea2a4b86dea31a>`_
    .. c:member:: int ticks_per_frame



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#ae246ca7a1c72c151891ed0599e8dbfba>`_
    .. c:member:: int extradata_size



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a948993adfdfcd64b81dad1151fe50f33>`_
    .. c:member:: int delay



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a0d8f46461754e8abea0847dcbc41b956>`_
    .. c:member:: int width



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a0449afd803eb107bd4dbc8b5ea22e363>`_
    .. c:member:: int height



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#ae3c157e97ff15d46e898a538c6bc7f09>`_
    .. c:member:: int coded_width



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#ab2ebb76836ef4cd9822b5077c17b33d0>`_
    .. c:member:: int coded_height



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a0425c77b3d06d71e5db88b1d7e1b37f2>`_
    .. c:member:: AVPixelFormat pix_fmt



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a5252d34fbce300228d4dbda19a8c3293>`_
    .. c:member:: AVRational sample_aspect_ratio



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a9b6b3f1fcbdcc2ad9f4dbb4370496e38>`_
    .. c:member:: int gop_size



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a3e5334a611a3e2a6a653805bb9e2d4d4>`_
    .. c:member:: int max_b_frames



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a686a77363668795c15c87b532cc455fa>`_
    .. c:member:: int has_b_frames



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a1bdba69ea111e2a9d03fdaa7a46a4c45>`_
    .. c:member:: AVSampleFormat sample_fmt



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#a8ff0b000c463361e234af48d03aadfc0>`_
    .. c:member:: int sample_rate



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#ac1e6c2cd1269caa7570575725c682a49>`_
    .. c:member:: int channels



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#aec57f0d859a6df8b479cd93ca3a44a33>`_
    .. c:member:: int frame_size



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecContext.html#aeb08c575a79eb84fc4155dda88f46c06>`_
    .. c:member:: int channel_layout


    .. c:function:: static int get_buffer(AVCodecContext *avctx, SVQ3Frame *pic)

        .. todo:: ``get_buffer`` is deprecated for get_buffer2 in newer versions of FFmpeg.



    .. c:function:: release_buffer()



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gae80afec6f26df6607eaacf39b561c315>`_
.. c:function:: AVCodecContext * avcodec_alloc_context3(const AVCodec *codec)

    Referenced by: :func:`av.codec.context.CodecContext.create`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gaf869d0829ed607cec3a4a02a1c7026b3>`_
.. c:function:: void avcodec_free_context(AVCodecContext **avctx)

    Referenced by: :class:`av.codec.context.CodecContext.__dealloc__ <av.codec.context.CodecContext>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gae8ab0faa9a07901c48e07e5feee82626>`_
.. c:function:: const AVClass * avcodec_get_class(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gae381631ba4fb14f4124575d9ceacb87e>`_
.. c:function:: attribute_deprecated int avcodec_copy_context(AVCodecContext *dest, const AVCodecContext *src)

    Referenced by: :func:`av.container.output.OutputContainer.add_stream`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecDescriptor.html>`_
.. c:type:: struct AVCodecDescriptor



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecDescriptor.html#ab7ba57d70e9d4d50bba20c778c09d069>`_
    .. c:member:: AVCodecID id



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecDescriptor.html#ad628ddb3416cafa38c9d4f3c1f61ad50>`_
    .. c:member:: AVMediaType type



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecDescriptor.html#a9949288403a12812cd6e3892ac45f40f>`_
    .. c:member:: int props



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__decoding.html#ga19a0ca553277f019dd5b0fec6e1f9dca>`_
.. c:function:: AVCodec * avcodec_find_decoder(enum AVCodecID id)

    Referenced by: :class:`av.codec.codec.Codec.__cinit__ <av.codec.codec.Codec>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__encoding.html#ga9f820c481615c3a02d0407bac0bdbf25>`_
.. c:function:: AVCodec * avcodec_find_encoder(enum AVCodecID id)

    Referenced by: :class:`av.codec.codec.Codec.__cinit__ <av.codec.codec.Codec>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__decoding.html#ga776f2359007e8457799503068419e791>`_
.. c:function:: AVCodec * avcodec_find_decoder_by_name(const char *name)

    Referenced by: :class:`av.codec.codec.Codec.__cinit__ <av.codec.codec.Codec>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__encoding.html#gaa614ffc38511c104bdff4a3afa086d37>`_
.. c:function:: AVCodec * avcodec_find_encoder_by_name(const char *name)

    Referenced by: :class:`av.codec.codec.Codec.__cinit__ <av.codec.codec.Codec>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#gac09f8ddc2d4b36c5a85c6befba0d0888>`_
.. c:function:: const AVCodecDescriptor * avcodec_descriptor_get(enum AVCodecID id)

    Referenced by: :attr:`av.data.stream.DataStream.name`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#ga199f854b030f24bd31d251f9d36f1392>`_
.. c:function:: const AVCodecDescriptor * avcodec_descriptor_get_by_name(const char *name)

    Referenced by: :class:`av.codec.codec.Codec.__cinit__ <av.codec.codec.Codec>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#ga2016a52e94f867ebe5113bdf448e182d>`_
.. c:function:: const char * avcodec_get_name(enum AVCodecID id)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#ga0dc4a8003d0818a235bde2d8fbe81e11>`_
.. c:function:: const char * av_get_profile_name(const AVCodec *codec, int profile)

    Referenced by: :attr:`av.codec.context.CodecContext.profile`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#ga11f785a188d7d9df71621001465b0f1d>`_
.. c:function:: int avcodec_open2(AVCodecContext *avctx, const AVCodec *codec, AVDictionary **options)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#ga906dda732e79eac12067c6d7ea19b630>`_
.. c:function:: int avcodec_is_open(AVCodecContext *s)

    Referenced by: :attr:`av.codec.context.CodecContext.is_open`, :attr:`av.codec.context.CodecContext.thread_count`, :attr:`av.codec.context.CodecContext.thread_type`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gaf4daa92361efb3523ef5afeb0b54077f>`_
.. c:function:: int avcodec_close(AVCodecContext *avctx)

    Referenced by: :class:`av.codec.context.CodecContext.__dealloc__ <av.codec.context.CodecContext>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/frame_8h.html#add80189702cf0f5ea82718576fb43201>`_
.. c:var:: AV_NUM_DATA_POINTERS



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html>`_
.. c:type:: struct AVFrame



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#aed14fa772ce46881020fd1545c86432c>`_
    .. c:member:: int format



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a3649a81e8414a193d685a6eee06ce902>`_
    .. c:member:: int key_frame



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#af9920fc3fbfa347b8943ae461b50d18b>`_
    .. c:member:: AVPictureType pict_type



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a7f761518da738c704676c6a5f08eeb8e>`_
    .. c:member:: int interlaced_frame



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a1e71ce60cedd5f3b6811714a9f7f9e0a>`_
    .. c:member:: int width



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a3f89733f429c98ba5bc64373fb0a3f13>`_
    .. c:member:: int height



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a02f45ab8191aea1660159f1e464237ea>`_
    .. c:member:: int nb_samples



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#ac85daa1316e1f47e78da0ca19b7c60e6>`_
    .. c:member:: int sample_rate



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a58c663568a99c1477c163e64858b3fef>`_
    .. c:member:: int channels



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a5f343e0325e3e9d9ed20e34c9e156aef>`_
    .. c:member:: int channel_layout



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a0452833e3ab6ddd7acbf82817a7818a4>`_
    .. c:member:: int64_t pts



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#aa52951f35ec9e303d3dfeb4b3e44248a>`_
    .. c:member:: int64_t pkt_dts



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a3cc73a3345ec1ff8e473ab6049c607e7>`_
    .. c:member:: int pkt_size



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a49020cc320b8fb1f5449167b6c97515b>`_
    .. c:member:: int flags



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFrame.html#a3dd46fd353a405f6e9b91c11d9c5b736>`_
    .. c:member:: int decode_error_flags


.. c:function:: avcodec_alloc_frame()



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPacket.html>`_
.. c:type:: struct AVPacket



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPacket.html#a73bde0a37f3b1efc839f11295bfbf42a>`_
    .. c:member:: int64_t pts



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPacket.html#a85dbbd306b44b02390cd91c45e6a0f76>`_
    .. c:member:: int64_t dts



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPacket.html#a4d1ea19f63eb107111fd650ca514d1f4>`_
    .. c:member:: int size



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPacket.html#a0d1cb9b5a32b00fb6edc81ea3aae2a49>`_
    .. c:member:: int stream_index



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPacket.html#a437be96a9da675f12caa228a9c81bd82>`_
    .. c:member:: int flags



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPacket.html#a622e758be29fd500aed0ffdc069550f7>`_
    .. c:member:: int duration



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPacket.html#ab5793d8195cf4789dfb3913b7a693903>`_
    .. c:member:: int64_t pos



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#ga66b44aad56fa22a78fb8916eb8cc0516>`_
.. c:function:: int avcodec_fill_audio_frame(AVFrame *frame, int nb_channels, enum AVSampleFormat sample_fmt, const uint8_t *buf, int buf_size, int align)


.. c:function:: avcodec_free_frame()



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__packet.html#gac9cb9756175b96e7441575803757fb73>`_
.. c:function:: void av_init_packet(AVPacket *pkt)

    Referenced by: :class:`av.packet.Packet.__cinit__ <av.packet.Packet>`, :func:`av.container.output.OutputContainer.mux_one`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__packet.html#gadfa708660b85a56749c753124de2da7d>`_
.. c:function:: int av_new_packet(AVPacket *pkt, int size)

    Referenced by: :class:`av.packet.Packet.__init__ <av.packet.Packet>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__packet.html#gadb05d71fa2ea7b7fd3e8cfc6d9065a47>`_
.. c:function:: int av_packet_ref(AVPacket *dst, const AVPacket *src)

    Referenced by: :func:`av.container.output.OutputContainer.mux_one`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__packet.html#ga63d5a489b419bd5d45cfd09091cbcbc2>`_
.. c:function:: void av_packet_unref(AVPacket *pkt)

    Referenced by: :class:`av.packet.Packet.__dealloc__ <av.packet.Packet>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitleRect.html>`_
.. c:type:: struct AVSubtitleRect



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitleRect.html#a0059c986f1ee3aab45c0f62f0709621b>`_
    .. c:member:: int x



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitleRect.html#ab9e5fdd0c592636abf46530b110311bb>`_
    .. c:member:: int y



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitleRect.html#a264a52200e34e138d47c76d7a431125a>`_
    .. c:member:: int w



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitleRect.html#afb3272792cfe659e9e788074d3328d3d>`_
    .. c:member:: int h



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitleRect.html#a7d5855be665def02c2d981a6ac1b7579>`_
    .. c:member:: int nb_colors



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitleRect.html#ad3cd08b87cdc6c7e8f0e7567d60598f2>`_
    .. c:member:: AVSubtitleType type



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitleRect.html#a1eb6a2cfe6a14c7405f45fd83d76b8db>`_
    .. c:member:: int flags



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitle.html>`_
.. c:type:: struct AVSubtitle



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitle.html#a03cabc402df10e7ee9b92df6284b09c1>`_
    .. c:member:: uint16_t format



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitle.html#a271f635c9e734310a43277f819159c68>`_
    .. c:member:: uint32_t start_display_time



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitle.html#a354cdfa51cda54c914a569ee3f7493c0>`_
    .. c:member:: uint32_t end_display_time



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitle.html#a89491b1f6998eceb6221791fd50087df>`_
    .. c:member:: int num_rects



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVSubtitle.html#af7cc390bba4f9d6c32e391ca59d117a2>`_
    .. c:member:: int64_t pts



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__decoding.html#ga47db1b7f294b9f92684401b9c66a7c4b>`_
.. c:function:: int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub, int *got_sub_ptr, AVPacket *avpkt)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__encoding.html#ga37be256d85d78f665df27ad6c8f1d65b>`_
.. c:function:: int avcodec_encode_subtitle(AVCodecContext *avctx, uint8_t *buf, int buf_size, const AVSubtitle *sub)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gaa2c3e02a761d9fc0c5c9b2340408c332>`_
.. c:function:: void avsubtitle_free(AVSubtitle *sub)

    Referenced by: :class:`av.subtitles.subtitle.SubtitleProxy.__dealloc__ <av.subtitles.subtitle.SubtitleProxy>`.

.. c:function:: avcodec_get_frame_defaults()



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__misc.html#gaf60b0e076f822abcb2700eb601d352a6>`_
.. c:function:: void avcodec_flush_buffers(AVCodecContext *avctx)


.. c:function:: avcodec_default_get_buffer()


.. c:function:: avcodec_default_release_buffer()



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__decoding.html#ga58bc4bf1e0ac59e27362597e467efff3>`_
.. c:function:: int avcodec_send_packet(AVCodecContext *avctx, const AVPacket *avpkt)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__decoding.html#ga11e6542c4e66d3028668788a1a74217c>`_
.. c:function:: int avcodec_receive_frame(AVCodecContext *avctx, AVFrame *frame)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__decoding.html#ga9395cb802a5febf1f00df31497779169>`_
.. c:function:: int avcodec_send_frame(AVCodecContext *avctx, const AVFrame *frame)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__decoding.html#ga5b8eff59cf259747cf0b31563e38ded6>`_
.. c:function:: int avcodec_receive_packet(AVCodecContext *avctx, AVPacket *avpkt)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecParser.html>`_
.. c:type:: struct AVCodecParser



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__parsing.html#gad6b1c8c48949b111e64b4cfdc8105c72>`_
.. c:function:: attribute_deprecated AVCodecParser * av_parser_next(const AVCodecParser *c)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVCodecParserContext.html>`_
.. c:type:: struct AVCodecParserContext



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__parsing.html#ga0dd9af605377fcbb49fffd982672d377>`_
.. c:function:: AVCodecParserContext * av_parser_init(int codec_id)

    Referenced by: :class:`av.codec.parser.CodecParser.__cinit__ <av.codec.parser.CodecParser>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__parsing.html#ga691ca0258e91f99297e7726f56d8c247>`_
.. c:function:: int av_parser_parse2(AVCodecParserContext *s, AVCodecContext *avctx, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int64_t pts, int64_t dts, int64_t pos)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__parsing.html#ga388e291a22ce1908b932a39c87123756>`_
.. c:function:: int av_parser_change(AVCodecParserContext *s, AVCodecContext *avctx, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int keyframe)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavc__parsing.html#ga325e84c53b8c0dfcb2d933d126f76dd7>`_
.. c:function:: void av_parser_close(AVCodecParserContext *s)

    Referenced by: :class:`av.codec.parser.CodecParser.__dealloc__ <av.codec.parser.CodecParser>`.

.. c:function:: pyav_get_available_codecs()


``libavdevice/avdevice.h``
--------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavd.html#ga6a111710c7b02c2a11d8b6c43e0dd63d>`_
.. c:function:: unsigned avdevice_version(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavd.html#ga84490e9144a7c9311a3df5cc2a66e0c6>`_
.. c:function:: const char * avdevice_configuration(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavd.html#ga146d7576da658d0fb388aa89d563bcfa>`_
.. c:function:: const char * avdevice_license(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavd.html#ga521e86d5a7e1f96f894edbecda3d6970>`_
.. c:function:: AVInputFormat * av_input_audio_device_next(AVInputFormat *d)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavd.html#ga4f4b2a42fa434a3557b96a02ba7cd36a>`_
.. c:function:: AVInputFormat * av_input_video_device_next(AVInputFormat *d)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavd.html#gaf79c3b9e53b5631f422f7b92768c5164>`_
.. c:function:: AVOutputFormat * av_output_audio_device_next(AVOutputFormat *d)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavd.html#ga52f3b793ab7b9511521069cf6213ebd2>`_
.. c:function:: AVOutputFormat * av_output_video_device_next(AVOutputFormat *d)


``libavfilter/avfilter.h``
--------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterGraph.html>`_
.. c:type:: struct AVFilterGraph



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterGraph.html#a0ba5c820c760788ea5f8e40c476f9704>`_
    .. c:member:: int nb_filters



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterInOut.html>`_
.. c:type:: struct AVFilterInOut



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterInOut.html#a386ff90d40aa22f5612dd5eca734ed48>`_
    .. c:member:: int pad_idx



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga6c778454b86f845805ffd814b4ce51d4>`_
.. c:function:: AVFilterGraph * avfilter_graph_alloc(void)

    Referenced by: :class:`av.filter.graph.Graph.__cinit__ <av.filter.graph.Graph>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga871684449dac05050df238a18d0d493b>`_
.. c:function:: void avfilter_graph_free(AVFilterGraph **graph)

    Referenced by: :class:`av.filter.graph.Graph.__dealloc__ <av.filter.graph.Graph>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga6c3c39e0861653c71a23f90d1397239d>`_
.. c:function:: int avfilter_graph_parse2(AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#gaa9af17ecf4c5c87307b57cf08411088b>`_
.. c:function:: AVFilterContext * avfilter_graph_alloc_filter(AVFilterGraph *graph, const AVFilter *filter, const char *name)

    Referenced by: :func:`av.filter.graph.Graph.add`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#gac0788a9ab6966dba9318b5d5c7524fea>`_
.. c:function:: int avfilter_graph_create_filter(AVFilterContext **filt_ctx, const AVFilter *filt, const char *name, const char *args, void *opaque, AVFilterGraph *graph_ctx)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#gabc6247ebae2c591e768c8555174402f1>`_
.. c:function:: int avfilter_link(AVFilterContext *src, unsigned srcpad, AVFilterContext *dst, unsigned dstpad)

    Referenced by: :func:`av.filter.context.FilterContext.link_to`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga1896c46b7bc6ff1bdb1a4815faa9ad07>`_
.. c:function:: int avfilter_graph_config(AVFilterGraph *graphctx, void *log_ctx)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#gadb442aca4e5a8c3ba740f6049f0a288b>`_
.. c:function:: char * avfilter_graph_dump(AVFilterGraph *graph, const char *options)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga294500a9856260eb1552354fd9d9a6c4>`_
.. c:function:: void avfilter_inout_free(AVFilterInOut **inout)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#gab2e80a6bf5de47a81f64471e73524a6a>`_
.. c:function:: unsigned avfilter_version(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#gaeda0e16f48d137db0ef762259603cb06>`_
.. c:function:: const char * avfilter_configuration(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#gadc149473598907e3db669018abb11e6e>`_
.. c:function:: const char * avfilter_license(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterPad.html>`_
.. c:type:: struct AVFilterPad



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga2d69631bb24a0a2b7ac0e00fe1dfab3b>`_
.. c:function:: const char * avfilter_pad_get_name(const AVFilterPad *pads, int pad_idx)

    Referenced by: :attr:`av.filter.pad.FilterPad.name`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga2d241a0066fc3724ec3335e25bc3912e>`_
.. c:function:: enum AVMediaType avfilter_pad_get_type(const AVFilterPad *pads, int pad_idx)

    Referenced by: :func:`av.filter.pad.FilterPad.type`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilter.html>`_
.. c:type:: struct AVFilter



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilter.html#a632c76418742ad4f4dccbd4db40badd0>`_
    .. c:member:: int flags



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#gadd774ec49e50edf00158248e1bfe4ae6>`_
.. c:function:: const AVFilter * avfilter_get_by_name(const char *name)

    Referenced by: :class:`av.filter.filter.Filter.__cinit__ <av.filter.filter.Filter>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterLink.html>`_
.. c:type:: struct AVFilterLink



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterContext.html>`_
.. c:type:: struct AVFilterContext



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterContext.html#a5cf8ccec878e6d90d0b111b79b2340ee>`_
    .. c:member:: int nb_inputs



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterContext.html#ab8c3b9f8513c9faa5e4ce03b51318b6c>`_
    .. c:member:: int nb_outputs



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga0d21eb00b9f24213bd7c5775393a09fd>`_
.. c:function:: int avfilter_init_str(AVFilterContext *ctx, const char *args)

    Referenced by: :func:`av.filter.context.FilterContext.init`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga8c15af28902395399fe455f6f8236848>`_
.. c:function:: int avfilter_init_dict(AVFilterContext *ctx, AVDictionary **options)

    Referenced by: :func:`av.filter.context.FilterContext.init`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga0ea7664a3ce6bb677a830698d358a179>`_
.. c:function:: void avfilter_free(AVFilterContext *filter)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi.html#ga47ab3c56888ecc8ced403cbf39c35a4d>`_
.. c:function:: const AVClass * avfilter_get_class(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterLink.html>`_
.. c:type:: struct AVFilterLink


    .. c:member:: AVMediaType Type



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterLink.html#a08e3e25929bb29d5f6ef768343ff7f57>`_
    .. c:member:: int w



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterLink.html#a1efd10db9d097b6d27054da46e06e133>`_
    .. c:member:: int h



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterLink.html#a7fc8abe81b13bf1b3aa95c6fee9450e5>`_
    .. c:member:: AVRational sample_aspect_ratio



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterLink.html#aab7e446d3a652438d8a9d7c72a800f5b>`_
    .. c:member:: uint64_t channel_layout



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterLink.html#a677fc96f61176fe6505e3a06452a064e>`_
    .. c:member:: int sample_rate



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterLink.html#abf6e19c9fe982458610f130353f2b6ff>`_
    .. c:member:: int format



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFilterLink.html#a5d947aa9541b02e25db472656d69ea53>`_
    .. c:member:: AVRational time_base


.. c:function:: pyav_get_available_filters()


``libavfilter/buffersink.h``
----------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi__buffersink.html#ga653228f4cbca427c654d844a5fc59cfa>`_
.. c:function:: int av_buffersink_get_frame(AVFilterContext *ctx, AVFrame *frame)

    Referenced by: :func:`av.filter.context.FilterContext.pull`.

``libavfilter/buffersrc.h``
---------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavfi__buffersrc.html#ga786409c3f3910a0ab5fa6b23b4e7399b>`_
.. c:function:: av_warn_unused_result int av_buffersrc_write_frame(AVFilterContext *ctx, const AVFrame *frame)

    Referenced by: :func:`av.filter.context.FilterContext.push`.

``libavformat/avformat.h``
--------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__core.html#gaf2d4e0fee66cef99dea2153933e6b907>`_
.. c:function:: unsigned avformat_version(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__core.html#ga5f48b0398d77d8eeb45d6c649e4e3404>`_
.. c:function:: const char * avformat_configuration(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__core.html#ga160fef784175409f945c70e8931accc8>`_
.. c:function:: const char * avformat_license(void)


.. c:var:: INT64_MIN



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__time.html#gaa11ed202b70e1f52bac809811a910e2a>`_
.. c:var:: AV_TIME_BASE



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#ac736f8f4afc930ca1cda0b43638cc678>`_
.. c:var:: AVSEEK_FLAG_BACKWARD



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#a754de906e0da116c009846547741f869>`_
.. c:var:: AVSEEK_FLAG_BYTE



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#a998c3af80d050fd3d4f6a209fd5a87bc>`_
.. c:var:: AVSEEK_FLAG_ANY



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#ab83ca408a574b40c76f681b616096fc8>`_
.. c:var:: AVSEEK_FLAG_FRAME



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avio_8h.html#a5c9308f296545a8f3b7687d277a6dabc>`_
.. c:var:: AVIO_FLAG_WRITE



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html>`_
.. c:type:: struct AVStream



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html#a6ca823054632821e085377f7d371a2d1>`_
    .. c:member:: int index



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html#a6873ed62f196c24e8bf282609231786f>`_
    .. c:member:: int id



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html#a9db755451f14e2bf590d4b85d82b32e6>`_
    .. c:member:: AVRational time_base



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html#a7c67ae70632c91df8b0f721658ec5377>`_
    .. c:member:: int64_t start_time



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html#a4e04af7a5a4d8298649850df798dd0bc>`_
    .. c:member:: int64_t duration



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html#a4382c3064df1c9eb232ac198dec067f9>`_
    .. c:member:: int64_t nb_frames



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html#ad552f602c2113bd5152cff3c58ba1f9f>`_
    .. c:member:: int64_t cur_dts



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html#a946e1e9b89eeeae4cab8a833b482c1ad>`_
    .. c:member:: AVRational avg_frame_rate



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVStream.html#a3f19c60ac6da237cd10e4d97150c118e>`_
    .. c:member:: AVRational sample_aspect_ratio



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVIOContext.html>`_
.. c:type:: struct AVIOContext



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVIOContext.html#a0204148f407d72becba822b90e8ce9a6>`_
    .. c:member:: int buffer_size



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVIOContext.html#aab6ff8baf51038f1557e817717baccba>`_
    .. c:member:: int write_flag



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVIOContext.html#af719be70947f5f8eebaa5f8ac58fd306>`_
    .. c:member:: int direct



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVIOContext.html#a0e3c41c290b38923880b9cccb669bf78>`_
    .. c:member:: int seekable



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVIOContext.html#aca19990941933d7573a485851c6b798e>`_
    .. c:member:: int max_packet_size



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avio_8h.html#ab48ea445f38c16d407cc56d00be0f6bb>`_
.. c:var:: AVIO_FLAG_DIRECT



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avio_8h.html#a03ea0dfa113a05f4843bbfff69e0cd0a>`_
.. c:var:: AVIO_SEEKABLE_NORMAL

    Referenced by: :class:`av.container.core.ContainerProxy.__init__ <av.container.core.ContainerProxy>`.

.. c:var:: SEEK_SET


.. c:var:: SEEK_CUR


.. c:var:: SEEK_END



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avio_8h.html#a427ff2a881637b47ee7d7f9e368be63f>`_
.. c:var:: AVSEEK_SIZE



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/aviobuf_8c.html#a853f5149136a27ffba3207d8520172a5>`_
.. c:function:: AVIOContext * avio_alloc_context(unsigned char *buffer, int buffer_size, int write_flag, void *opaque, int(*read_packet)

    Referenced by: :class:`av.container.core.ContainerProxy.__init__ <av.container.core.ContainerProxy>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVInputFormat.html>`_
.. c:type:: struct AVInputFormat



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVInputFormat.html#a1b30f6647d0c2faf38ba8786d7c3a838>`_
    .. c:member:: int flags



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVProbeData.html>`_
.. c:type:: struct AVProbeData



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVProbeData.html#a30309e4de25c1a411c635eab767e1e53>`_
    .. c:member:: int buf_size



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#gad8a1268228fff3aeae0aeaa99a767a24>`_
.. c:function:: AVInputFormat * av_probe_input_format(AVProbeData *pd, int is_opened)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOutputFormat.html>`_
.. c:type:: struct AVOutputFormat



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOutputFormat.html#a1354a9c8542b1b698157218336bd4754>`_
    .. c:member:: AVCodecID video_codec



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOutputFormat.html#a2e4fff0aa061984d586ea08ecad96141>`_
    .. c:member:: AVCodecID audio_codec



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOutputFormat.html#adc8b4d7a5f6610e1816dd522e362217c>`_
    .. c:member:: AVCodecID subtitle_codec



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOutputFormat.html#aad55a00e728a020c1dcfaaf695320445>`_
    .. c:member:: int flags



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#a752cce390d480521919aa5d8be24ac0b>`_
.. c:var:: AVFMT_NOFILE

    Referenced by: :func:`av.container.output.OutputContainer.close`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#af7899d15bd762258202bdec2035d8fc8>`_
.. c:var:: AVFMT_NEEDNUMBER


.. c:var:: AVFMT_RAWPICTURE



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#ab203c7b734e9c31b7c37d34f6e2c6aef>`_
.. c:var:: AVFMT_GLOBALHEADER

    Referenced by: :func:`av.container.output.OutputContainer.add_stream`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#ae4418d32b17890be22da9c5f95087168>`_
.. c:var:: AVFMT_NOTIMESTAMPS



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#a4d9f21e76a3bf919c74ea40957ef21a7>`_
.. c:var:: AVFMT_VARIABLE_FPS



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#a21abb57f90931c92c853e696cc1c358c>`_
.. c:var:: AVFMT_NODIMENSIONS



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#a1500ed92d07addf13d1e9dfd0fff6672>`_
.. c:var:: AVFMT_NOSTREAMS



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#a3b9a2012b993edb9e2ba3db6d55db1ae>`_
.. c:var:: AVFMT_ALLOW_FLUSH



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#a918dc7abf0d4f7abd36a2ea2a594feaf>`_
.. c:var:: AVFMT_TS_NONSTRICT



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#ac5fdea71141dcc30346a57df75cf408e>`_
.. c:var:: AVFMT_FLAG_CUSTOM_IO



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/avformat_8h.html#a69e2c8bc119c0245ff6092f9db4d12ae>`_
.. c:var:: AVFMT_FLAG_GENPTS

    Referenced by: :class:`av.container.core.ContainerProxy.__init__ <av.container.core.ContainerProxy>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#ga85cab6fb4038a82d90b4adea8c253943>`_
.. c:function:: int av_probe_input_buffer(AVIOContext *pb, AVInputFormat **fmt, const char *url, void *logctx, unsigned int offset, unsigned int max_probe_size)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#ga7d2f532c6653c2419b17956712fdf3da>`_
.. c:function:: AVInputFormat * av_find_input_format(const char *short_name)

    Referenced by: :class:`av.format.ContainerFormat.__cinit__ <av.format.ContainerFormat>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFormatContext.html>`_
.. c:type:: struct AVFormatContext



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFormatContext.html#a0b748d924898b08b89ff4974afd17285>`_
    .. c:member:: int nb_streams


    .. c:member:: char filename



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFormatContext.html#a2590129e00adfa726ab2033a10e905e9>`_
    .. c:member:: int64_t start_time



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFormatContext.html#ad0ea78ac48f5bb0a15a15c1c472744d9>`_
    .. c:member:: int64_t duration



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFormatContext.html#a972a02b9e3b542a426e323a8f8e3ea41>`_
    .. c:member:: int bit_rate



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFormatContext.html#a32379cc371463b235d54235d4af06a15>`_
    .. c:member:: int flags



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVFormatContext.html#a4d860662c014f88277c8f20e238fa694>`_
    .. c:member:: int64_t max_analyze_duration



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__core.html#gac7a91abf2f59648d995894711f070f62>`_
.. c:function:: AVFormatContext * avformat_alloc_context(void)

    Referenced by: :class:`av.container.core.ContainerProxy.__init__ <av.container.core.ContainerProxy>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#ga31d601155e9035d5b0e7efedc894ee49>`_
.. c:function:: int avformat_open_input(AVFormatContext **ps, const char *url, AVInputFormat *fmt, AVDictionary **options)

    Referenced by: :class:`av.container.core.ContainerProxy.__init__ <av.container.core.ContainerProxy>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#gae804b99aec044690162b8b9b110236a4>`_
.. c:function:: void avformat_close_input(AVFormatContext **s)

    Referenced by: :class:`av.container.core.ContainerProxy.__dealloc__ <av.container.core.ContainerProxy>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__encoding.html#ga18b7b10bb5b94c4842de18166bc677cb>`_
.. c:function:: av_warn_unused_result int avformat_write_header(AVFormatContext *s, AVDictionary **options)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__encoding.html#ga7f14007e7dc8f481f054b21614dfec13>`_
.. c:function:: int av_write_trailer(AVFormatContext *s)

    Referenced by: :func:`av.container.output.OutputContainer.close`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__encoding.html#ga37352ed2c63493c38219d935e71db6c1>`_
.. c:function:: int av_interleaved_write_frame(AVFormatContext *s, AVPacket *pkt)

    Referenced by: :func:`av.container.output.OutputContainer.mux_one`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__encoding.html#gaa85cc1774f18f306cd20a40fc50d0b36>`_
.. c:function:: int av_write_frame(AVFormatContext *s, AVPacket *pkt)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/aviobuf_8c.html#ab1b99c5b70aa59f15ab7cd4cbb40381e>`_
.. c:function:: int avio_open(AVIOContext **s, const char *filename, int flags)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/aviobuf_8c.html#a375f057e315dd2273579555128a070fb>`_
.. c:function:: int64_t avio_size(AVIOContext *s)

    Referenced by: :attr:`av.container.input.InputContainer.size`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__encoding.html#ga8795680bd7489e96eeb5aef5e615cacc>`_
.. c:function:: AVOutputFormat * av_guess_format(const char *short_name, const char *filename, const char *mime_type)

    Referenced by: :class:`av.container.core.ContainerProxy.__init__ <av.container.core.ContainerProxy>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__misc.html#gaa90b4c72d1bbb298e11096d3a09ec7db>`_
.. c:function:: int avformat_query_codec(const AVOutputFormat *ofmt, enum AVCodecID codec_id, int std_compliance)

    Referenced by: :func:`av.container.output.OutputContainer.add_stream`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/aviobuf_8c.html#ad71cada104a5e4365d35d45669ea03ca>`_
.. c:function:: int avio_close(AVIOContext *s)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/aviobuf_8c.html#ae118a1f37f1e48617609ead9910aac15>`_
.. c:function:: int avio_closep(AVIOContext **s)

    Referenced by: :func:`av.container.output.OutputContainer.close`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#gad42172e27cddafb81096939783b157bb>`_
.. c:function:: int avformat_find_stream_info(AVFormatContext *ic, AVDictionary **options)

    Referenced by: :class:`av.container.input.InputContainer.__cinit__ <av.container.input.InputContainer>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__core.html#gadcb0fd3e507d9b58fe78f61f8ad39827>`_
.. c:function:: AVStream * avformat_new_stream(AVFormatContext *s, const AVCodec *c)

    Referenced by: :func:`av.container.output.OutputContainer.add_stream`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/mux_8c.html#a362281b46aba7bbcd154f4a6aa8b64fc>`_
.. c:function:: int avformat_alloc_output_context2(AVFormatContext **avctx, AVOutputFormat *oformat, const char *format, const char *filename)

    Referenced by: :class:`av.container.core.ContainerProxy.__init__ <av.container.core.ContainerProxy>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__core.html#gac2990b13b68e831a408fce8e1d0d6445>`_
.. c:function:: void avformat_free_context(AVFormatContext *s)

    Referenced by: :class:`av.container.core.ContainerProxy.__dealloc__ <av.container.core.ContainerProxy>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__core.html#ga6030789ce395ef543306bbe933619749>`_
.. c:function:: const AVClass * avformat_get_class(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__misc.html#gae2645941f2dc779c307eb6314fd39f10>`_
.. c:function:: void av_dump_format(AVFormatContext *ic, int index, const char *url, int is_output)

    Referenced by: :func:`av.container.core.Container.dumps_format`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#ga4fdb3084415a82e3810de6ee60e46a61>`_
.. c:function:: int av_read_frame(AVFormatContext *s, AVPacket *pkt)

    Referenced by: :func:`av.container.input.InputContainer.demux`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#gaa23f7619d8d4ea0857065d9979c75ac8>`_
.. c:function:: int av_seek_frame(AVFormatContext *s, int stream_index, int64_t timestamp, int flags)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#ga3b40fc8d2fda6992ae6ea2567d71ba30>`_
.. c:function:: int avformat_seek_file(AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags)


.. c:function:: pyav_get_available_formats()


``libavutil/audio_fifo.h``
--------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVAudioFifo.html>`_
.. c:type:: struct AVAudioFifo



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__audiofifo.html#ga74e029e47f7aa99217ad1f315c434875>`_
.. c:function:: void av_audio_fifo_free(AVAudioFifo *af)

    Referenced by: :class:`av.audio.fifo.AudioFifo.__dealloc__ <av.audio.fifo.AudioFifo>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__audiofifo.html#ga9d792394f0615a329aec47847f8f8784>`_
.. c:function:: AVAudioFifo * av_audio_fifo_alloc(enum AVSampleFormat sample_fmt, int channels, int nb_samples)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__audiofifo.html#ga0e7fadeea09c52a96eb4082a9e169bb4>`_
.. c:function:: int av_audio_fifo_write(AVAudioFifo *af, void **data, int nb_samples)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__audiofifo.html#gab256fc29188d91311bd2fbd78eb356af>`_
.. c:function:: int av_audio_fifo_read(AVAudioFifo *af, void **data, int nb_samples)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__audiofifo.html#gaa0a4742ecac52a999e8b4478d27f3b9b>`_
.. c:function:: int av_audio_fifo_size(AVAudioFifo *af)

    Referenced by: :attr:`av.audio.fifo.AudioFifo.samples`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__audiofifo.html#ga2bed2f01fe34228ee8a73617b3177d00>`_
.. c:function:: int av_audio_fifo_space(AVAudioFifo *af)


``libavutil/avutil.h``
----------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__ver.html#ga9a979c78d33d8767b51952f7f5c61541>`_
.. c:function:: unsigned avutil_version(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__ver.html#gaf75e78eac0a55a8c3736f89b018a5687>`_
.. c:function:: const char * avutil_configuration(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__ver.html#ga88957e92f27b9d3fca0ec8cf43303b72>`_
.. c:function:: const char * avutil_license(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__error.html#ga326c3f741a7adb148cdeaad68eea713d>`_
.. c:var:: AV_ERROR_MAX_STRING_SIZE



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__error.html#gab4faa0afdf35076914824200331defff>`_
.. c:var:: AVERROR_EOF


.. c:var:: AVERROR_NOMEM


.. c:var:: ENOMEM


.. c:var:: EAGAIN



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/mathematics_8h.html#ae71449b1cc6e6250b91f539153a7a0d3>`_
.. c:var:: M_PI



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__error.html#gae4bb6f165973d09584e0ec0f335f69ca>`_
.. c:function:: AVERROR()



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__error.html#ga5792b4a2d18d7d9cb0efbcfc335dce24>`_
.. c:function:: int av_strerror(int errnum, char *errbuf, size_t errbuf_size)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__error.html#gac4f6e109c242c81aeee21868d3f35e12>`_
.. c:function:: av_err2str()



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__mem__funcs.html#ga7c4f0fe9fe716121ce05f7170810ce8e>`_
.. c:function:: void * av_malloc(size_t size)

    Referenced by: :class:`av.container.core.ContainerProxy.__init__ <av.container.core.ContainerProxy>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__mem__funcs.html#gaaf38f6d994f5a85854ef47fd98fa6e9a>`_
.. c:function:: void * av_calloc(size_t nmemb, size_t size)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__mem__funcs.html#ga0cc84043ea2167ad005c86e11d0bcdba>`_
.. c:function:: void av_freep(void *ptr)

    Referenced by: :class:`av.audio.frame.AudioFrame.__dealloc__ <av.audio.frame.AudioFrame>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampfmts.html#ga0c3c218e1dd570ad4917c69a35a6c77d>`_
.. c:function:: int av_get_bytes_per_sample(enum AVSampleFormat sample_fmt)

    Referenced by: :attr:`av.audio.format.AudioFormat.bits`, :attr:`av.audio.format.AudioFormat.bytes`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampfmts.html#gaa7368bc4e3a366b688e81938ed55eb06>`_
.. c:function:: int av_samples_get_buffer_size(int *linesize, int nb_channels, int nb_samples, enum AVSampleFormat sample_fmt, int align)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVRational.html>`_
.. c:type:: struct AVRational



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVRational.html#ae9a98c10a301c5e937095105b6f0fdb9>`_
    .. c:member:: int num



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVRational.html#aee46bdac67d965ac0a4204e753f910c3>`_
    .. c:member:: int den



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__time.html#gafd07a13a4ddaa6015275cad6022d9ee3>`_
.. c:var:: AV_TIME_BASE_Q



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__math.html#gaf02994a8bbeaa91d4757df179cbe567f>`_
.. c:function:: int64_t av_rescale_q(int64_t a, AVRational bq, AVRational cq)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__math.html#ga82d40664213508918093822461cc597e>`_
.. c:function:: int64_t av_rescale_rnd(int64_t a, int64_t b, int64_t c, enum AVRounding rnd)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__math.html#gab706bfec9bf56534e02ca9564cb968f6>`_
.. c:function:: int64_t av_rescale_q_rnd(int64_t a, AVRational bq, AVRational cq, enum AVRounding rnd)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__math.html#ga3daf97178dd1b08b5e916be381cd33e4>`_
.. c:function:: int64_t av_rescale(int64_t a, int64_t b, int64_t c)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__mem__funcs.html#ga7c352f4cff02184f005323691375fea9>`_
.. c:function:: char * av_strdup(const char *s)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__opt__set__funcs.html#ga3adf7185c21cc080890a5ec02c2e56b2>`_
.. c:function:: int av_opt_set_int(void *obj, const char *name, int64_t val, int search_flags)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__misc.html#gaf21645cfa855b2caf9699d7dc7b2d08e>`_
.. c:function:: const char * av_get_media_type_string(enum AVMediaType media_type)

    Referenced by: :func:`av.codec.codec.Codec.type`.

``libavutil/channel_layout.h``
------------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#ga3e8a7ab3d4c1ac98b902ab6b00741343>`_
.. c:function:: uint64_t av_get_channel_layout(const char *name)

    Referenced by: :class:`av.audio.layout.AudioLayout.__init__ <av.audio.layout.AudioLayout>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#gac95619abeb32e4a3daa18e3ff3419380>`_
.. c:function:: int av_get_channel_layout_nb_channels(uint64_t channel_layout)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#gacb84f3e93a583e1f84a5283162a606a2>`_
.. c:function:: int64_t av_get_default_channel_layout(int nb_channels)

    Referenced by: :attr:`av.audio.codeccontext.AudioCodecContext.channels`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#ga99d0b5bb80534d13a6cc96336cf9076a>`_
.. c:function:: void av_get_channel_layout_string(char *buf, int buf_size, int nb_channels, uint64_t channel_layout)

    Referenced by: :attr:`av.audio.layout.AudioLayout.name`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#gaf492843360fb4ecee6b5ec4166b04fcd>`_
.. c:function:: uint64_t av_channel_layout_extract_channel(uint64_t channel_layout, int index)

    Referenced by: :class:`av.audio.layout.AudioChannel.__cinit__ <av.audio.layout.AudioChannel>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#gaf9a5e23a9bbf5909f2dc84b25d78e35e>`_
.. c:function:: const char * av_get_channel_name(uint64_t channel)

    Referenced by: :attr:`av.audio.layout.AudioChannel.name`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#gade4b74b99e3fb954b88b0cb8eddb785a>`_
.. c:function:: const char * av_get_channel_description(uint64_t channel)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#ga53d6da2dcd56f5f87c7afd8b33fa15ba>`_
.. c:var:: AV_CH_LAYOUT_MONO



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#gabc6d6651bba254cd0fa2c42a57228e65>`_
.. c:var:: AV_CH_LAYOUT_STEREO

    Referenced by: :func:`av.container.output.OutputContainer.add_stream`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#ga03f59e18b3598aa0cab9ed675c287a36>`_
.. c:var:: AV_CH_LAYOUT_2POINT1



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#ga0bcbe41f2d3214b0a3fd2698ebe0caf9>`_
.. c:var:: AV_CH_LAYOUT_4POINT0



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#gab057e9fd36b7e929d000d663badbafc6>`_
.. c:var:: AV_CH_LAYOUT_5POINT0_BACK



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#gae9da5d6069701241a22f3af19b152662>`_
.. c:var:: AV_CH_LAYOUT_5POINT1_BACK



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#ga0b63b18f49c294bfbc22afa8b59b6685>`_
.. c:var:: AV_CH_LAYOUT_6POINT1



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__channel__mask__c.html#ga2006ce652a95bad74291db52fa346464>`_
.. c:var:: AV_CH_LAYOUT_7POINT1


``libavutil/dict.h``
--------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVDictionary.html>`_
.. c:type:: struct AVDictionary



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__dict.html#ga1bafd682b1fbb90e48a4cc3814b820f7>`_
.. c:function:: void av_dict_free(AVDictionary **m)

    Referenced by: :class:`av.container.input.InputContainer.__cinit__ <av.container.input.InputContainer>`, :class:`av.dictionary._Dictionary.__dealloc__ <av.dictionary._Dictionary>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVDictionaryEntry.html>`_
.. c:type:: struct AVDictionaryEntry



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__dict.html#ga341bbd1ea599dfb0510f419e5272fecc>`_
.. c:var:: AV_DICT_IGNORE_SUFFIX

    Referenced by: :func:`av.dictionary._Dictionary.__iter__`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__dict.html#gae67f143237b2cb2936c9b147aa6dfde3>`_
.. c:function:: AVDictionaryEntry * av_dict_get(const AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags)

    Referenced by: :func:`av.dictionary._Dictionary.__getitem__`, :func:`av.dictionary._Dictionary.__iter__`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__dict.html#ga8d9c2de72b310cef8e6a28c9cd3acbbe>`_
.. c:function:: int av_dict_set(AVDictionary **pm, const char *key, const char *value, int flags)

    Referenced by: :func:`av.dictionary._Dictionary.__delitem__`, :func:`av.dictionary._Dictionary.__setitem__`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__dict.html#gad21456d6601aa096c7c78dce8848d50a>`_
.. c:function:: int av_dict_count(const AVDictionary *m)

    Referenced by: :func:`av.dictionary._Dictionary.__len__`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__dict.html#ga59a6372b124b306e3a2233723c5cdc78>`_
.. c:function:: int av_dict_copy(AVDictionary **dst, const AVDictionary *src, int flags)

    Referenced by: :class:`av.container.input.InputContainer.__cinit__ <av.container.input.InputContainer>`.

``libavutil/frame.h``
---------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#gac700017c5270c79c1e1befdeeb008b2f>`_
.. c:function:: AVFrame * av_frame_alloc(void)

    Referenced by: :class:`av.frame.Frame.__cinit__ <av.frame.Frame>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#ga979d73f3228814aee56aeca0636e37cc>`_
.. c:function:: void av_frame_free(AVFrame **frame)

    Referenced by: :class:`av.frame.Frame.__dealloc__ <av.frame.Frame>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#ga88b0ecbc4eb3453eef3fbefa3bddeb7c>`_
.. c:function:: int av_frame_ref(AVFrame *dst, const AVFrame *src)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#ga46d6d32f6482a3e9c19203db5877105b>`_
.. c:function:: AVFrame * av_frame_clone(const AVFrame *src)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#ga0a2b687f9c1c5ed0089b01fd61227108>`_
.. c:function:: void av_frame_unref(AVFrame *frame)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#ga709e62bc2917ffd84c5c0f4e1dfc48f7>`_
.. c:function:: void av_frame_move_ref(AVFrame *dst, AVFrame *src)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#ga6b1acbfa82c79bf7fd78d868572f0ceb>`_
.. c:function:: int av_frame_get_buffer(AVFrame *frame, int align)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#ga3ba755bada5c3c8883361ef43fb5fb7a>`_
.. c:function:: int av_frame_is_writable(AVFrame *frame)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#gadd5417c06f5a6b419b0dbd8f0ff363fd>`_
.. c:function:: int av_frame_make_writable(AVFrame *frame)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#gaec4e92f6e1e75ffaf76e07586fb0c9ed>`_
.. c:function:: int av_frame_copy(AVFrame *dst, const AVFrame *src)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__frame.html#gab9b275b114ace0db95c5796bc71f3012>`_
.. c:function:: int av_frame_copy_props(AVFrame *dst, const AVFrame *src)


``libavutil/imgutils.h``
------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__picture.html#ga841e0a89a642e24141af1918a2c10448>`_
.. c:function:: int av_image_alloc(uint8_t *pointers[4], int linesizes[4], int w, int h, enum AVPixelFormat pix_fmt, int align)


``libavutil/log.h``
-------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVClass.html>`_
.. c:type:: struct AVClass



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVClass.html#a5fc161d93a0d65a608819da20b7203ba>`_
    .. c:member:: AVClassCategory category



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVClass.html#a88948c8a7c6515181771615a54a808bf>`_
    .. c:member:: int parent_log_context_offset



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__log.html#gabd386ffd4b27637cf34e98d5d1a6e8ae>`_
.. c:function:: void av_log(void *avcl, int level, const char *fmt,...)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__log.html#ga14034761faf581a8b9ed6ef19b313708>`_
.. c:function:: void av_log_set_callback(void(*callback)


``libavutil/opt.h``
-------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOption_default_val.html>`_
.. c:type:: struct AVOption_default_val


    .. c:member:: int64_t i64


    .. c:member:: double dbl


    .. c:member:: AVRational q



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOption.html>`_
.. c:type:: struct AVOption



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOption.html#af50f9be082b4b1cf0d76b1e24face3bc>`_
    .. c:member:: AVOptionType type



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOption.html#a0ab0d209c04b72cfd72808c9e9e46a46>`_
    .. c:member:: int offset



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOption.html#a7ba37f55aa9293bd60a63fe3710cfd60>`_
    .. c:member:: AVOption_default_val default_val



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOption.html#aaf1937648549dce7a4be35268a359a19>`_
    .. c:member:: double min



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOption.html#a078ff8d3707143690d7d59d87d4706f4>`_
    .. c:member:: double max



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVOption.html#ae6b670af4b2c7819c35437cab61c2745>`_
    .. c:member:: int flags


``libavutil/pixdesc.h``
-----------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVComponentDescriptor.html>`_
.. c:type:: struct AVComponentDescriptor



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVComponentDescriptor.html#a3508603e4efd7a1fcecab1da7b9ae4c2>`_
    .. c:member:: int plane



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVComponentDescriptor.html#a964c2627fc25fef179ea006c88becf5b>`_
    .. c:member:: int step



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVComponentDescriptor.html#a1ad69ad2ebfc3045bf56fd8a98aa4439>`_
    .. c:member:: int offset



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVComponentDescriptor.html#a10c6ab5726f0f666cbe801b5308960aa>`_
    .. c:member:: int shift



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVComponentDescriptor.html#ae504ab46ea3719e9930f91491af593dc>`_
    .. c:member:: int depth



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPixFmtDescriptor.html>`_
.. c:type:: struct AVPixFmtDescriptor



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPixFmtDescriptor.html#ae83de203f97288c9f4070212a5eac5de>`_
    .. c:member:: uint8_t nb_components



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPixFmtDescriptor.html#a4abca4534188ff94627e88c0d8362058>`_
    .. c:member:: uint8_t log2_chroma_w



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPixFmtDescriptor.html#abea8ed308fe00644fc066a00018afa95>`_
    .. c:member:: uint8_t log2_chroma_h



    .. rst-class:: ffmpeg-quicklink

        `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structAVPixFmtDescriptor.html#a5047d1e6b045f637345dbc305bf4357d>`_
    .. c:member:: uint8_t flags



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/pixdesc_8h.html#afe0c3e8aef5173de28bbdaea4298f5f0>`_
.. c:function:: const AVPixFmtDescriptor * av_pix_fmt_desc_get(enum AVPixelFormat pix_fmt)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/pixdesc_8h.html#a110de37b82f3a2602d5c6a3e4babc7a8>`_
.. c:function:: const AVPixFmtDescriptor * av_pix_fmt_desc_next(const AVPixFmtDescriptor *prev)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/pixdesc_8h.html#ab92e2a8a9b58c982560c49df9f01e47e>`_
.. c:function:: const char * av_get_pix_fmt_name(enum AVPixelFormat pix_fmt)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/pixdesc_8h.html#a925ef18d69c24c3be8c53d5a7dc0660e>`_
.. c:function:: enum AVPixelFormat av_get_pix_fmt(const char *name)

    Referenced by: :attr:`av.video.codeccontext.VideoCodecContext.pix_fmt`.

``libavutil/rational.h``
------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__math__rational.html#ga4fd9c0b8e663cf3d55e89fbc6ce71602>`_
.. c:function:: int av_reduce(int *dst_num, int *dst_den, int64_t num, int64_t den, int64_t max)

    Referenced by: :attr:`av.video.codeccontext.VideoCodecContext.display_aspect_ratio`.

``libavutil/samplefmt.h``
-------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampfmts.html#ga655c989b749667468e5e839e26fe63db>`_
.. c:function:: enum AVSampleFormat av_get_sample_fmt(const char *name)

    Referenced by: :class:`av.audio.format.AudioFormat.__cinit__ <av.audio.format.AudioFormat>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampfmts.html#ga31b9d149b2de9821a65f4f5612970838>`_
.. c:function:: const char * av_get_sample_fmt_name(enum AVSampleFormat sample_fmt)

    Referenced by: :attr:`av.audio.format.AudioFormat.name`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampfmts.html#ga0c3c218e1dd570ad4917c69a35a6c77d>`_
.. c:function:: int av_get_bytes_per_sample(enum AVSampleFormat sample_fmt)

    Referenced by: :attr:`av.audio.format.AudioFormat.bits`, :attr:`av.audio.format.AudioFormat.bytes`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampfmts.html#ga06ba8a64dc4382c422789a5d0b6bf592>`_
.. c:function:: int av_sample_fmt_is_planar(enum AVSampleFormat sample_fmt)

    Referenced by: :attr:`av.audio.format.AudioFormat.is_packed`, :attr:`av.audio.format.AudioFormat.is_planar`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampfmts.html#ga7817ec0eff4dc6fc0962f31e6d138bca>`_
.. c:function:: enum AVSampleFormat av_get_packed_sample_fmt(enum AVSampleFormat sample_fmt)

    Referenced by: :attr:`av.audio.format.AudioFormat.packed`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampfmts.html#ga82caf838259d95cc6c4fd87633bb0e19>`_
.. c:function:: enum AVSampleFormat av_get_planar_sample_fmt(enum AVSampleFormat sample_fmt)

    Referenced by: :attr:`av.audio.format.AudioFormat.planar`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampmanip.html#ga4db4c77f928d32c7d8854732f50b8c04>`_
.. c:function:: int av_samples_alloc(uint8_t **audio_data, int *linesize, int nb_channels, int nb_samples, enum AVSampleFormat sample_fmt, int align)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampfmts.html#gaa7368bc4e3a366b688e81938ed55eb06>`_
.. c:function:: int av_samples_get_buffer_size(int *linesize, int nb_channels, int nb_samples, enum AVSampleFormat sample_fmt, int align)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampmanip.html#ga673254a62fa75dab3211caf17c73c6eb>`_
.. c:function:: int av_samples_fill_arrays(uint8_t **audio_data, int *linesize, const uint8_t *buf, int nb_channels, int nb_samples, enum AVSampleFormat sample_fmt, int align)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lavu__sampmanip.html#ga6f287e5c4f426a8be8a8b5b8f708a05c>`_
.. c:function:: int av_samples_set_silence(uint8_t **audio_data, int offset, int nb_samples, int nb_channels, enum AVSampleFormat sample_fmt)


``libswresample/swresample.h``
------------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#gaed39c2153a1e26b4ef656ec8c765a2e3>`_
.. c:function:: unsigned swresample_version(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#gad602fde7a824753d5adc57e7f1372e27>`_
.. c:function:: const char * swresample_configuration(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#ga29c5657b18632e206a99d1ae27225499>`_
.. c:function:: const char * swresample_license(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structSwrContext.html>`_
.. c:type:: struct SwrContext



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#gad7f29022726c871aadf935281a9813bc>`_
.. c:function:: struct SwrContext * swr_alloc_set_opts(struct SwrContext *s, int64_t out_ch_layout, enum AVSampleFormat out_sample_fmt, int out_sample_rate, int64_t in_ch_layout, enum AVSampleFormat in_sample_fmt, int in_sample_rate, int log_offset, void *log_ctx)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#gaa5bb6cab830146efa8c760fa66ee582a>`_
.. c:function:: int swr_convert(struct SwrContext *s, uint8_t **out, int out_count, const uint8_t **in, int in_count)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#ga5121a5a7890a2d23b72dc871dd0ebb06>`_
.. c:function:: int64_t swr_get_delay(struct SwrContext *s, int64_t base)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#gaf58c4ff10f73d74bdab8e5aa7193147c>`_
.. c:function:: struct SwrContext * swr_alloc(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#gae173e8ed91717700471a1dcd06f00f67>`_
.. c:function:: int swr_init(struct SwrContext *s)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#ga818f7d78b1ad7d8d5b70de374b668c34>`_
.. c:function:: void swr_free(struct SwrContext **s)

    Referenced by: :class:`av.audio.resampler.AudioResampler.__dealloc__ <av.audio.resampler.AudioResampler>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__lswr.html#gaa4bf1048740dfc08d68aba9f1b4db22e>`_
.. c:function:: void swr_close(struct SwrContext *s)

    Referenced by: :class:`av.audio.resampler.AudioResampler.__dealloc__ <av.audio.resampler.AudioResampler>`.

``libswscale/swscale.h``
------------------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gac879a3ada8130d32ba02a9265bfef253>`_
.. c:function:: unsigned swscale_version(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gaaee057c84b44975856aa26e7bb0decce>`_
.. c:function:: const char * swscale_configuration(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#ga985798b99929665a4dcecf661d45de72>`_
.. c:function:: const char * swscale_license(void)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structSwsContext.html>`_
.. c:type:: struct SwsContext



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structSwsFilter.html>`_
.. c:type:: struct SwsFilter



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#ga26b45a2c6df7c1637feab34fbb21a9bb>`_
.. c:var:: SWS_BILINEAR



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#ga02a4ee9d3c158e842941873d2cf83b9f>`_
.. c:var:: SWS_BICUBIC



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gab5d1f9b6f50c155496b358d348ed6f36>`_
.. c:var:: SWS_CS_ITU709

    Referenced by: :func:`av.video.frame.VideoFrame.reformat`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gaae1a28de2fd6fdd21a082bcc10ce6cb9>`_
.. c:var:: SWS_CS_FCC

    Referenced by: :func:`av.video.frame.VideoFrame.reformat`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gaf9de144a406b66c68bd29cdcaefaeee5>`_
.. c:var:: SWS_CS_ITU601

    Referenced by: :func:`av.video.frame.VideoFrame.reformat`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gab3795e86c9f475f206a187d937c7f4fa>`_
.. c:var:: SWS_CS_ITU624



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gac7287919a348578d8452c42c03d65042>`_
.. c:var:: SWS_CS_SMPTE170M

    Referenced by: :func:`av.video.frame.VideoFrame.reformat`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#ga8a066eae69a34d9d60c73c40628094e4>`_
.. c:var:: SWS_CS_SMPTE240M

    Referenced by: :func:`av.video.frame.VideoFrame.reformat`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#ga1867c2c57f3c0d18fa72592e30e7d3c2>`_
.. c:var:: SWS_CS_DEFAULT

    Referenced by: :func:`av.video.frame.VideoFrame.reformat`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gaf360d1a9e0e60f906f74d7d44f9abfdd>`_
.. c:function:: struct SwsContext * sws_getContext(int srcW, int srcH, enum AVPixelFormat srcFormat, int dstW, int dstH, enum AVPixelFormat dstFormat, int flags, SwsFilter *srcFilter, SwsFilter *dstFilter, const double *param)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gae531c9754c9205d90ad6800015046d74>`_
.. c:function:: int sws_scale(struct SwsContext *c, const uint8_t *const srcSlice[], const int srcStride[], int srcSliceY, int srcSliceH, uint8_t *const dst[], const int dstStride[])



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gad3af0ca76f071dbe0173444db9882932>`_
.. c:function:: void sws_freeContext(struct SwsContext *swsContext)

    Referenced by: :class:`av.video.reformatter.VideoReformatter.__dealloc__ <av.video.reformatter.VideoReformatter>`.


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gadffa09f208a3eba7fa3a6b1f74ab77f7>`_
.. c:function:: struct SwsContext * sws_getCachedContext(struct SwsContext *context, int srcW, int srcH, enum AVPixelFormat srcFormat, int dstW, int dstH, enum AVPixelFormat dstFormat, int flags, SwsFilter *srcFilter, SwsFilter *dstFilter, const double *param)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#gac271c2aa3dd5569c59f018eaf914bbc0>`_
.. c:function:: const int * sws_getCoefficients(int colorspace)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#ga098dc4b69a97b616fc35791aec249ff1>`_
.. c:function:: int sws_getColorspaceDetails(struct SwsContext *c, int **inv_table, int *srcRange, int **table, int *dstRange, int *brightness, int *contrast, int *saturation)



.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/group__libsws.html#ga541bdffa8149f5f9203664f955faa040>`_
.. c:function:: int sws_setColorspaceDetails(struct SwsContext *c, const int inv_table[4], int srcRange, const int table[4], int dstRange, int brightness, int contrast, int saturation)


``stdarg.h``
------------


.. rst-class:: ffmpeg-quicklink

    `FFmpeg Docs <https://ffmpeg.org/doxygen/trunk/structva_list.html>`_
.. c:type:: struct va_list


