基于VLC的流媒体串流显示

来源:互联网 发布:软件注册过期怎么办 编辑:程序博客网 时间:2024/05/17 02:28

构建vs2012工程流程

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"></span>

1.安装VLC播放器,因为需要用到其sdk的库


2.工程中设置好vlc的 include和lib路径(即包含目录和库目录),一般VLC sdk路径是C:\PrograFiles\VideoLAN\VLC\sdk





3. 复制VLC安装文件下的 libvlc.dll, libvlccore.dll,plugins目录到工程debug目录,plugins文件夹不是含h文件的那个文件夹


4.在vs工程中包含进头文件

#include "vlc/vlc.h"
#include "vlc/libvlc.h"
#include <string>


#pragma comment(lib, "libvlc.lib")
#pragma comment(lib, "libvlccore.lib")


5.在工程中定义vlc封装的类

//流媒体vlc库类封装
libvlc_instance_t * libvlc_inst;
libvlc_media_player_t *libvlc_mp;
libvlc_media_t *libvlc_m;

    

窗口初始化时初始化VLC库

/* Load the VLC engine */
libvlc_inst = libvlc_new (0, NULL);

6.播放rtsp流的代码:


<span style="font-size:24px;">void Cmy_hcntDlg::OnBnClickedPlay(){// TODO: 在此添加控件通知处理程序代码HWND screen_hwnd=NULL;screen_hwnd = this->GetDlgItem(IDC_SCREEN)->m_hWnd;                  libvlc_m = libvlc_media_new_location(libvlc_inst, "rtsp://192.168.1.60");            libvlc_mp = libvlc_media_player_new_from_media(libvlc_m);          libvlc_media_release(libvlc_m);            libvlc_media_player_set_hwnd(libvlc_mp, screen_hwnd);   /* play the media_player */       int x=libvlc_media_player_play (libvlc_mp);}</span>





0 0
原创粉丝点击