Skip to content

Commit 3ead9ac

Browse files
committed
Add RFC 9559 MIME types for Matroska audiovisual container formats
1 parent 2e95c5b commit 3ead9ac

File tree

4 files changed

+21
-0
lines changed

4 files changed

+21
-0
lines changed

Doc/whatsnew/3.14.rst

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,19 @@ json
352352
(Contributed by Trey Hunner in :gh:`122873`.)
353353

354354

355+
mimetypes
356+
---------
357+
358+
* Add :rfc:`9559` MIME types for Matroska audiovisual data container
359+
structures, containing:
360+
361+
* audio with no video: ``audio/matroska`` (``.mka``)
362+
* video: ``video/matroska`` (``.mkv``)
363+
* stereoscopic video: ``video/matroska-3d`` (``.mk3d``)
364+
365+
(Contributed by Hugo van Kemenade in :gh:`89416`.)
366+
367+
355368
operator
356369
--------
357370

Lib/mimetypes.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -534,6 +534,7 @@ def _default_mime_types():
534534
'.ass' : 'audio/aac',
535535
'.au' : 'audio/basic',
536536
'.snd' : 'audio/basic',
537+
'.mka' : 'audio/matroska',
537538
'.mp3' : 'audio/mpeg',
538539
'.mp2' : 'audio/mpeg',
539540
'.opus' : 'audio/opus',
@@ -595,6 +596,8 @@ def _default_mime_types():
595596
'.sgml' : 'text/x-sgml',
596597
'.vcf' : 'text/x-vcard',
597598
'.xml' : 'text/xml',
599+
'.mkv' : 'video/matroska',
600+
'.mk3d' : 'video/matroska-3d',
598601
'.mp4' : 'video/mp4',
599602
'.mpeg' : 'video/mpeg',
600603
'.m1v' : 'video/mpeg',

Lib/test/test_mimetypes.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,7 @@ def check_extensions():
231231
self.assertEqual(mimetypes.guess_extension('application/x-texinfo'), '.texi')
232232
self.assertEqual(mimetypes.guess_extension('application/x-troff'), '.roff')
233233
self.assertEqual(mimetypes.guess_extension('application/xml'), '.xsl')
234+
self.assertEqual(mimetypes.guess_extension('audio/matroska'), '.mka')
234235
self.assertEqual(mimetypes.guess_extension('audio/mpeg'), '.mp3')
235236
self.assertEqual(mimetypes.guess_extension('image/avif'), '.avif')
236237
self.assertEqual(mimetypes.guess_extension('image/webp'), '.webp')
@@ -241,6 +242,8 @@ def check_extensions():
241242
self.assertEqual(mimetypes.guess_extension('text/plain'), '.txt')
242243
self.assertEqual(mimetypes.guess_extension('text/rtf'), '.rtf')
243244
self.assertEqual(mimetypes.guess_extension('text/x-rst'), '.rst')
245+
self.assertEqual(mimetypes.guess_extension('video/matroska'), '.mkv')
246+
self.assertEqual(mimetypes.guess_extension('video/matroska-3d'), '.mk3d')
244247
self.assertEqual(mimetypes.guess_extension('video/mpeg'), '.mpeg')
245248
self.assertEqual(mimetypes.guess_extension('video/quicktime'), '.mov')
246249

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Add :rfc:`9559` MIME types for Matroska audiovisual container formats. Patch
2+
by Hugo van Kemenade.

0 commit comments

Comments
 (0)