ubuntuusers.de

Videos in Webseiten per javascript unter ubuntu 12.04 steuern

Status: Gelöst | Ubuntu-Version: Ubuntu 12.04 (Precise Pangolin)
Antworten |

schuppentier

Anmeldungsdatum:
21. März 2014

Beiträge: Zähle...

ich bin vor kurzem von Win xp auf ubuntu 12.04 umgestiegen und von der Einfachheit voll überrascht worden. Aber so langsam kommen die ersten hartnäckigen Probleme:

Ich will in einer Webseite Videos (u.a. flv mp4 avi) abspielen und die Steuerung per Javascript machen (API-Methoden wie .play() usw.). Das ging unter Win XP mit dem WMP problemlos.

Unter ubuntu hab ich das Ganze mit dem VLC-Player 2.0.8 und Mozilla Firefox 28.0 versucht. Die plugins

sudo apt-get install vlc browser-plugin-vlc mozilla-plugin-vlc

hab ich installiert und auf Basis der Beschreibung

https://wiki.videolan.org/Documentation:WebPlugin/

mein javascript-Code erstellt (kann ich bei Bedarf posten).

Das Video selbst wird abgespielt (autostart="yes"), ich kann es aber nicht per javascript steuern. Bei Befehlen wie document.getElementById("vlc").play() passiert einfach nichts.

Habt ihr eine Idee, woran das liegt? Fehlt noch ein Plugin? Gibts hier schon bekannte Kombatibilitäts-Probleme?

Ich bin nicht auf Firefox/VLC fixiert, mir würde es reichen, wenn irgendein Browser und irgendein Media Player mit javascript unter ubuntu steuerbar ist.

Vielen Dank schon mal für eure Tipps!

pepre Team-Icon

Supporter
Avatar von pepre

Anmeldungsdatum:
31. Oktober 2005

Beiträge: 6474

Wohnort: Erlangen

Ohne Code wird das nix! 😀

ZB: wie hast du "vlc" definiert?!

schuppentier

(Themenstarter)

Anmeldungsdatum:
21. März 2014

Beiträge: 6

Hallo pepre,

Du hast Recht, so wird das nix. Ich poste mal den Code:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head><title>VLC</title></head>

<body>

<div id= "wrapper">
<object classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921" codebase="http://download.videolan.org/pub/videolan/vlc/last/win32/axvlc.cab"></object>
<embed type="application/x-vlx-plugin" pluginspage="http://www.videolan.org"
name="video1" id="video1"
autoplay="no" loop="yes" width="400" height="300"
src="silly_walks.mpg"
</object>
</div>

<input type="button" value="play" onclick="play();"/>

<script type="text/javascript">

function play() {
document.getElementById("video1").play();
}

</script>
</body>
</html>

Im Firefox ist das VLC Web Plugin 2.0.8 und shockwave flash aktiv, andere plugins von totem, gecko etc. sind deinstalliert. Javascript ist aktiv und funtioniert grundsätzlich.

Liegt das an Zugriffsrechten? Das Video liegt lokal im gleichen Verzeichnis wie die html-Seite.

Bearbeitet von pepre:

Bitte Codeblöcke verwenden (Das Klicki mit dem Zahnrad).

Bearbeitet von pepre:

Ins passende Forum verschoben. Bitte beachte die Forenstickies (erster Beitrag in jedem Forum).

pepre Team-Icon

Supporter
Avatar von pepre

Anmeldungsdatum:
31. Oktober 2005

Beiträge: 6474

Wohnort: Erlangen

Mit Verlaub: der Code ist Murks! 😀 Da zeigt ja sogar schon die Forensoftware gravierende Fehler an.

<embed> ist überhaupt nicht geschlossen, <object> dafür zweimal. Dann frage ich mich ob eine Redefinition der Methode play als gleich benannte Funktion nicht zu Kuddelmuddel führt. Und normalerweise definiert man Funktionen bevor sie aufgerufen werden.

schuppentier

(Themenstarter)

Anmeldungsdatum:
21. März 2014

Beiträge: 6

Hallo pepre,

harte, aber wahre Worte! Du hast völlig Recht, der gepostete Code hat syntaktische Fehler bei object und embed, damit kann man nix anfangen ☹

Hab's mittlerweile selbst lösen können: wenn man die "playlist"-methoden von vlc verwenden, d.h. mit

function play() { document.getElementById("video1").playlist.play(); }

aufruft (und die Syntax-Fehler beim Object korrigiert 😢), dann funktioniert alles wie gewünscht. Das man "playlist" verwenden muss find ich zwar unintuitiv, aber es geht jedenfalls. Die Umdefinition von "play" ist echt gefährlich, hab die Function gleich mal umbenannt). Und einen besseren Stil gewöhn ich mir auch gleich an (erst function definieren, dann anwenden)....

Vielen Dank für die Tipps und Unterstützung!

illCP

Anmeldungsdatum:
26. Oktober 2010

Beiträge: 134

Schau dir mal http://flowplayer.org/ an - das ist ein HTML5-Videoplayer mit Flash-Fallback und damit eine deutlich "sauberere", kompatiblere Lösung als ein relativ "exotisches" Browser-Plugin als Voraussetzung.

schuppentier

(Themenstarter)

Anmeldungsdatum:
21. März 2014

Beiträge: 6

Hi illCP,

danke für den Hinweis, werde ich tun!

Antworten |