资源简介
打包后太大了,只有源程序。在vs2013可运行成功
1、新建一个win32控制台程序
2、自己需在vs 配置好vlc 和opencv
3、导入代码就可以,在换成自己的url
代码片段和文件信息
// OpencvVLC.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
#include
using namespace cv;
struct ctx
{
Mat* image;
HANDLE mutex;
uchar* pixels;
};
// define output video resolution
#define VIDEO_WIDTH 1920
#define VIDEO_HEIGHT 1080
void *lock(void *data void**p_pixels)
{
struct ctx *ctx = (struct ctx*)data;
WaitForSingleobject(ctx->mutex INFINITE);
// pixel will be stored on image pixel space
*p_pixels = ctx->pixels;
return NULL;
}
void display(void *data void *id){
(void) data;
assert(id == NULL);
}
void unlock(void *data void *id void *const *p_pixels){
// get back data structure
struct ctx *ctx = (struct ctx*)data;
/* VLC just rendered the video but we can also render stuff */
// show rendered image
imshow(“test“ *ctx->image);
waitKey(1);
ReleaseMutex(ctx->mutex);
}
int main()
{
// VLC pointers
libvlc_instance_t *vlcInstance;
libvlc_media_player_t *mp;
libvlc_media_t *media;
const char * const vlc_args[] = {
“-I“ “dummy“ // Don‘t use any interface
“--ignore-config“ // Don‘t use VLC‘s config
“--extraintf=logger“ // Log anything
“--verbose=2“ // Be much more verbose then normal for debugging purpose
};
vlcInstance = libvlc_new(sizeof(vlc_args) / sizeof(vlc_args[0]) vlc_args);
// Read a distant video stream
media = libvlc_media_new_location(vlcInstance “rtsp://用户:密码@ip:rtsp端口号/PSIA/streaming/channels/通道号码流“);
// Read a local video file
// media = libvlc_media_new_path(vlcInstance “d:\\a.mp4“);
mp = libvlc_media_player_new_from_media(media);
libvlc_media_release(media);
struct ctx* context = ( struct ctx* )malloc( sizeof( *context ) );
context->mutex = CreateMutex(NULL FALSE NULL);
context->image = new Mat(VIDEO_HEIGHT VIDEO_WIDTH CV_8UC3);
context->pixels = (unsigned char *)context->image->data;
// show blank image
imshow(“test“ *context->image);
waitKey(1);
libvlc_video_set_callbacks(mp lock unlock display context);
libvlc_video_set_format(mp “RV24“ VIDEO_WIDTH VIDEO_HEIGHT VIDEO_WIDTH * 24 / 8); // pitch = width * BitsPerPixel / 8
int ii = 0;
int key = 0;
while(key != 27)
{
ii++;
if (ii > 5)
{
libvlc_media_player_play(mp);
}
float fps = libvlc_media_player_get_fps(mp);
printf(“fps:%f\r\n“fps);
key = waitKey(100); // wait 100ms for Esc key
}
libvlc_media_player_stop(mp);
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1839 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.log
文件 265263 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.obj
文件 10944512 2016-07-29 02:10 OpencvVLC\Debug\OpencvVLC.pch
文件 1662 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.tlog\cl.command.1.tlog
文件 37324 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.tlog\CL.read.1.tlog
文件 1162 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.tlog\CL.write.1.tlog
文件 1914 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.tlog\li
文件 4426 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.tlog\li
文件 616 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.tlog\li
文件 170 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.tlog\OpencvVLC.lastbuildstate
文件 344659 2016-07-29 02:10 OpencvVLC\Debug\stdafx.obj
文件 1231872 2016-07-29 02:36 OpencvVLC\Debug\vc120.idb
文件 2600960 2016-07-29 02:36 OpencvVLC\Debug\vc120.pdb
文件 2670 2016-07-29 02:42 OpencvVLC\OpencvVLC.cpp
文件 4633 2016-07-29 02:36 OpencvVLC\OpencvVLC.vcxproj
文件 1316 2016-07-29 02:36 OpencvVLC\OpencvVLC.vcxproj.filters
文件 1524 2016-07-29 00:58 OpencvVLC\ReadMe.txt
文件 432 2016-07-29 01:17 OpencvVLC\stdafx.cpp
文件 299 2016-07-29 01:16 OpencvVLC\stdafx.h
文件 236 2016-07-29 00:58 OpencvVLC\targetver.h
文件 203202 2016-07-29 02:37 OpencvVLC\vlc-log.txt
目录 0 2016-07-29 02:36 OpencvVLC\Debug\OpencvVLC.tlog
目录 0 2016-07-29 02:36 OpencvVLC\Debug
目录 0 2016-07-29 02:36 OpencvVLC
----------- --------- ---------- ----- ----
15650691 24
相关资源
- 快速小波变换 基于opencv带注释
- opencvman_old.pdf
- 车牌识别系统vc源码基于opencv
- 基于opencv的双摄像头读取程序含Dire
- 序列图像16位转8位OpenCV
- Opencv图像Mat写入中文汉字
- 海康回调解码
- opencv学习,道路检测
- 基于OpenCV的二维码检测识别基础demo
- Wallis滤波
- Opencv 人脸图像素描化
- 海康威视指纹门禁一体机_用户手册
- 基于OpenCV读取摄像头的人脸检测和识
- 海康威视笔试题08、09、12、13年 dsp,
- 基于OpenCv的旋转匹配
- opencv果实分割与识别
- qt环境下使用opencv打开双摄像头并保存
- opencv学习手势轮廓识别源代码
- 海康 web 插件
- OpenCV2 计算机视觉编程手册 配套源代
- 基于opencv的双目测距代码+文章
- opencvc车流量统计
- 车辆与车道线的检测与跟踪
- 基于opencv实现的图像拼接
- ROI区域&图像混合例程by浅墨
- ASM 人脸特征点提取
- 车牌识别源代码
- 并行计算mpi与openmp之蒙特卡洛求不规
- Opencv下利用SIFT、SURF、ORB三种特征点实
- opencv 、directshow捕获摄像头实时播放
评论
共有 条评论