Перейти к содержанию

MediaInfo

Frozen dataclass с метаинформацией о медиафайле.

Метаинформация о медиафайле.

Attributes:

Name Type Description
url str

URL или путь к источнику.

mime_type str

MIME-тип (по сигнатуре или из заголовка).

file_name str

Имя файла.

file_size int | None

Размер в байтах.

width int | None

Ширина кадра (изображение/видео).

height int | None

Высота кадра (изображение/видео).

duration float | None

Длительность в секундах (аудио/видео).

fps float | None

Частота кадров (видео).

sample_rate int | None

Частота дискретизации (аудио), Гц.

bitrate_nominal int | None

Номинальный битрейт из метаданных, кбит/с.

bitrate_avg int | None

Средний битрейт (размер / длительность), кбит/с.

parse_note str

Описание ошибки или предупреждения от парсера.

format Literal['PNG', 'JPEG', 'GIF', 'WEBP', 'MP4', 'AVI', 'MKV', 'WEBM', 'OGG', 'OGV', 'M4A', 'MP3', 'AAC', 'WAV', 'WMA', 'FLAC', 'M3U', 'HLS'] | None

Формат контейнера (по сигнатуре). Для изображений — тип файла (PNG, JPEG, WEBP и т.д.), для аудио/видео — тип контейнера (MP3, WEBM, MKV, OGG и т.д.).

status Literal['ok', 'partial', 'error']

Результат инспекции (задаёт парсер или inspect).

video_codec str | None

Краткий идентификатор видеокодека (например h264, vp8, av1).

video_codec_long str | None

Полное название видеокодека (например H.264/AVC, On2 VP8).

audio_codec str | None

Краткий идентификатор аудиокодека (например aac, mp3, opus).

audio_codec_long str | None

Полное название аудиокодека (например AAC, MP3, Opus).

Attributes

has_dimensions: bool property

True, если известны ширина и высота.

is_image: bool property

True, если MIME-тип относится к изображению.

is_audio: bool property

True, если MIME-тип относится к аудио.

is_video: bool property

True, если MIME-тип относится к видео.

file_size_human: str property

Размер файла в человекочитаемом виде.

default_language: str = 'ru' class-attribute

Methods:

to_dict(exclude: set[str] | None = None) -> dict

Конвертация dataclass в словарь.

Parameters:

Name Type Description Default
exclude set[str] | None

Множество ключей для исключения из результата.

None

Returns:

Type Description
dict

Словарь со всеми полями MediaInfo.

__str__() -> str

Форматированная строка для вывода пользователю.

Использует MediaInfo.default_language (по умолчанию "ru").

__repr__() -> str

Краткое представление для отладки.

Зарегистрировать перевод для языка.

Создаёт или дополняет встроенные переводы. Ключи из labels перезаписывают существующие, остальные берутся из base.

Parameters:

Name Type Description Default
code str

Код языка ("de", "fr", "es" и т.д.).

required
labels dict[str, str]

Словарь {ключ: перевод}. Допустимые ключи перечислены в _LOCAL_LABELS["ru"].

required
base str

Язык-основа для наследования (по умолчанию "en").

'en'