Lösning för filmvisning?

Allmänna frågor och synpunkter.
waka-laka
1 star
1 star
Posts: 4
Joined: Sat 22 Jan 2011, 23:43

Lösning för filmvisning?

Post by waka-laka » Wed 10 Aug 2011, 16:04

Kortfattat: Jag skulle vilja kunna starta ett scenario när jag startar/pausar/stoppar en film på datorn.

Jag kör idag med en server för tellsticken och spelar filmen på en annan dator i samma nätverk. Jag är inte så himla kunnig med det här med eventlisteners så jag söker lite hjälp :) Jag kommer troligen snart att köpa mig en HTPC och köra XBMC och vill även höra mig för om det är krångligt att få funktionen att fungera även med XBMC? Men på datorn som är aktuell nu kör jag windows 7. Dock är jag inte så sugen på att använda Media Center då jag vill använda VLC eller Classic media player.

Om någon har lust att skriva ner en liten step-by-step guide på det här kan det ju vara en bra tanke att även publicera den på Switchking siten :) En riktigt trevlig feature!

Tack på förhand

deejay
2 stars
2 stars
Posts: 19
Joined: Tue 04 Jan 2011, 21:37

Re: Lösning för filmvisning?

Post by deejay » Mon 19 Sep 2011, 18:19

Hej!
Jag kör XBMC.
Har Switch King och Tellsticken i en annan server.

XBMC drar SwitchKing.Console.CmdLine när man startar en film och släcker ljuset i "salongen".
När man pausar eller stoppar så återgår ljuset igen.

Det hela bygger på "%appdata%/XBMC/userdata/autoexec.py
Skapa filen om den inte finns med följande innehåll:
xbmc.executescript('C:\\xbmcscripts\\ljus.py')
Skapa katalogen c:\xbmcscripts och lägg in ljus.py där med följande innehåll:
# ljus.py

import xbmc,xbmcgui
import subprocess,os

class MyPlayer(xbmc.Player) :

def __init__ (self):
xbmc.Player.__init__(self)

def onPlayBackStarted(self):
if xbmc.Player().isPlayingVideo():
os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\off.vbs"')
def onPlayBackEnded(self):
if (VIDEO == 1):
os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\on.vbs"')
def onPlayBackStopped(self):
if (VIDEO == 1):
os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\on.vbs"')
def onPlayBackPaused(self):
if xbmc.Player().isPlayingVideo():
os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\on.vbs"')
def onPlayBackResumed(self):
if xbmc.Player().isPlayingVideo():
os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\off.vbs"')

player=MyPlayer()

while(1):
if xbmc.Player().isPlayingVideo():
VIDEO = 1

else:
VIDEO = 0

xbmc.sleep(3000)

Skapa sedan off.vbs
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run("c:\xbmcscripts\SwitchKing.Console.CmdLine\CmdLine.exe turnoff 8"), 0
Set WshShell = Nothing
Och on.vbs
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run("c:\xbmcscripts\SwitchKing.Console.CmdLine\CmdLine.exe turnon 8"), 0
Set WshShell = Nothing
"turnon" kan bytas mot "asscheduled" om man vill att det skall gå på schema istället när man pausar eller stoppar...

Se till att ha SwitchKing.Console.CmdLine på plats i:
c:\xbmcscripts\SwitchKing.Console.CmdLine\

Måste lämna lite cred till följande tråd på Telldus.se forumet och dess skapare...
Därifrån tog jag grunderna och modifierade en del.
http://www.telldus.se/forum/viewtopic.p ... 8&start=15

/dj

Martin
Administrator
Administrator
Posts: 2655
Joined: Tue 09 Nov 2010, 20:25

Re: Lösning för filmvisning?

Post by Martin » Mon 19 Sep 2011, 18:53

Nice!
Martin | Switch King

mattisgn
1 star
1 star
Posts: 1
Joined: Mon 05 Sep 2011, 18:27

Re: Lösning för filmvisning?

Post by mattisgn » Sat 22 Oct 2011, 20:53

Har lagt in detta men ändrade till setactivescenario 3 istället (som är mitt bioscenario) respektive 1 som är as scheduled vilket verkar fungera bättre av någon anledning.

Dock så står det "Script failed: ljus.py" när man startar XBMC och inget fungerar. Är det problem i nya versioner?

Stoffer
2 stars
2 stars
Posts: 41
Joined: Fri 14 Oct 2011, 23:11

Re: Lösning för filmvisning?

Post by Stoffer » Sat 10 Dec 2011, 23:56

Samma problem här, finns någon lösning?

Stoffer
2 stars
2 stars
Posts: 41
Joined: Fri 14 Oct 2011, 23:11

Re: Lösning för filmvisning?

Post by Stoffer » Sun 11 Dec 2011, 00:36

Så här står det i xbmc loggen
00:26:33 T:2256 M:2192433152 ERROR: Error Contents: ('expected an indented block', ('C:\\xbmcscripts\\ljus.py', 8, 3, 'def __init__ (self):\n'))
00:26:33 T:2256 M:2192527360 ERROR: IndentationError: ('expected an indented block', ('C:\\xbmcscripts\\ljus.py', 8, 3, 'def __init__ (self):\n'))

Stoffer
2 stars
2 stars
Posts: 41
Joined: Fri 14 Oct 2011, 23:11

Re: Lösning för filmvisning?

Post by Stoffer » Sun 11 Dec 2011, 01:57

Har nu löst det problemet med "Script failed: ljus.py". I koden deejay laddat upp så saknas en massa TAB.
Men nu när jag löst det så släcks ändå inte belysningen, enda som händer är att då jag trycker stop på xbmc så hänger sig xbmc.

Provkör jag .vbs filerna så tänds och släcks de som de ska.

Om någon har koll på detta vore jag väldigt tacksam, men jag kanske har större lycka om jag vänder mig till ett xbmc forum

Här är koden med tab där de ska vara iaf:

Code: Select all

# ljus.py

import xbmc,xbmcgui
import subprocess,os

class MyPlayer(xbmc.Player) :

	def __init__ (self):
		xbmc.Player.__init__(self)

	def onPlayBackStarted(self):
		if xbmc.Player().isPlayingVideo():
			os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\off.vbs"')

	def onPlayBackEnded(self):
		if (VIDEO == 1):
			os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\on.vbs"')

	def onPlayBackStopped(self):
		if (VIDEO == 1):
			os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\on.vbs"')

	def onPlayBackPaused(self):
		if xbmc.Player().isPlayingVideo():
			os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\on.vbs"')

	def onPlayBackResumed(self):
		if xbmc.Player().isPlayingVideo():
			os.spawnl(os.P_DETACH, "C:/Windows/system32/cscript.exe", '//B', '"C:\\xbmcscripts\\off.vbs"')

player=MyPlayer()

while(1):
	if xbmc.Player().isPlayingVideo():
		VIDEO = 1

else:
	VIDEO = 0

xbmc.sleep(3000)

Stoffer
2 stars
2 stars
Posts: 41
Joined: Fri 14 Oct 2011, 23:11

Re: Lösning för filmvisning?

Post by Stoffer » Tue 27 Dec 2011, 10:03

Om någon bryr sig då har jag hittat felet.
Hade missat en TAB vid Else satsen.

satheesh.net
2 stars
2 stars
Posts: 16
Joined: Thu 05 Jan 2012, 15:39

Re: Lösning för filmvisning?

Post by satheesh.net » Thu 05 Jan 2012, 16:39

Dette fungerer ikke i XBMC Eden. Jeg får i hvert fall ikke dette til... :(

Any help?

Stoffer
2 stars
2 stars
Posts: 41
Joined: Fri 14 Oct 2011, 23:11

Re: Lösning för filmvisning?

Post by Stoffer » Fri 06 Jan 2012, 09:59

Jo jag kör xbmc eden och det fungerar som det ska.

Post Reply

Who is online

Users browsing this forum: No registered users and 10 guests