请读者先参考无言的博客:http://jeremiah.blog.51cto.com/539865/116981,借助于无言的很好的归纳总结,能够让大家更容易的进入我想要进行阐述的内容。

进入正题:

1.定义一些全局变量

        private Core[] core = new Core[4];
        private Media[] media = new Media[4];
        private MediaPlayer[] player = new MediaPlayer[4];
        private ExceptionStruct ex;

2.播放事件的实现

            //要播放的文件的uri
            string uri_1 = "D:\\Media\\高速精车.mpg" ;
            string uri_2 = "D:\\Media\\全民超人.mpg";
            string uri_3 = "D:\\Media\\快乐中国.mpg";
            string uri_4 = "D:\\Media\\两个人.avi";
            //进行播放的控件的句柄
            IntPtr hdl = panel1.Handle;
            IntPtr hd2 = panel2.Handle;
            IntPtr hd3 = panel3.Handle;
            IntPtr hd4 = panel4.Handle;      

            //播放参数            

            string[] argv = new string[] { "-I", "--ignore-config" };          
            ex = new ExceptionStruct();

            //实例化定义的对象
            core[0] = new Core(argv, ref ex);
            media[0] = new Media(core[0].CoreHandle, uri_1, ref ex);
            player[0] = new MediaPlayer(media[0].MediaHandle, ref ex);

            core[1] = new Core(argv, ref ex);
            media[1] = new Media(core[1].CoreHandle, uri_2, ref ex);
            player[1] = new MediaPlayer(media[1].MediaHandle, ref ex);

            core[2] = new Core(argv, ref ex);
            media[2] = new Media(core[2].CoreHandle, uri_3, ref ex);
            player[2] = new MediaPlayer(media[2].MediaHandle, ref ex);

            core[3] = new Core(argv, ref ex);
            media[3] = new Media(core[3].CoreHandle, uri_4, ref ex);
            player[3] = new MediaPlayer(media[3].MediaHandle, ref ex);
            //垃圾回收
            GC.Collect();
            //播放
            player[0].VedioSetParent(core[0].CoreHandle, hdl, ref ex);
            player[0].Play(player[0].MediaPlayerHandle, ref ex);

            player[1].VedioSetParent(core[1].CoreHandle, hd2, ref ex);
            player[1].Play(player[1].MediaPlayerHandle, ref ex);

            player[2].VedioSetParent(core[2].CoreHandle, hd3, ref ex);
            player[2].Play(player[2].MediaPlayerHandle, ref ex);

            player[3].VedioSetParent(core[3].CoreHandle, hd4, ref ex);
            player[3].Play(player[3].MediaPlayerHandle, ref ex);           
            //继续回收垃圾等相关操作
            GC.Collect();
            GC.WaitForPendingFinalizers();

3.简单吧!哈哈,如果有问题可以qq沟通543753343 Gadil