diff --git a/av/audio/resampler.pyi b/av/audio/resampler.pyi index 80c16cf08..6314fddfa 100644 --- a/av/audio/resampler.pyi +++ b/av/audio/resampler.pyi @@ -11,6 +11,7 @@ class AudioResampler: layout: AudioLayout options: dict[str, str] graph: Graph | None + is_passthrough: bool def __init__( self, diff --git a/av/codec/hwaccel.pyi b/av/codec/hwaccel.pyi index 52242528b..ece8d4f41 100644 --- a/av/codec/hwaccel.pyi +++ b/av/codec/hwaccel.pyi @@ -18,6 +18,8 @@ class HWDeviceType(IntEnum): mediacodec = cast(int, ...) vulkan = cast(int, ...) d3d12va = cast(int, ...) + amf = cast(int, ...) + ohcodec = cast(int, ...) class HWConfigMethod(IntEnum): none = cast(int, ...) @@ -52,6 +54,8 @@ class HWDevice: class HWAccel: options: dict[str, object] + flags: int + allow_software_fallback: bool @property def is_hw_owned(self) -> bool: ... diff --git a/av/error.pyi b/av/error.pyi index 1191d962f..811cc35cc 100644 --- a/av/error.pyi +++ b/av/error.pyi @@ -9,15 +9,16 @@ def err_check(res: int, filename: str | None = None) -> int: ... class FFmpegError(Exception): errno: int | None strerror: str | None - filename: str - log: tuple[int, tuple[int, str, str] | None] - + @property + def filename(self) -> str | None: ... + @property + def log(self) -> tuple[int, str, str] | None: ... def __init__( self, code: int, message: str, filename: str | None = None, - log: tuple[int, tuple[int, str, str] | None] | None = None, + log: tuple[int, str, str] | None = None, ) -> None: ... class LookupError(FFmpegError): ... diff --git a/av/filter/filter.pyi b/av/filter/filter.pyi index 090d4f1d0..dd03d3eef 100644 --- a/av/filter/filter.pyi +++ b/av/filter/filter.pyi @@ -1,8 +1,14 @@ +from .link import FilterPad + class Filter: name: str description: str flags: int + @property + def inputs(self) -> tuple[FilterPad, ...]: ... + @property + def outputs(self) -> tuple[FilterPad, ...]: ... def __init__(self, name: str) -> None: ... filters_available: set[str] diff --git a/av/format.pyi b/av/format.pyi index 369caaeb7..7223bab5e 100644 --- a/av/format.pyi +++ b/av/format.pyi @@ -29,6 +29,10 @@ class ContainerFormat: @property def long_name(self) -> str: ... @property + def input(self) -> ContainerFormat | None: ... + @property + def output(self) -> ContainerFormat | None: ... + @property def is_input(self) -> bool: ... @property def is_output(self) -> bool: ... diff --git a/av/video/format.pyi b/av/video/format.pyi index c63072115..8031a103c 100644 --- a/av/video/format.pyi +++ b/av/video/format.pyi @@ -19,6 +19,7 @@ class VideoFormat: def chroma_height(self, luma_height: int = 0) -> int: ... class VideoFormatComponent: + index: int plane: int bits: int is_alpha: bool diff --git a/av/video/frame.pyi b/av/video/frame.pyi index 8d25e4ce5..1abc8e1d8 100644 --- a/av/video/frame.pyi +++ b/av/video/frame.pyi @@ -87,6 +87,7 @@ class VideoFrame(Frame): ) -> VideoFrame: ... def to_rgb(self, **kwargs: Any) -> VideoFrame: ... def save(self, filepath: str | Path, **options: Any) -> None: ... + def set_image(self, img: Any) -> None: ... def to_image(self, **kwargs): ... def to_ndarray( self, channel_last: bool = False, **kwargs: Any