2014-01-17 12 views
11

Ich versuche ein MKV Video mit einem MPEG4 Video Codec und AC3 Audio Codec herzustellen, der online mit Mozilla oder Chrome gespielt werden kann. Ich habe mehrere Methoden ausprobiert, einschließlich nativem HTML5, welches das Video aber kein Audio abspielt und von dem, was ich gelesen habe, ist AC3 ein proprietärer Codec, so dass er nicht in den unterstützten Codecs enthalten ist. Der Code für das war wie folgt:Wie man MKV Video im Webbrowser wiedergibt

<video width='1024' height='768' controls autoplay> 
<source src="path_to_src" type='video/x-matroska'</video> 

ich dann die VLC Web-Plugin zu verwenden versucht, (ich weiß VLC die Dateien richtig spielen kann), aber noch nicht es jede Datei zu spielen bekommt, tut es nicht In den Beispielen zur Verwendung dieser Methode scheinen die Ergebnisse sehr konsistent zu sein. Hier ist, was ich versucht habe, so weit die VLC-Plugin:

<embed type="application/x-vlc-plugin" version="VideoLAN.VLCPlugin.2" 
width="1024" height="768" id="vlc" autoplay="yes" target="path_to_file"></embed> 

Die VLC-Seite here sagt dies hinzuzufügen:

<object classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921" 
codebase="http://download.videolan.org/pub/videolan/vlc/last/win32/axvlc.cab"> 

Aber die Code-Basis scheint nicht mehr zu existieren und fügte hinzu, dass classid zu dem obigen Code hat keinen Einfluss auf das Abspielen der Datei. Beide Methoden führen dazu, dass die VLC-Player-Box erstellt wird, aber nichts gespielt wird und die Entwicklerkonsole keine Fehler anzeigt.

Also ist meine Frage, kennt jemand eine Problemumgehung, um AC3-Audio im nativen HTML5-Player zu spielen, oder was ist die korrekte Syntax für das VLC-Web-Plugin? Oder hat jemand überhaupt einen anderen Player, den er empfehlen würde? Irgendwelche Hilfe geschätzt!

+1

mkv ist kein unterstütztes Format für HTML5-Video. Sie müssen Transcode in ein Format (oder Formate) transcodieren, das von den Browsern unterstützt wird, die Sie an – Offbeatmammal

Antwort

4

HTML5 und die VLC Web-Plugin für mich nicht annehmbar war, aber ich war in der Lage, diese Arbeit zu bekommen mit dem folgenden Aufbau:

DivX Web Player

AC3 Audio Decoder

Und hier ist der HTML:

<embed id="divxplayer" type="video/divx" width="1024" height="768" 
src ="path_to_file" autoPlay=\"true\" 
pluginspage=\"http://go.divx.com/plugin/download/\"></embed> 

Der DivX-Player scheint eine viel breitere Palette von Video-und Audio-Optionen als die native HTML5, so fa zu ermöglichen Ich bin sehr beeindruckt davon.

+1

liefern müssen. Verdammt, gibt es eine Möglichkeit, dies ohne Plugins zu tun? – Navin

+2

Leider erst, wenn Chrome/Firefox/etc anfängt, MKV-Video nativ zu unterstützen, zumindest nicht, wie ich es finden könnte –

3

html5 unterstützt kein Videoformat. für .mkv Datei, die Sie diesen Code verwenden können ...

<video> 
    <source src="video.mkv" type="video/mp4"> 
</video> 

aber sicher machen nur diesen Code unterstützen chrom es Sie

6

helfen Sie können die folgenden Code verwenden können. arbeite nur am Chrome Browser.

function failed(e) { 
 
    // video playback failed - show a message saying why 
 
    switch (e.target.error.code) { 
 
    case e.target.error.MEDIA_ERR_ABORTED: 
 
     alert('You aborted the video playback.'); 
 
     break; 
 
    case e.target.error.MEDIA_ERR_NETWORK: 
 
     alert('A network error caused the video download to fail part-way.'); 
 
     break; 
 
    case e.target.error.MEDIA_ERR_DECODE: 
 
     alert('The video playback was aborted due to a corruption problem or because the video used features your browser did not support.'); 
 
     break; 
 
    case e.target.error.MEDIA_ERR_SRC_NOT_SUPPORTED: 
 
     alert('The video could not be loaded, either because the server or network failed or because the format is not supported.'); 
 
     break; 
 
    default: 
 
     alert('An unknown error occurred.'); 
 
     break; 
 
    } 
 
}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
 

 
<head> 
 
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> 
 
<meta name="author" content="Amin Developer!" /> 
 

 
<title>Untitled 1</title> 
 
</head> 
 
<body> 
 

 
<p><video src="http://jell.yfish.us/media/Jellyfish-3-Mbps.mkv" type='video/x-matroska; codecs="theora, vorbis"' autoplay controls onerror="failed(event)" ></video></p> 
 
<p><a href="YOU mkv FILE LINK GOES HERE TO DOWNLOAD">Download the video file</a>.</p> 
 

 
</body> 
 
</html>

+0

Das funktioniert, aber ich bekomme keinen Ton. Muss ich auch den Audio-Codec angeben? –

+0

Tonspuren, die mit AC3-Audio-Codec codiert sind, können aufgrund von Lizenzbeschränkungen nicht in Chrome wiedergegeben werden. Daher funktioniert diese Methode im Grunde nicht für die Wiedergabe von .mkv-Dateien – edtech

0
<video controls width=800 autoplay> 
    <source src="file path here"> 
</video> 

Dies wird das Video angezeigt werden (.mkv) mit Google Chrome-Browser.

Verwandte Themen