第二部分:将MPLAYER 嵌入到MFC的对话框程序中
MPLAYER是LINUX下应用最广泛的媒体播放器工具,也是开源的播放器工具。它以其优异的播放性能,最广泛的媒体格式支持越来越受到广大用户的喜爱。但是最大的缺点是它是基于命令行的应用程序,但同时也是它的优点。因为用户可以为它定制各种不同的用户界面。MPLAYER提供了非常丰富的命令接口,用户只要给它相应的命令制就可以实现各种不同的功能。比起WINDOW自带的媒体播放器控件要方便的多,本人就是在VC2005的对话框应用程序中嵌入MPLAYER实现视频文件播放。
采用多线程技术实现播放与用户界面交互,通过管道的方式传输命令字。如下所示:
int MPlayer::CreateMPlayerProcess()
{
HANDLE h1, h2;
SECURITY_ATTRIBUTES sa;
PROCESS_INFORMATION pi;
STARTUPINFO si;
char param [1024];
char buf[256];
DBG (LOG_APP," Creating MPlayer Process");
strcpy_s (param, m_strMPlayerPath);
//strcat_s (param, " /" ");
strcat_s (param, " ");
strcat_s (param, m_strMediaPath);
// strcat_s (param, "/" ");
strcat_s (param, " ");
if (m_hDisplayWindow != INVALID_HANDLE_VALUE)
{
sprintf