start lokaal video vanaf webapp in vlc player

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • wimpo
  • Registratie: Juli 2009
  • Laatst online: 25-06 00:06
hallo tweakers

ik heb een vraag, ik heb een website lokaal die al mijn films indexeert en informatie van de bekende film databases ophaalt.
nu zou ik alleen nog een functie willen toevoegen die ervoor zorgt dat je de des betreffende film kunt openen vanuit de browser en opent in vlc player.

Gewoon een link naar het bestand zorgt ervoor dat hij gedownload word en dat is niet de bedoeling.

in de browser zelf afspelen lijkt me ook niet verstandig aangezien dit niet soepel loopt (720p+) i.c.m vlc plugin.

Ik heb lopen stoeien met de http interface van vlc player maar kan geen enkele manier vinden om zonder de index.html van vlc player zelf de functie te gebruiken wat de film opent.

rechtstreeks naar localhost:8080/request/status.xml?command=hier commando
werkt wel met play pause en playlist deleten, maar het toevoegen van films heb ik niet werken gekregen.

en het probleem is dat ik vanuit mijn webapp geen ajax calls kan doen op localhost en wanneer ik een ip adress gebruik (http://hierlokaalip:8080/requests/status.xml?command=hier commando) resulteert dit in een 403.

Heeft hier iemand een idee voor of misschien zelfs een werkend alternatief (andere media player met http fuctie).
enigste andere optie lijkt mij de telnet functie, maar ik heb hier helemaal geen begrip van. We heb ik een paar PHP classes gevonden die telnet gebruiken maar het concept ontglipt me een beetje. |:(

alvast bedankt

gr wim

Acties:
  • 0 Henk 'm!

  • wimpo
  • Registratie: Juli 2009
  • Laatst online: 25-06 00:06
oke het starten van vlc kan dus niet maar ik kan vlc player wel bedienen via het web als het programma maar opgestart is,

ik heb een test scriptje in elkaar gezet en het play en pause gedeelte werkt wel, alleen toevoegen werkt niet.

hier het script
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript">

function Genre(genre) 
{

document.getElementById("tab2").innerHTML=genre;
    
if (genre=="")
  {
  document.getElementById("genre").innerHTML="";
  return;
  } 
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("genre").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","http://mijnip:8080/requests/status.xml?command="+genre,true);
xmlhttp.send();     
}
</script>
</head>
<?php 
if ($_GET['actie'] == "test")

{
    
    if ($_GET['film'] == "")
    { 
    echo "geen film";
    }
    
    else
     {   
     echo 
     "<body onload=\"javascript:Genre('".$_GET['film']."');\"></body>";  
     }
}

?> 
    
    <a href="?actie=test&film=pl_play">play</a>
    <a href="?actie=test&film=pl_pause">pause</a>
     <a href="?actie=test&film=in_enqueue&input=C:\Users\wim\Documents\BitLord\Boyz%20II%20Men%20-%20Legacy%20[The%20Greatest%20Hits%20Collection]%20(2001)%20320%20vtwin88cube\pass.mp3">toevoegen</a>    
    <div id="genre"></div>
    <div id="tab2"></div>


</html>

excuses voor eventuele slechte opmaak/programmeer foutjes dit is hobby matig en wat werkt dat werkt. 8)7

Het toevoegen werkt tot aan ?command=in_enqueue maar de &input\pad\naar\bestand.mp3 word niet meegepakt.
Ik vermoed dat dit door de javascript komt dus ik zoek een manier om javascript het hele command te laten herkennen.

kun je in javascript deze speciale tekens ook escapen en zo ja wat is de beste methode?

Alvast bedankt voor de eventuele hulp.

Acties:
  • 0 Henk 'm!

  • wimpo
  • Registratie: Juli 2009
  • Laatst online: 25-06 00:06
oke ik moet dus een manier vinden om php het teken & niet als een _GET variabele tezien in het commando
in_enqueue&input=
dit wil nog niet lukken :s

  • xh3adshotx
  • Registratie: Oktober 2011
  • Laatst online: 28-02-2023
wimpo schreef op woensdag 12 december 2012 @ 13:06:
oke ik moet dus een manier vinden om php het teken & niet als een _GET variabele tezien in het commando
in_enqueue&input=
dit wil nog niet lukken :s
Een URL kan niet zomaar alle tekens bevatten (kan wel, maar levert problemen op zoals je merkt). Daarom zou je de variable geschikt moeten maken voor een url. Binnen PHP zou dat kunnen met urlencode, als je dat met Javascript wil doen zou je encodeURIComponent kunnen gebruiken.

Op het moment dat je de variables dan weer wil uitlezen moet je natuurlijk weer urldecode of decodeURIComponent gebruiken om de originele input te verkrijgen.

Waarom gebruik je niet de mogelijkheid van HTML5 om een video te weergeven?

  • wimpo
  • Registratie: Juli 2009
  • Laatst online: 25-06 00:06
ik wist niet dat de performance van html5 goed genoeg was om hd content af te spelen, en hoe zit het dan met ondertitels?

  • xh3adshotx
  • Registratie: Oktober 2011
  • Laatst online: 28-02-2023
wimpo schreef op donderdag 13 december 2012 @ 12:06:
ik wist niet dat de performance van html5 goed genoeg was om hd content af te spelen, en hoe zit het dan met ondertitels?
Performance van HTML5 is volgens mij prima, voor ondertitels kan je een plug-in gebruiken of het track element.

  • Nakebod
  • Registratie: Oktober 2000
  • Laatst online: 22:43

Nakebod

Nope.

Daar zijn zo te zien wel wat JS oplossingen voor te verkrijgen.

http://www.storiesinflight.com/js_videosub/
http://bubbles.childnodes.com/

Blog | PVOutput Zonnig Beuningen


  • wimpo
  • Registratie: Juli 2009
  • Laatst online: 25-06 00:06
En hoe zit het met de codecs ik lees namelijk op wikipedia dat er maar 3 video formats zijn ondersteunt.

En om een update te geven van het afspelen in vlc player, dit is mij gelukt doormiddel van het rechtstreeks aanspreken van status.xml d.m.v php en js.

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript">

function Genre(genre) 
{

document.getElementById("tab2").innerHTML=genre;
    
if (genre=="")
  {
  document.getElementById("genre").innerHTML="";
  return;
  } 
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("genre").innerHTML=xmlhttp.responseText;
    }
  }

xmlhttp.open("GET","http://mijnip:8080/requests/status.xml?command="+genre,true);
xmlhttp.send();     
}
</script>
</head>
<?php 
if ($_GET['actie'] == "test")

{
    
    if ($_GET['film'] == "")
    { 
    echo "geen film";
    }
    
    else
     {   
     echo 
     
     "<body onload=\"javascript:Genre('".$_GET['film']."&input=".$_GET['input']."');\"></body>";     
     }
}

?> 
    
    <a href="?actie=test&film=pl_play">play</a>
    <a href="?actie=test&film=pl_pause">pause</a>
    <?php
    $locatie = "C:\Users\wim\Documents\BitLord\Boyz II Men - Legacy [The Greatest Hits Collection] (2001) 320 vtwin88cube\pass.mp3";
    $black2 =  addslashes($locatie);
    ?>
     <a href="?actie=test&film=in_play&input=<?php echo $black2; ?>">toevoegen</a>    
    <div id="genre" style="visibility:hidden">hybhy</div>
    <div id="tab2" style="visibility:hidden">fgfhg</div>


</html>

ik weet het is een rommeltje maar ik ben nog vol aan het testen.

lijst van alle commando's
http://git.videolan.org/?...quests/README.txt;hb=HEAD
Pagina: 1