为什么我的VLC插件崩溃如此之多

时间:2013-01-22 20:16:28

标签: debugging plugins lua vlc

所以我决定在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

任何帮助将不胜感激。

0 个答案:

没有答案