用VLC media player com组件检查mms地址是否可以收听详解

 

首先上图

有一批mms地址需要检查,于是写了个检查软件.进行检查,主要是 利用vlc控件的axVLCPlugin21.input.state属性进行检查

state值为3 为连接正常,7为无法连接.

第一步

安装 vlc 播放器 地址http://www.videolan.org/vlc/

第二步

建立1个form,在vs左侧添加控件

添加控件 右击工具箱-选择项

添加的时候有俩个,选2.0的版本.

第三步

首先 获取到mms地址 进行播放

        public void Play(string mmsUrl)
        {
            //textBox1.Text = mmsUrl;
            axVLCPlugin21.playlist.stop();
            axVLCPlugin21.playlist.clear();
            int index = axVLCPlugin21.playlist.add(mmsUrl, null, null);
            axVLCPlugin21.playlist.playItem(index);
            axVLCPlugin21.playlist.play();
        }

 再用timer 进行检查播放状态

            var s = axVLCPlugin21.input.state;
            //Util.Log(TTask.ThreadState.ToString());
            ListViewItem item = lvwChannel.Items[CurrentChannelIndex];
            //if (item.SubItems[1].Text != textBox1.Text) return;
            string channelName = item.SubItems[0].Text;
            if (s == 7)
            {
                AppendLog("", string.Format("[{0}]{1}", channelName, "连接失败!!!"));
                item.ForeColor = Color.Red;
                item.SubItems[2].Text = "×耗时" + lblCountDown.Text;
                item.SubItems[3].Text = (int.Parse(item.SubItems[3].Text) + 1).ToString();
                Util.SaveErrorResult(channelName + "," + item.SubItems[1].Text);
                TTask.Interrupt();
            }
            else if (s == 3)
            {
                AppendLog("", string.Format("[{0}]{1}", channelName, "连接成功"));
                item.ForeColor = Color.Green;
                item.SubItems[2].Text = "√耗时" + lblCountDown.Text;
                TTask.Interrupt();
            }
            else if (s == 1)
            {
            }
            else
            {
            Util.Log(s.ToString());
            }

 

 

 

posted @ 2013-05-21 15:11  simadi  阅读(1424)  评论(1编辑  收藏  举报