所以我决定在 Lua 中编写一个 VLC 插件......我对这两种技术都是全新的,我有一个插件可以工作,但是我使用它每 25 或 30 次它就会崩溃。它的目标是让播放头到达曲目的最后 5、7 或 10 秒。
这是来源:
function activate()
initialize()
index=0 -- when activate already playing.
local d = vlc.dialog("Begin-End" )
d:add_button("begin",do_begin,1,1,1,1)
d:add_button("end 10",do_end,3,1,1,1)
d:add_button("end 7",do_end_7,4,1,1,1)
d:add_button("end 5", do_end_5,4,2,1,1)
d:add_button("prev playlist",do_prevplaylist,1,2,1,1)
d:add_button("next playlist",do_nextplaylist,3,2,1,1)
d:show()
update()
end
function initialize()
input=vlc.object.input()
d=vlc.input.item():duration()
index=0
end
function input_changed()
initialize()
update()
end
function meta_changed()
end
function deactivate()
end
function close()
vlc.deactivate()
end
function update()
if index==1 then
vlc.var.set(input,"time",0)
end
if index==2 then
vlc.var.set(input,"time",d-10)
end
if index==3 then
vlc.var.set(input, "time", d-7)
end
if index==4 then
vlc.var.set(input, "time", d-5)
end
end
function do_nextplaylist()
vlc.playlist.next()
end
function do_prevplaylist()
vlc.playlist.prev()
end
function do_begin()
index = 1
update()
end
function do_end()
index = 2
update()
end
function do_end_7()
index = 3
update()
end
function do_end_5()
index = 4
update()
end
任何帮助将不胜感激。