1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
from fractions import Fraction
from typing import Sequence, TypeVar, Union, overload
from av.audio import _AudioCodecName
from av.audio.stream import AudioStream
from av.packet import Packet
from av.stream import AttachmentStream, DataStream, Stream
from av.subtitles.stream import SubtitleStream
from av.video import _VideoCodecName
from av.video.stream import VideoStream
from .core import Container
_StreamT = TypeVar("_StreamT", bound=Stream)
class OutputContainer(Container):
def __enter__(self) -> OutputContainer: ...
@overload
def add_stream(
self,
codec_name: _AudioCodecName,
rate: int | None = None,
options: dict[str, str] | None = None,
**kwargs,
) -> AudioStream: ...
@overload
def add_stream(
self,
codec_name: _VideoCodecName,
rate: Fraction | int | None = None,
options: dict[str, str] | None = None,
**kwargs,
) -> VideoStream: ...
@overload
def add_stream(
self,
codec_name: str,
rate: Fraction | int | None = None,
options: dict[str, str] | None = None,
**kwargs,
) -> VideoStream | AudioStream | SubtitleStream: ...
def add_stream_from_template(
self, template: _StreamT, opaque: bool | None = None, **kwargs
) -> _StreamT: ...
def add_attachment(
self, name: str, mimetype: str, data: bytes
) -> AttachmentStream: ...
def add_data_stream(
self, codec_name: str | None = None, options: dict[str, str] | None = None
) -> DataStream: ...
def start_encoding(self) -> None: ...
def close(self) -> None: ...
def mux(self, packets: Packet | Sequence[Packet]) -> None: ...
def mux_one(self, packet: Packet) -> None: ...
@property
def default_video_codec(self) -> str: ...
@property
def default_audio_codec(self) -> str: ...
@property
def default_subtitle_codec(self) -> str: ...
@property
def supported_codecs(self) -> set[str]: ...
|