MKVAttachment¶
MKVAttachment classes are used to represent attachment files within an MKV or to be used in an
MKV.
Examples
Below are some basic examples of how the MKVAttachment objects can be used.
Create a new MKVAttachment and add it to an MKVFile.
>>> from pymkv import MKVAttachment
>>> attachment = MKVAttachment('path/to/attachment.jpg', name='NAME')
>>> attachment.description = 'DESCRIPTION'
Attachments can also be added directly to an MKVFile.
>>> from pymkv import MKVFile
>>> mkv = MKVFile('path/to/file.mkv')
>>> mkv.add_attachment('path/to/other/attachment.png')
Now, the MKV can be muxed with both attachments.
>>> mkv.add_attachment(attachment)
>>> mkv.mux('path/to/output.mkv')
-
class pymkv.MKVAttachment(file_path: str, name: str | None =
None, description: str | None =None, attach_once: bool | None =False)¶ A class that represents an MKV attachment for an
MKVFileobject.- Parameters:¶
- file_path : str¶
The path to the attachment file.
- name : str, optional¶
The name that will be given to the attachment when muxed into a file.
- description : str, optional¶
The description that will be given to the attachment when muxed into a file.
- attach_once : bool, optional¶
Determines if the attachment should be added to all split files or only the first. Default is False, which will attach to all files.
- description¶
The description that will be given to the attachment when muxed into a file.
- Type:¶
str
- attach_once¶
Determines if the attachment should be added to all split files or only the first. Default is False, which will attach to all files.
- Type:¶
bool
- size¶
The size of the attachment in bytes, as reported by the file it was read from. It is
Nonefor an attachment built from a local path, since that attachment is not part of an MKV yet.- Type:¶
int | None
- property attach_once : bool | None¶
Get whether the attachment should be added only to the first split file.
- property description : str | None¶
Get the description of the attachment.
- property file_path : str¶
The path to the attachment file.
For an attachment read out of an MKV this is the containing file, and the path cannot be changed. Replace such an attachment with
remove_attachment()followed byadd_attachment().
- property mime_type : str | None¶
Get the MIME type of the attachment.
- property name : str | None¶
Get the name of the attachment.
- property size : int | None¶
Get the size of the attachment in bytes.
The value comes from the file the attachment was read from, not from
file_path, which points at the containing MKV for an attachment read out of one.It stays None for an attachment built from a local path, including after
mux(): this object is never refreshed from the output. Load the muxed file into a newMKVFileto read the sizes it ended up with.
- property source_file : str | None¶
Get the path to the source file containing the attachment.