Emgu.CV 播放视频-本地文件/RTSP流
using Emgu.CV;
using System;
using System.Drawing;
using System.Threading;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
Emgu.CV.Capture cap;
public Form1()
{
InitializeComponent();
//cap = new Emgu.CV.Capture("F:\\test.avi");
cap = new Emgu.CV.Capture("rtsp://192.168.1.6.............");
cap.ImageGrabbed += capture_ImageGrabbed;
cap.Start();
}
private delegate void SetPicVideo(Bitmap val);//跨线程修改图片框
private object lockObj = new object();
private Thread SetPicVideoThread;
Bitmap bmpVideo = null;
private void capture_ImageGrabbed(object sender, EventArgs e)
{
try
{
Mat frame = new Mat();
//lock (lockObj)
{
if (cap != null)
{
if (!cap.Retrieve(frame))
{
frame.Dispose();
return;
}
if (frame.IsEmpty)
return;
bmpVideo = frame.Bitmap;
SetPicVideoThread = new Thread(new ThreadStart(setPicVideo));
SetPicVideoThread.IsBackground = true;
SetPicVideoThread.Start();
}
}
//frame.Dispose();
}
catch (Exception ex)
{
}
}
void SetPic(Bitmap val)
{
if (val != null)
{
this.pictureBox1.Image = val;
}
}
private void setPicVideo()
{
if (pictureBox1.InvokeRequired)
{
SetPicVideo d = new SetPicVideo(SetPic);
object[] arg = new object[] { bmpVideo };//要传入的参数值
this.Invoke(d, arg);
}
else
{
SetPic(bmpVideo);
}
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
cap.Stop();
}
}
}
Emgu.CV 播放视频-本地文件/RTSP流的更多相关文章
- Emgu.CV 播放视频
using Emgu.CV; using System; using System.Drawing; using System.Threading; using System.Windows.Form ...
- Emgu CV播放视频
public partial class Form1 : Form { Capture _capture; public Form1() { Initializ ...
- Open CV 播放视频(2)
演示:读取一个视频,然后播放,ESC退出. #include "stdafx.h" #include <opencv2/core/core.hpp> # ...
- Windows平台Unity3d播放多路RTMP或RTSP流
好多开发者在做AR.VR或者教育类产品时,苦于如何在windows平台构建一个稳定且低延迟的RTSP或者RTMP播放器,如果基于Unity3d完全重新开发一个播放器,代价大.而且周期长,不适合快速出产 ...
- ffmpeg处理rtmp/文件/rtsp的推流和拉流
ffmpeg处理rtmp/文件/rtsp的推流和拉流 本demo演示了利用ffmpeg从服务器拉流或本地文件读取流,更改流url或文件类型名称发送回服务器或存到本地的作用. 由于本程序只写了3个小 ...
- 用vlc SDK创建一个播放视频文件和RTSP流视频的Demo
#include <stdio.h> #include <tchar.h> #include <time.h> #include <windows.h> ...
- javaCV开发详解之4:转流器实现(也可作为本地收流器、推流器,新增添加图片及文字水印,视频图像帧保存),实现rtsp/rtmp/本地文件转发到rtmp流媒体服务器(基于javaCV-FFMPEG)
javaCV系列文章: javacv开发详解之1:调用本机摄像头视频 javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG.j ...
- web网页中使用vlc插件播放相机rtsp流视频
可参考: 使用vlc播放器做rtsp服务器 使用vlc播放器播放rtsp视频 使用vlc进行二次开发做自己的播放器 vlc功能还是很强大的,有很多的现成的二次开发接口,不需配置太多即可轻松做客户端播放 ...
- [工具]利用EasyRTSPClient工具检查摄像机RTSP流不能播放原因以及排查音视频数据无法播放问题
出现问题 我们在做流媒体开发的过程中,进程会出现摄像机RTSP流莫名其妙无法播放的问题,而我们常用的vlc经常是直接弹出一个无法播放的提示框就完事了,没有说明出错的原因,或者在vlc的消息里面能看到日 ...
随机推荐
- react 入坑笔记(三) - Props
React Props props - 参数. 组件类 React.Component 有个 defaultProps 属性,以 class xxx extend React.Component 形式 ...
- Sql server 系统表
sql server系统表详细说明 SQL Server 用户库中系统表说明 名称 说明 备注 syscolumns 每个表和视图中的每列在表中占一行,存储过程中的每个参数在表中也占一行. sys ...
- Web API Help Page Install WebApiTestClient 简单的测试客户端
第一步: 安装the Test Client package 从NuGet安装包管理安装WebApiTestClient . 确保选择 “Include Prerelease” 然后输入 “WebAp ...
- GLSL 变量属性
1. attribute变量为这个attribute变量指定一个位置(用无符号值表示):glBindAttribLocation利用这个“位置”来指定需要传给shader里的attribue变量的数据 ...
- Git秘钥生成以及Gitlab配置
安装Git:详见http://www.cnblogs.com/xiuxingzhe/p/9300905.html 开通gitlab(开通需要咨询所在公司的gitlab管理员)账号后,本地Git仓库和g ...
- python的图形模块PIL小记
前言: 跟我一块住的室友是个搞通信,每天下班后基本必须做的事情是,第一P图,将那些不合格的图片上的数据,p成合格的.第二就是将做好的P图以及产生的日志文件按照固定的名字重新命名.我为了他能够早点睡觉, ...
- P1387 最大正方形 dp
思路: i j的最大正方形等于min(他的斜上方的的最大正方形,他的上方有的连续1,他的左方有的连续1)+1 #include<bits/stdc++.h> using namespac ...
- 学习Android过程中遇到的未解决问题(个人笔记,细节补充,随时更新)
201811/13 使用HttpURLConnection对象调用方法又出现IO异常,我又百度个博客搜寻答案,未果.下午试试真机,完美.自己建了服务器tomcat,编写android访问自己tomca ...
- 搭建gogs常见问题
1.无法连接ssh,显示connection refuse. 原因是“custom/conf/app.ini”没有开启ssh功能,改为以下配置就行了 START_SSH_SERVER = true ...
- MobaXterm之取消自动关闭连接 Network error :Connection timed out
连一会就出现连接重来的问题 配置如下.