2016-10-11 4 views
1

В основном у меня есть этот код .lua в моем расширении vlc, теперь у меня возникают проблемы с настройкой повтора VLC автоматически, чтобы зациклить все в списке воспроизведения. Я попытался установить его в «все», 0, 1, 2, true, «TRUE», но он просто не установил значение цикла петли в «все».vlc.playlist.loop automation

Я также не могу получить значение петли плейлиста. Я попробовал object.playlist(). Loop, vlc.playlist.loop.

Я прочитал VLC's Lua Script and Extensions page, но я до сих пор не может получить то, что, как предполагается, что

<status> 

значение или любой из его допустимых строк.

function trigger() 
    vlc.playlist.stop() 
    vlc.playlist.sort("random") 
    vlc.playlist.goto(0) 
    --vlc.playlist.repeat_(<status>) 
    --vlc.playlist.loop(<status>) 
    vlc.playlist.play() 
end 

ответ

1

Решенные это, благодаря Вячеславу и Пятачке

это установило бы петлю плейлиста vlc для полного цикла, но я не могу напечатать или vlc.msg.info значение playlist.loop. Но это работает в конце.

function trigger() 
    vlc.playlist.stop() 
    vlc.playlist.sort("random") 
    vlc.playlist.goto(0) 
    playlist = vlc.object.playlist(); 
    if vlc.var.get(playlist,"loop") == false then vlc.playlist.loop() end 
    vlc.playlist.play() 
end 
0

Я не пробовал, но следующий статус Документации логика должна быть либо nil, true или false. Если nil (или нет аргумента), он переключит текущее состояние. true включит, false отключить цикл или повторить.

Не знаете, почему вы ожидаете, что цикл будет «все».

Вы удалили - перед соответствующей линией? Я предполагаю, что установка обоих не имеет смысла. И они будут взаимно переключаться друг с другом?

+0

Да, если конечно я удалил - это сделало бы это комментарий в коде, но логические значения, похоже, не работают над функцией. –

0

В общем случае, если вы не знаете, как это работает, можно найти такой код в github.com. В вашем случае, вы можете использовать это:

https://github.com/search?utf8=%E2%9C%93&q=vlc.playlist.loop+language%3ALua&type=Code&ref=searchresults

Как вы можете видеть,

вы можете использовать такой код:

elseif command == "pl_loop" then 
    vlc.playlist.loop() 
elseif command == "pl_repeat" then 
    vlc.playlist.repeat_() 

или

elseif c == 'loop' then 
     if vlc.playlist.loop(v) then 
     vlc.playlist.repeat_('off') 
     end 
    elseif c == 'repeat' then 
     if vlc.playlist.repeat_(v) then 
     vlc.playlist.loop('off') 
     end 
+0

TIL. Спасибо за совет github, я бы сейчас искал аналогичный код и попытался исправить и решить эту проблему, если бы мог. –