from fractions import Fraction
from typing import Literal
from av.audio.format import AudioFormat
from av.descriptor import Descriptor
from av.enum import EnumFlag
from av.video.format import VideoFormat
from .context import CodecContext
class Properties(EnumFlag):
NONE: int
INTRA_ONLY: int
LOSSY: int
LOSSLESS: int
REORDER: int
BITMAP_SUB: int
TEXT_SUB: int
class Capabilities(EnumFlag):
NONE: int
DARW_HORIZ_BAND: int
DR1: int
HWACCEL: int
DELAY: int
SMALL_LAST_FRAME: int
HWACCEL_VDPAU: int
SUBFRAMES: int
EXPERIMENTAL: int
CHANNEL_CONF: int
NEG_LINESIZES: int
FRAME_THREADS: int
SLICE_THREADS: int
PARAM_CHANGE: int
AUTO_THREADS: int
VARIABLE_FRAME_SIZE: int
AVOID_PROBING: int
HARDWARE: int
HYBRID: int
ENCODER_REORDERED_OPAQUE: int
ENCODER_FLUSH: int
class UnknownCodecError(ValueError): ...
class Codec:
is_decoder: bool
descriptor: Descriptor
name: str
long_name: str
type: Literal["video", "audio", "data", "subtitle", "attachment"]
id: int
frame_rates: list[Fraction] | None
audio_rates: list[int] | None
video_formats: list[VideoFormat] | None
audio_formats: list[AudioFormat] | None
properties: Properties
capabilities: Capabilities
def __init__(self, name: str, mode: Literal["r", "w"]) -> None: ...
def create(self) -> CodecContext: ...
class codec_descriptor:
name: str
options: tuple[int, ...]
codecs_available: set[str]
def dump_codecs() -> None: ...