windows下使用vlclib开发音视频应用程序

windows下使用vlclib开发音视频应用程序

super.raymond.lu[at]gmail[dot]com

(转载请注明出处http://blog.csdn.net/raymond_lu_rl/article/details/7516037)




VLC随着10多年的发展已经非常强大了,其跨平台和支持大量多媒体特性使得其在多媒体处理中获得大量应用。

使用vlclib进行小型单功能强大的多媒体应用软件非常方便快捷。


废话不多说,直接进入主题:

1、在官方主页下载windows版本的VLC程序并安装,我的安装路径为D:\Program Files\VideoLAN。我下载的是2.01版本:http://www.videolan.org/

2、在安装路径下找到VLC的include文件夹,include文件夹在D:\Program Files\VideoLAN\VLC\sdk\include下。

3、在安装路径下找到VLC的DLL文件,包括libvlc.dll文件和libvlccore.dll文件。这两个文件都在D:\Program Files\VideoLAN\VLC文件夹下。

4、通过libvlc.dll和libvlccore.dll生成libvlc.lib和libvlccore.lib,生成的方法参考http://wiki.videolan.org/GenerateLibFromDll

5、创建一个win32 console应用程序,将include文件夹、libvlc.lib和libvlccore.lib都包含到项目中。

6、编写文章后面的代码。

7、编译并生成可执行程序,将D:\Program Files\VideoLAN\VLC\plugins文件夹和libvlc.dll和libvlccore.dll拷贝到可执行程序当前路径。

8、运行可执行程序。



示例代码(在VS2008上测试通过):


#include <windows.h>
#include <stdio.h>
#include "vlc/vlc.h"

static void wait_playing(libvlc_media_player_t *mp)
{
	libvlc_media_t *curMedia = libvlc_media_player_get_media (mp);
	if (curMedia == NULL)
		return ;
	float pos = 0;
	do {
		pos=libvlc_media_player_get_position (mp);
		::Sleep(100);
	} while(pos < 0.90);
}

int main(int argc, char * argv[]) 
{

	libvlc_instance_t * inst;
	libvlc_media_player_t *mp;
	libvlc_media_t *m;

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

	/* Create a new item */
	m = libvlc_media_new_path (inst, "E:\\work\\close1.wmv");

	/* Create a media player playing environement */
	mp = libvlc_media_player_new_from_media (m);

	/* No need to keep the media now */
	libvlc_media_release (m);

	/* play the media_player */
	libvlc_media_player_play (mp);

	//Sleep (20000); /* Let it play a bit */
	wait_playing(mp);
	/* Stop playing */
	libvlc_media_player_stop (mp);

	/* Free the media_player */
	libvlc_media_player_release (mp);

	libvlc_release (inst);

	return 0;
}











   

你可能感兴趣的:(windows,null,Gmail,include,plugins,多媒体处理)