Я думаю, что я собираюсь заняться этим ... Вы просили самый простой способ запустить XBMC ... Что ж... Вот самый простой способ. Я не говорю , что это легкий путь , но это единственный способ запустить фильм (который не находится в вашей библиотеке) и работает с прыжком до нескольких минут (или секунд).
Сначала вам нужно настроить XBMC для автоматического выполнения скрипта при запуске. Для этого нам нужно создать файл с именем autoexec.py
в %appdata%\XBMC\userdata
.
Обычно это C:\Users\<username>\AppData\Roaming\XBMC\userdata
.
Не беспокойся Вам не нужно "учить" Python для этого. Просто скопируйте код в этот файл.
Создайте там 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()
Я настроил скрипт отсюда (thnx @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.
Если вы хотите перейти в считанные секунды назад, вы можете изменить эти 2 строки:
if "%jump%"=="" set /p jump="Jump to second: "
set /a jump*=1
Просто перетащите файл фильма в этот пакетный файл, введите минуты перехода (или просто введите, если их нет), и все готово :)