Skip to content

Expose Matroska attachments; prepare 3.1.0 - #3

Merged
aagedal merged 2 commits into
mainfrom
t3/mkv-attachments
Oct 30, 2026
Merged

aagedal merged 2 commits into
mainfrom
t3/mkv-attachments

Conversation

@aagedal

@aagedal aagedal commented Oct 30, 2026

Copy link
Copy Markdown
Owner

Summary

  • Parse Matroska Attachments > AttachedFile into a new public VideoMetadata.attachments: [AttachmentStream] (file name, MIME type, description, payload size, UID).
  • Incomplete entries (missing name, MIME type or data) are skipped, as ffmpeg does, so index matches ffmpeg's t:<n> attachment stream numbering.
  • Prepare the 3.1.0 release (minor bump for the new API): CLI version, README, changelog, release checklist.

Motivation: Aagedal Media Converter needs the attachment count to preserve ASS subtitle fonts when remuxing MKVs with metadata stripped (aagedal/Aagedal-Media-Converter#64). -map_metadata -1 drops the filename/mimetype tags the Matroska muxer requires, so they must be restored per attachment index.

Testing

  • New testMKVAttachmentsDecode (synthetic EBML, including a skipped incomplete entry).
  • Checked against an ffmpeg-muxed MKV with three font attachments: names, MIME types and sizes match ffmpeg.
  • Scripts/verify-release.sh 3.1.0 passed locally (1679 library tests, CLI tests, archive build).

🤖 Generated with Claude Code

aagedal and others added 2 commits October 30, 2026 16:29
Fansub MKVs ship the fonts used by ASS subtitles as AttachedFile
elements. Parse them so callers can preserve and address the
attachments (ffmpeg t:<n> streams) when remuxing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@aagedal
aagedal merged commit b81876a into main Oct 30, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant