Matroska

{{short description|Multimedia container open file format}}

{{Multiple issues|

{{Sources exist|date=April 2024}}

{{Primary sources|date=September 2021}}

}}

{{Infobox file format

| name = Matroska

| icon = File:Matroska Logo.svg

| logo =

| extension = .mkv .mk3d .mka .mks

| mime = video/matroska video/matroska-3d audio/matroska{{cite web|url=https://www.iana.org/assignments/media-types/media-types.xhtml|title=Media Types|access-date=August 5, 2024}} application/octet-stream (for .mks)

| extendedfrom = MCF, EBML

| released = {{start date and age|2002|12|06|df=yes}}

| latest_release_version = 1.7.1{{cite web|url=https://github.com/Matroska-Org/libmatroska/releases/tag/release-1.7.1/|date=October 8, 2022|website=github.com|title=Release release-1.7.1 · Matroska-Org/Libmatroska|access-date=February 28, 2023|archive-date=February 28, 2023|archive-url=https://web.archive.org/web/20230228143120/https://github.com/Matroska-Org/libmatroska/releases/tag/release-1.7.1/|url-status=live}}

| latest_release_date = {{start date and age|2022|10|08|df=yes}}

| developer =

| genre = Container format

| container for = Multimedia

| standard = {{IETF RFC|9559}}

| open = Yes

| free = Yes{{cite tech report |publisher=Library of Congress |location=Washington, D.C. |series=Sustainability of Digital Formats |type=Partial draft |title=Matroska Multimedia Container |date=21 December 2015 |url=https://www.loc.gov/preservation/digital/formats/fdd/fdd000342.shtml |access-date=13 December 2021}}

| url = {{URL|https://matroska.org/}}

}}

Matroska (styled Matroška) is a project to create a container format that can hold an unlimited number of video, audio, picture, or subtitle tracks in one file.[https://www.matroska.org/technical/elements.html Matroska v4 element specification] {{Webarchive|url=https://web.archive.org/web/20180204034747/https://www.matroska.org/technical/specs/index.html |date=2018-02-04 }}, Matroska.org. "TrackNumber: The track number as used in the Block Header (using more than 127 tracks is not encouraged, though the design allows an unlimited number)." The Matroska Multimedia Container is similar in concept to other containers like AVI, MP4, or Advanced Systems Format (ASF), but is an open standard.

Matroska file extensions are .mkv for video (which may include subtitles or audio), .mk3d for stereoscopic video, .mka for audio-only files (which may include subtitles), and .mks for subtitles only.{{cite web |url=https://www.matroska.org/technical/guides/faq/index.html#q3 |title=Matroska FAQ - Q3: What file extensions does Matroska use? |website=www.matroska.org |language=en |access-date=2018-07-16 |url-status=dead |archive-date=2019-04-08 |archive-url=https://web.archive.org/web/20190408035211/https://matroska.org/technical/guides/faq/index.html#q3}}

History

The project was announced on 6 December 2002{{cite web |title=Matroska: Older Archives |url=https://www.matroska.org/news/archives2.html |access-date=2020-05-25 |archive-date=2017-08-03 |archive-url=https://web.archive.org/web/20170803012039/https://www.matroska.org/news/archives2.html |url-status=dead }} as a fork of the Multimedia Container Format (MCF), after disagreements between MCF lead developer Lasse Kärkkäinen and soon-to-be Matroska founder Steve Lhomme about the use of the Extensible Binary Meta Language (EBML) instead of a binary format.{{cite newsgroup |title=Re: Proposed Spec Changes |author=Lhomme, Steve |date=2002-12-06 |newsgroup=gmane.comp.video.mcf.devel |url=http://article.gmane.org/gmane.comp.video.mcf.devel/673 |access-date=May 23, 2016 |url-status=dead |archive-url=https://web.archive.org/web/20161011215209/http://article.gmane.org/gmane.comp.video.mcf.devel/673 |archive-date=October 11, 2016}} This coincided with a 6-month coding break by the MCF's lead developer for his military service, during which most of the community quickly migrated to the new project.{{Citation needed|date=March 2010}}

In 2010, it was announced that the WebM audio/video format would be based on a profile of the Matroska container format together with VP8 video and Vorbis audio.[https://www.webmproject.org/about/faq/ Frequently Asked Questions] {{Webarchive|url=https://web.archive.org/web/20210922124446/https://www.webmproject.org/about/faq/ |date=2021-09-22 }}, the WebM project

On 31 October 2014, Microsoft confirmed that Windows 10 would support HEVC and Matroska out of the box, according to a statement from Gabriel Aul, the leader of Microsoft Operating Systems Group's Data and Fundamentals Team.{{cite news |title=HEVC also supported in-box. |author=Gabriel Aul |publisher=Twitter |url=https://twitter.com/GabeAul/status/528401061779107841 |date=October 31, 2014 |access-date=November 3, 2014 |archive-date=December 29, 2020 |archive-url=https://web.archive.org/web/20201229183259/https://twitter.com/GabeAul/status/528401061779107841 |url-status=live }}{{cite news |title=Microsoft: Windows 10 will support the HEVC video compression standard |author=John Callaham |publisher=Windows Central |url=https://www.windowscentral.com/microsoft-windows-10-will-support-hevc-video-standard |date=November 1, 2014 |access-date=2020-05-25 |url-status=live |archive-url=https://web.archive.org/web/20201229181717/https://www.windowscentral.com/microsoft-windows-10-will-support-hevc-video-standard |archive-date=2020-12-29}} Windows 10 Technical Preview Build 9860 added platform level support for HEVC and Matroska.{{cite news |title=Microsoft Confirms MKV File Support in Windows 10 |author=Bogdan Popa |publisher=Softpedia|date=November 3, 2014 |url=https://news.softpedia.com/news/Microsoft-Confirms-MKV-File-Support-in-Windows-10-463791.shtml |access-date=2020-05-25 |url-status=live |archive-date=2017-10-05 |archive-url=https://web.archive.org/web/20171005101533/http://news.softpedia.com/news/Microsoft-Confirms-MKV-File-Support-in-Windows-10-463791.shtml}}{{cite news |title=New build available to the Windows Insider Program |author=Gabe Aul |publisher=Microsoft |url=http://blogs.windows.com/bloggingwindows/2014/11/12/new-build-available-to-the-windows-insider-program/ |date=November 12, 2014 |access-date=November 15, 2014 |url-status=live |archive-url=https://web.archive.org/web/20150303084809/http://blogs.windows.com/bloggingwindows/2014/11/12/new-build-available-to-the-windows-insider-program/ |archive-date=March 3, 2015}}

In October 2024, Matroska was formally specified in and published as {{IETF RFC|9559}}.

Design

{{expand section|date=September 2021}}

The use of EBML allows extension for future format changes. The Matroska team has expressed some of their long-term goals on Doom9.org and Hydrogenaudio forums. Thus, the following are "goals", not necessarily existing features, of Matroska:{{cite web |url=https://matroska.org/what_is_matroska.html |title=What is Matroska? |website=matroska.org |language=en|access-date=2020-05-25 |url-status=live |archive-url=https://web.archive.org/web/20201229181717/https://matroska.org/what_is_matroska.html |archive-date=2020-12-29}}

  • Creating a modern, flexible, extensible, cross-platform multimedia container format
  • Developing robust streaming support (both this format and the WebM subset are streamable){{cite web |title=Streaming |url=https://matroska.org/technical/streaming/index.html |website=matroska.org |access-date=2019-06-30 |url-status=live |archive-url=https://web.archive.org/web/20201229181812/https://matroska.org/technical/streaming.html |archive-date=2020-12-29}}
  • Developing a menu system similar to that of DVDs based on EBML ({{As of|2019|07|lc=1}}, there is only a mostly empty draft){{cite web |title=Menu Specifications |url=https://matroska.org/technical/menu/index.html |website=matroska.org |access-date=30 June 2019 |url-status=live |archive-url=https://web.archive.org/web/20201229181807/https://matroska.org/technical/menu.html |archive-date=29 December 2020}}
  • Developing a set of tools for the creation and editing of Matroska files (MKVToolNix, for example)
  • Developing libraries to allow developers to add Matroska support to their applications (made open source by Matroska developers)
  • Working with hardware manufacturers to include Matroska support in embedded multimedia devices

Development

Matroska is supported by a non-profit organization (association loi 1901) in France,{{cite web |url=https://matroska.org/legal.html |title=Legal Aspect - Matroska |website=matroska.org |access-date=2020-08-01 |url-status=live |archive-date=2020-12-29 |archive-url=https://web.archive.org/web/20201229181802/https://matroska.org/legal.html}} and the specifications are open to everyone. It is a royalty-free open standard that is free to use, and its technical specifications are available for private and commercial use. The Matroska development team licenses its libraries under the LGPL, with parsing and playback libraries available under BSD licenses.

Support

Software supporting Matroska include all ffmpeg/libav-based ones,{{Cite web|url=https://ffmpeg.org/general.html#Supported-File-Formats_002c-Codecs-or-Features|title=General Documentation|website=ffmpeg.org|access-date=2022-11-21|archive-date=2012-01-06|archive-url=https://web.archive.org/web/20120106131336/http://ffmpeg.org/general.html#Supported-File-Formats_002c-Codecs-or-Features|url-status=live}} including, notably, mplayer, mpv, VLC, Foobar2000, Media Player Classic-HC, BS.player, Google Chrome, Mozilla Firefox, Blender, Kdenlive, Handbrake, MKVToolNix as well as YouTube (which uses WebM extensively),{{Cite web|url=https://matroska.org/downloads/third_party.html|title=Third-party applications - Matroska|access-date=2021-05-26|archive-date=2021-04-21|archive-url=https://web.archive.org/web/20210421011702/https://matroska.org/downloads/third_party.html|url-status=live}} and OBS Studio.{{Cite web |title=Audio/Video Formats Guide {{!}} OBS |url=https://obsproject.com/kb/audio-video-formats-guide |access-date=2024-10-01 |website=obsproject.com}}

Outside of ffmpeg, Windows 10 supports Matroska natively as well.{{Cite web|url = https://www.groovypost.com/news/windows-10-native-mkv-flac-support/|title = More on Native Flac and MKV Support in Windows 10|date = 5 January 2015|access-date = 31 October 2021|archive-date = 6 January 2024|archive-url = https://web.archive.org/web/20240106030205/https://www.groovypost.com/news/windows-10-native-mkv-flac-support/|url-status = live}} Earlier versions relied on codec packs (like K-Lite Codec Pack or Combined Community Codec Pack) to integrate ffmpeg (via ffdshow) and other additions into Windows' native DirectShow.

Apple's native QuickTime player for macOS notably lacks support.

See also

{{Portal|Free and open-source software}}

References

{{reflist}}