Category: 

What is MKV?

Article Details
  • Written By: R. Kayne
  • Edited By: O. Wallace
  • Last Modified Date: 07 September 2016
  • Copyright Protected:
    2003-2016
    Conjecture Corporation
  • Print this Article
Free Widgets for your Site/Blog
In late 19th-century London, mail was delivered to residential addresses up to twelve times each day.   more...

September 28 ,  1924 :  Two US military planes complete the first flights around the world.  more...

Matroska (MK) is an open source multimedia container format that can hold a number of different file types including video, audio and subtitle files. Movie and television programs use the extension .MKV, indicating the presence of video. If the container holds only audio files, MKA is used; while subtitles alone are indicated by use of MKS. Matroska competes with other container formats including AVI, MP4, and ASF to name a few, however, MKV has some significant advantages and is more likely to be implemented in open source software.

Matroska development is based on Extensible Binary Meta Language (EBML), a relative of XML. The advantages MKV has over some other container formats include faster seeking within the file, the ability to include chapters and menus like DVDs, selectable audio streams to support different language tracks, and better error recovery. "Soft subtitles" are also supported, or the ability to turn subtitles off or on.

Additionally, unlike older container formats such as Microsoft®’s Audio Video Interleave (AVI), Matroska supports virtually any audio format. This includes the open source Ogg Vorbis, an audio compression format that can also be used to embed lossless audio such as FLAC (Free Lossless Audio Codec) files. Variable bitrate audio encoding and variable framerate video encoding are also supported by Matroska. Its foundational EBML coding also ensures it will be able to keep up with advancing needs while remaining backward compatible with legacy MKV players.

Ad

One video player that supports MKV files right out of the box is the open source, cross-platform VLC player. Matroska’s own CorePlayer Pro and Mobile are also available for free from the Matroska website. Microsoft® players that support DirectShow® such as MediaPlayer® and MediaClassic® should also play MKV files, providing a Combined Community Codec Pack (CCCP) is installed, which is also free. The downloads page on the Matroska site includes information on and links to these and other players and plugins for various operating systems.

The goal of Matroska developers is that it become widely adopted as a cross-platform, universal, multimedia container format. Progress towards this end can be measured by increasing hardware compatibility. Support for MKV files is growing, with select Bluray® players and select high-definition televisions supporting streaming MKV files. Samsung and LG are two manufacturers that provide MKV support on some of their Bluray® and HDTVs. Systems-on-a-chip manufacturers like Sigma Designs are also on board, incorporating MKV support for many OEM chips used in various hardware products.

Ad

You might also Like

Recommended

Discuss this Article

Post your comments

exception 'Exception' with message 'error writing captcha: Duplicate entry '2147483647' for key 'PRIMARY'' in /ssd/www/wisegeek/public_html/_core/classes/public/Captcha.php:44
Stack trace:
#0 /ssd/www/wisegeek/public_html/_core/controls/public/ControlDiscussionPostBox.php(324): Captcha->createCaptcha()
#1 /ssd/www/wisegeek/public_html/framework/classes/Control.php(104): ControlDiscussionPostBox->preRender(false)
#2 /ssd/www/wisegeek/public_html/framework/classes/Control.php(149): Control->render()
#3 /ssd/www/wisegeek/public_html/tpl/default-nocustom-lu/pages/public/article/article.htm(526): Control->__toString()
#4 /ssd/www/wisegeek/public_html/framework/classes/Control.php(300): require('/ssd/www/wisege...')
#5 /ssd/www/wisegeek/public_html/framework/classes/Control.php(309): Control->requireTpl('pages/public/ar...', Object(PageArticleCom), true)
#6 /ssd/www/wisegeek/public_html/framework/classes/Control.php(131): Control->renderTpl('pages/public/ar...', Object(PageArticleCom))
#7 /ssd/www/wisegeek/public_html/framework/classes/FormDataControl.php(87): Control->renderTemplate()
#8 /ssd/www/wisegeek/public_html/framework/classes/Control.php(109): FormDataControl->renderTemplate()
#9 /ssd/www/wisegeek/public_html/framework/classes/ScriptPage.php(50): Control->render(false)
#10 /ssd/www/wisegeek/public_html/framework/classes/Control.php(149): ScriptPage->render()
#11 /ssd/www/wisegeek/public_html/framework/classes/Page.php(97): Control->__toString()
#12 /ssd/www/wisegeek/public_html/_core/classes/public/PublicFrontController.php(443): Page->processRequest()
#13 /ssd/www/wisegeek/public_html/_core/classes/public/PublicFrontController.php(7): PublicFrontController->renderPage()
#14 /ssd/www/wisegeek/public_html/index.php(11): PublicFrontController::run()
#15 {main}