📄 play.cpp
字号:
#include "stdafx.h"
#include<dshow.h>
#include<streams.h>
#pragma comment(lib, "Ole32.lib ")
#pragma comment(lib, "Strmiids.lib ")
void TestMP3(void);
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{ // TODO: Place code here.
TestMP3();
return 0;
}
void TestMP3()
{
IGraphBuilder *pGraph;
/* 指向Filter Graph的指针 */
IMediaControl *pMediaControl;
/* 指向MediaControl对象的指针 */
/* 初始化,程序启动时执行一次即可 */
CoInitialize(NULL);
/**************************************************************************/
/* 以下程序每次播放MP3(或其他格式)文件时调用 */
/* 创建一个Filter Graph manager */
CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC, IID_IGraphBuilder, (void **)&pGraph);
pGraph-> QueryInterface(IID_IMediaControl, (void **)&pMediaControl);
/* 连接播放指定文件所需的filter */
pGraph-> RenderFile(L"\\test.mp3",NULL);
/* 开始播放指定的文件 */
pMediaControl-> Run();
/* 文件的播放在DirectShow中独立线程中进行,此处等待 */
MessageBox(NULL, L"点击[OK]结束播放 ", L"Play MP3 ",MB_OK);
pMediaControl-> Stop();
/* 停止播放 */
pMediaControl-> Release();
/* 释放对象 */
pGraph-> Release();
/**************************************************************************/
/* 程序结束时调用 */
CoUninitialize();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -