Kann das bitte mal jemand testen?
Benny
- multimedia (audio & video)
0 jobo
Hi. Also ich versuch seit Stunden ein Video in einem embedded wmp zu einer bestimmten Zeit zum Stoppen zu bringen. Ich habs mit javascript und nem Timeout versucht allerdings Startet die Systemzeit und das Video nicht parallel wodurch das Video früher stoppt als es sollte. Nach diesem Versuch bin ich auf die Eigenschaft SelectionEnd des WMP gestoßen und habe versucht damit zu arbeiten allerdings funktioniert es aus mir unerklärlichen Gründen nicht. Ich habe dann auf openbook.galileocomputing eine Beispielanwendung gefunden die meine Anforderungen eigentlich realisieren müsste. Allerdings funktioniert es bei mir auch nicht wenn ich es starte.
Hier mal der Code der HTML:
<html>
<head>
<title>Heimkino</title>
<script type="text/javascript" src="multimedia.js"></script>
<script type="text/javascript"><!--
var film;
function heimkino_init() {
film = new mp_obj(document.film);
document.forms["heimkino"].elements["v"].value =
film.getVolume();
}
//--></script>
</head>
<body onload="heimkino_init();">
<object id="film"
classid="CLSID:22d6f312-b0f6–11d0–94ab-0080c74c7e95"
codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"
type="application/x-oleobject">
<param name="FileName" value="1.asx" />
<param name="autoStart" value="true" />
<param name="showControls" value="false" />
<embed id="film"
name="film"
pluginspage="http://www.microsoft.com/windows/windowsmedia/download/"
type="application/x-mplayer2"
src="1.asx"
autostart="-1"
showcontrols="0">
</embed>
</object>
<form name="heimkino" onsubmit="return false;">
<a href="javascript:film.play()">Play</a><br>
<a href="javascript:film.pause()">Pause</a><br>
<a href="javascript:film.stop()">Stop</a><br>
<input type="text" name="v" size="2" value="50" />
<a href="javascript:film.setVolume(parseInt(document.forms['heimkino'].elements['v'].value));">
Lautstärke setzen</a><br />
<input type="text" name="s" size="4" value="0" />
<a href="javascript:film.start(parseInt(document.forms['heimkino'].
elements['s'].value));">Startzeit setzen</a> -
<a href="javascript:film.startReset();">Startzeit zurücksetzen</a><br />
<input type="text" name="e" size="4" value="0" />
<a href="javascript:film.ende(parseInt(document.forms['heimkino'].
elements['e'].
value));">Endzeit setzen</a> -
<a href="javascript:film.endeReset();">Endzeit zurücksetzen
</a><br />
<input type="text" name="d" size="20" value="1.asx" />
<a href="javascript:film.lade(document.forms['heimkino'].elements['d'].
value);">Datei laden</a><br />
<a href="javascript:film.setControls(!film.getControls())">Controls ein/aus</a>
</form>
</body>
</html>
Und hier der, der dazugehörigen multimedia.js Script Datei:
function mp_nn() {
return (navigator.plugins &&
navigator.plugins["Windows Media Player Plug-in Dynamic Link Library"]);
}
function mp_ie() {
return (window.ActiveXObject != null);
}
function mp_obj(ref) {
this.obj = ref;
this.play = mp_play;
this.pause = mp_pause;
this.stop = mp_stop;
this.getVolume = mp_getVolume;
this.setVolume = mp_setVolume;
this.start = mp_start;
this.ende = mp_ende;
this.startReset = mp_start_reset;
this.endeReset = mp_ende_reset;
if (mp_ie()) {
this.origEnde = 0;
}
this.lade = mp_lade_datei;
this.getControls = mp_getControls;
this.setControls = mp_setControls;
return this;
}
function mp_play() {
if (mp_nn() || mp_ie()) {
this.obj.Play();
}
}
function mp_pause() {
if (mp_nn() || mp_ie()) {
this.obj.Pause();
}
}
function mp_stop() {
if (mp_nn() || mp_ie()) {
this.obj.Stop();
}
}
function mp_getVolume() {
if (mp_nn()) {
return this.obj.GetVolume();
} else if (mp_ie()) {
return this.obj.Volume;
}
}
function mp_setVolume(v) {
if (mp_nn()) {
return this.obj.SetVolume(v);
} else if (mp_ie()) {
this.obj.Volume = v;
}
}
function mp_start(n) {
if (mp_nn()) {
this.obj.SetSelectionStart(n);
} else if (mp_ie()) {
this.obj.SelectionStart = n;
}
}
function mp_ende(n) {
if (mp_nn()) {
if (this.origEnde == 0) {
this.origEnde = this.obj.GetSelectionEnd();
}
this.obj.SetSelectionEnd(n);
} else if (mp_ie()) {
if (this.origEnde == 0) {
this.origEnde = this.obj.SelectionEnd;
}
this.obj.SelectionEnd = n;
}
}
function mp_start_reset() {
mp_start(0);
}
function mp_ende_reset() {
if (this.origEnde != 0) {
mp_ende(this.origEnde)
}
}
function mp_lade_datei(x) {
if (mp_nn()) {
this.obj.SetFileName(x);
} else if (mp_ie()) {
this.obj.FileName = x;
}
}
function mp_getControls() {
if (mp_nn()) {
return this.obj.GetShowControls();
} else if (mp_ie()) {
return this.obj.showControls;
}
}
function mp_setControls(b) {
if (mp_nn()) {
this.obj.SetShowControls(b);
} else if (mp_ie()) {
this.obj.showControls = b;
}
}
Wäre super wenn da mal jemand bei dich testen könnte oder eine Idee hat wie ich es realisieren kann, dass das Video nach einer bestimmten Zeit soppt.
LG Danke im Voraus
Hallo,
vermutlich bekommst du viel schneller eine Antwort, wenn du Code und Problem eingrenzen würdest.
Gruß
jobo