コード例 #1
0
    public int initPlayer(HPVEventDelegate node_delegate)
    {
        int node_id = HPV_Unity_Bridge.InitPlayer();

        hpv_node_delegates.Add((byte)node_id, node_delegate);
        return(node_id);
    }
コード例 #2
0
    private IEnumerator HPV_Update()
    {
        while (true)
        {
            // Wait until all Unity rendering is done
            yield return(new WaitForEndOfFrame());

            // Issue the texture refresh in the video plugin
            // This also handles all internal events and makes then ready to
            // be read by the managed plugin, using GetLastEvent()
            GL.IssuePluginEvent(HPV_Unity_Bridge.GetRenderEventFunc(), 1);

            // Process HPV events and dispatch to node
            if (HPV_Unity_Bridge.HasEvents())
            {
                int  ev_id    = HPV_Unity_Bridge.GetLastEvent();
                byte node_id  = (byte)(ushort)(ev_id >> 16);
                int  event_id = (ev_id & 0xffff);

                if (hpv_node_delegates.ContainsKey(node_id))
                {
                    hpv_node_delegates[node_id]((HPV_Unity_Bridge.HPVEventType)event_id);
                }
            }
        }
    }
コード例 #3
0
    void OnDisable()
    {
        hpv_node_delegates.Clear();

        StopCoroutine(HPV_update_loop);
        SingletonService <HPV_Manager> .UnregisterSingletonInstance(this);

        HPV_Unity_Bridge.OnStop();
    }
コード例 #4
0
 public int setLoopIn(byte node_id, int loop_in)
 {
     return(HPV_Unity_Bridge.SetLoopIn(node_id, loop_in));
 }
コード例 #5
0
 public int enableStats(byte node_id, bool enable)
 {
     return(HPV_Unity_Bridge.EnableStats(node_id, enable));
 }
コード例 #6
0
 public HPV_Unity_Bridge.HPVCompressionType getCompressionType(byte node_id)
 {
     return((HPV_Unity_Bridge.HPVCompressionType)HPV_Unity_Bridge.GetCompressionType(node_id));
 }
コード例 #7
0
 public int getPositionMs(byte node_id)
 {
     return(HPV_Unity_Bridge.GetPositionMs(node_id));
 }
コード例 #8
0
 public int setSyncState(byte node_id, HPV_Unity_Bridge.HPVSyncState state)
 {
     return(HPV_Unity_Bridge.SetSyncState(node_id, (int)state));
 }
コード例 #9
0
 public int seekToPos(byte node_id, double pos)
 {
     return(HPV_Unity_Bridge.SeekToPos(node_id, pos));
 }
コード例 #10
0
 public int getHeight(byte node_id)
 {
     return(HPV_Unity_Bridge.GetVideoHeight(node_id));
 }
コード例 #11
0
 public int getWidth(byte node_id)
 {
     return(HPV_Unity_Bridge.GetVideoWidth(node_id));
 }
コード例 #12
0
 public int openVideo(byte hpv_node_id, string filepath)
 {
     return(HPV_Unity_Bridge.OpenVideo(hpv_node_id, filepath));
 }
コード例 #13
0
 public int hasResources(byte node_id)
 {
     return(HPV_Unity_Bridge.PlayerHasResources(node_id));
 }
コード例 #14
0
 public int setLoopOut(byte node_id, int loop_out)
 {
     return(HPV_Unity_Bridge.SetLoopOut(node_id, loop_out));
 }
コード例 #15
0
 public int getFrameRate(byte node_id)
 {
     return(HPV_Unity_Bridge.GetFrameRate(node_id));
 }
コード例 #16
0
 public int setLoopState(byte node_id, int loop_state)
 {
     return(HPV_Unity_Bridge.SetLoopState(node_id, loop_state));
 }
コード例 #17
0
 public int stopVideo(byte node_id)
 {
     return(HPV_Unity_Bridge.StopVideo(node_id));
 }
コード例 #18
0
 public int seekToMs(byte node_id, int ms)
 {
     return(HPV_Unity_Bridge.SeekToMs(node_id, ms));
 }
コード例 #19
0
 public int pauseVideo(byte node_id)
 {
     return(HPV_Unity_Bridge.PauseVideo(node_id));
 }
コード例 #20
0
 public float getPosition(byte node_id)
 {
     return(HPV_Unity_Bridge.GetPosition(node_id));
 }
コード例 #21
0
 public int resumeVideo(byte node_id)
 {
     return(HPV_Unity_Bridge.ResumeVideo(node_id));
 }
コード例 #22
0
 public int getNumberOfFrames(byte node_id)
 {
     return(HPV_Unity_Bridge.GetNumberOfFrames(node_id));
 }
コード例 #23
0
 public int setDirection(byte node_id, bool direction)
 {
     return(HPV_Unity_Bridge.SetPlayDirection(node_id, direction));
 }
コード例 #24
0
 public IntPtr getTexturePtr(byte node_id)
 {
     return(HPV_Unity_Bridge.GetTexPtr(node_id));
 }
コード例 #25
0
 public int setSpeed(byte node_id, double speed)
 {
     return(HPV_Unity_Bridge.SetSpeed(node_id, speed));
 }
コード例 #26
0
 public IntPtr getDecodeStatsPtr(byte node_id)
 {
     return(HPV_Unity_Bridge.PassDecodeStats(node_id));
 }
コード例 #27
0
 public void setTexturePtr(byte node_id, System.IntPtr tex)
 {
     HPV_Unity_Bridge.SetTexPtr(node_id, tex);
 }