From 62dd99b4b6268a71a10d06e6913caffa4a2c27de Mon Sep 17 00:00:00 2001 From: laggykiller Date: Mon, 4 Mar 2024 07:00:10 +0800 Subject: [PATCH] Improve subtitle in av.data --- av/codec/codec.pyi | 10 +++++++++- av/codec/context.pyi | 9 ++++++--- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/av/codec/codec.pyi b/av/codec/codec.pyi index a992b6128..572fa3149 100644 --- a/av/codec/codec.pyi +++ b/av/codec/codec.pyi @@ -2,9 +2,12 @@ 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 @@ -41,15 +44,20 @@ 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"]): ... + def __init__(self, name: str, mode: Literal["r", "w"]) -> None: ... + def create(self) -> CodecContext: ... class codec_descriptor: name: str diff --git a/av/codec/context.pyi b/av/codec/context.pyi index e163dd7f4..ee81daae5 100644 --- a/av/codec/context.pyi +++ b/av/codec/context.pyi @@ -1,9 +1,10 @@ -from typing import Any, Iterator, Literal +from typing import Any, Literal from av.enum import EnumFlag, EnumItem -from av.frame import Frame from av.packet import Packet +from .codec import Codec + class ThreadType(EnumFlag): NONE: int FRAME: int @@ -71,7 +72,9 @@ class CodecContext: def open(self, strict: bool = True) -> None: ... def close(self, strict: bool = True) -> None: ... @staticmethod - def create(codec, mode=None) -> CodecContext: ... + def create( + codec: str | Codec, mode: Literal["r", "w"] | None = None + ) -> CodecContext: ... def parse( self, raw_input: bytes | bytearray | memoryview | None = None ) -> list[Packet]: ...