C# 視頻播放

若是須要查看更多文章,請微信搜索公衆號 csharp編程大全,須要進C#交流羣羣請加微信z438679770,備註進羣, 我邀請你進羣! ! !編程

主要是最基本的功能實現,後續會更新進一步的加工處理內容微信

emgucv採用的是V4.1.0.3420 VS版本2015ide

一開始 _capture.Start()後報錯spa

 

錯誤 CS0012 類型「ExceptionHandler」在未引用的程序集中定義。必須添加對程序集「System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089」的引用。orm

添加引用這個玩意就行了視頻

 

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

using Emgu.CV;
using Emgu.Util;
using Emgu.CV.CvEnum;
using Emgu.CV.Structure;
using Emgu.Util.TypeEnum;

namespace WindowsFormsApplication38
{
public partial class Form1 : Form
    {
// Capture是Emgu.CV提供的攝像頭控制類,裏面的ImageGrabbed事件表示的是獲取到圖片後觸發。能夠用來實現模擬攝像頭視頻獲取(實際上是在picturebox中顯示圖片,因爲很快,就跟視頻同樣)
// Capture另外一個很是關鍵的方法是QueryFrame()這個方法是用來獲取當前的攝像頭捕捉到的圖面。
        VideoCapture _capture;
        Mat frame = new Mat();
public Form1()
        {
            InitializeComponent();
            _capture = new VideoCapture(@"C:\Users\Administrator\Desktop\video\vtest.avi");
// _capture.SetCaptureProperty(Emgu.CV.CvEnum.CapProp.FrameHeight, 300);
//設置捕捉到幀的高度爲320。
// _capture.SetCaptureProperty(Emgu.CV.CvEnum.CapProp.FrameWidth,
//300);
//設置捕捉到幀的寬度爲240。
// _capture.FlipHorizontal = true;
//捕捉到幀數據進行水平翻轉。
            _capture.ImageGrabbed += _capture_ImageGrabbed;

            _capture.Start();
           
        }

void _capture_ImageGrabbed(object sender, EventArgs e)
        {
           

            _capture.Retrieve(frame, 0);

//var frame1 = _capture.Retrieve(frame,0);
            captureImageBox.Image = frame;




        }
    }
}
相關文章
相關標籤/搜索