答案1
我想我要解决这个问题...你要求最容易启动 XBMC 的方法...嗯...这是最简单的方法。我不是这么说的是这是一个简单的方法,但它是播放电影(不在您的库中)的唯一方法,并且可以跳转到几分钟(或几秒)。
首先,您需要设置 XBMC 在启动时自动执行脚本。为此,我们需要创建一个名为 的文件。 通常该文件为autoexec.py
。别 担心。您不需要为此“学习”python。只需将代码复制到该文件即可。%appdata%\XBMC\userdata
C:\Users\<username>\AppData\Roaming\XBMC\userdata
在那里创建autoexec.py
:
import xbmc
import xbmcgui
import os
class Main:
def __init__(self):
playlist = xbmc.PlayList( xbmc.PLAYLIST_VIDEO )
playlist.clear()
try:
file = os.getenv('XBMC_PLAY','')
jump = os.getenv('XBMC_JUMP','0')
except:pass
if os.path.isfile(file):
xbmc.executebuiltin('Notification(Playing '+file+',Jump to '+jump+',5000)')
playlist.add(file)
try:
xbmc.Player().play( playlist)
except:pass
try:
xbmc.Player().seekTime(int(jump))
except:pass
m = Main()
我调整了剧本这里(谢谢@root)并使其能够检查您的环境变量XBMC_PLAY
和XBMC_JUMP
。这样我们就可以从批处理文件调用XBMC,然后它将播放该文件。
再次不用担心。如果这些环境变量不存在,XBMC 将正常工作。
接下来我们需要创建批处理文件来设置正确的值并运行 XBMC。
XBMC_PLAY
是您的电影文件,并且XBMC_JUMP
是跳转的秒数(可以是0
)。
最简单的方法是:
set XBMC_PLAY=<YOUR_MOVIE>
set XBMC_JUMP=<SECONDS_TO_JUMP>
"C:\Program Files(x86)\XBMC\XBMC.exe"
set XBMC_PLAY=
set XBMC_JUMP=
但由于我是个完美主义者 ;) 我创建了一个更复杂的批处理,您可以使用它来放置文件,它会要求“跳转分钟”。也可以直接调用此批处理文件
xbmc_run moviefile.avi 15
。
您甚至可以创建文件关联等.avi
...来运行此批处理文件而不是其他播放器:)
创造xbmc_run.bat
@echo off
if "%1"=="" goto usage
if not exist %1 goto filenotfound
::-----------------------------------------------
:: set-up temp-variable for Program Files
::-----------------------------------------------
set ProgFiles86=%ProgramFiles(x86)%
if not "%ProgFiles86%"=="" goto win64
set ProgFiles86=%ProgramFiles%
:win64
::-----------------------------------------------
:: get %2 parameter. if not given ask for seconds
::-----------------------------------------------
set jump=%2
if "%jump%"=="" set /p jump="Jump to minute: "
set /a jump*=60
::-----------------------------------------------
:: set user-environment variables and start xbmc
::-----------------------------------------------
:play
set XBMC_PLAY=%1
set XBMC_JUMP=%jump%
echo Starting %XBMC_PLAY% and jump to %XBMC_JUMP% seconds
"%progFiles86%\XBMC\XBMC.exe"
set XBMC_PLAY=
set XBMC_JUMP=
goto :eof
:usage
echo Usage: %0 movie [jump]
exit/b 1
:filenotfound
echo File %1 not found
exit/b 1
它在这里运行完美。我使用了 XBMC v12.2“FRODO”。如果您需要帮助运行它,请告诉我。
编辑: 我刚刚想到,要求跳进去分钟可能比秒(就像我最初做的那样)。所以我修改了代码多于询问 XBMC 的跳分并重新计算秒数。
如果您希望以秒为单位跳转,可以更改以下两行:
if "%jump%"=="" set /p jump="Jump to second: "
set /a jump*=1
只需将电影文件放到这个批处理文件上,输入跳跃分钟数(或enter无跳跃分钟数),就可以开始了:)