J'ai donc accidentellement ouvert un fichier vidéo mkv avec Chrome et, à ma grande surprise, il l'a lu à l'aide du lecteur natif:
<video src="video.mkv"></video>
Il jouait parfaitement. La vidéo HTML5 prend en charge le conteneur matroska?
HTML5 ne prend pas en charge les formats any video, ou plutôt HTML5 ne spécifie pas les formats que les navigateurs doivent prendre en charge. Il appartient aux navigateurs de décider quels formats ils choisissent de prendre en charge. Apparemment, Chrome lit .mkv, mais je ne serais pas surpris que d'autres navigateurs ne lisent pas le même fichier.
Le site Web a probablement défini le type de fichier MIME du fichier sur video/webm. Chrome ouvrira cette opération en ligne plutôt que de forcer le téléchargement (sinon, il ne sait pas quoi faire avec ou comment l'ouvrir).
Par exemple, dans Apache, cela est fait en utilisant la directive AddType (peut être faite dans un htaccess):
AddType video/webm .mkv
Je serais surpris que les navigateurs ne prennent pas en charge mkv, car le conteneur Webm n'est qu'une version restreinte du format matroska. Au-delà de cela, vous devrez vérifier le codec de la vidéo à l'intérieur et vous assurer que votre navigateur peut le gérer. Si le format vidéo est VP8 ou VP9 et que l'audio est Opus ou Vorbis, il est compatible Web et peut tout aussi bien être renommé en tant que tel. Notez que H.264, H.265 et MP3 ne sont pas compatibles WebM et vous devez éviter d'utiliser cette extension sur des fichiers contenant ces formats. La vidéo continuerait à être lue, mais elle casserait techniquement la spécification WebM et est mal vue.