首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

c++播MP3,该怎么处理

2013-01-08 
c++播MP3各位,小弟想问一下怎样写段c++代码播放mp3格式的歌曲???[解决办法]你使用MFC的框架的ActiveX就可

c++播MP3
各位,小弟想问一下怎样写段c++代码播放mp3格式的歌曲???
[解决办法]
你使用MFC的框架的ActiveX就可以实现了。
[解决办法]

#ifndef _PLAY_SOUND_H__
#define _PLAY_SOUND_H__

#include <string>
using namespace std;

class playSound
{
public:
playSound();
~playSound();

void doFunc( wstring soundPath );
};

#endif

#include <Windows.h>
#include <MMSystem.h>
#include "playSound.h"

#pragma comment( lib , "Winmm.lib" )

playSound::playSound()
{

}

playSound::~playSound()
{

}

void playSound::doFunc( wstring soundPath )
{
wchar_t   buf[128];   
 
    MCI_OPEN_PARMS   mciOpen;   
    MCIERROR   mciError;   
    //mciOpen.lpstrDeviceType   =   (LPCTSTR)MCI_ALL_DEVICE_ID;   
    //mciOpen.lpstrDeviceType   =   "waveaudio";   //只能播放.wav文件   
    //mciOpen.lpstrDeviceType   =   "avivideo";     //*.avi   
    mciOpen.lpstrDeviceType   =   L"mpegvideo";
mciOpen.lpstrElementName   =  soundPath.c_str();   

    mciError   =   mciSendCommand(0,MCI_OPEN,MCI_OPEN_TYPE   
[解决办法]
   MCI_OPEN_ELEMENT,(DWORD)&mciOpen);   
    if(mciError)   
    {   
        mciGetErrorString(mciError,buf,128);   
        MessageBoxA(NULL ,"send MCI_PLAY command failed", "ERROR" , MB_OK
[解决办法]
MB_TOPMOST );    
        return;   
    }   
    UINT   DeviceID   =   mciOpen.wDeviceID   ;   
    MCI_PLAY_PARMS   mciPlay;   

    mciError   =   mciSendCommand(DeviceID, MCI_PLAY, MCI_WAIT , 
        (DWORD)   (LPMCI_PLAY_PARMS)&mciPlay);  //MCI_DGV_PLAY_REPEAT, 要 #include "Digitalv.h"
    if(mciError)   
    { 
        mciGetErrorString(mciError,buf,128);     
        MessageBoxA( NULL ,"send MCI_PLAY command failed", "ERROR" , MB_OK
[解决办法]
MB_TOPMOST );   
        return;   


    }   

}


上面的是.h和.cpp的代码,楼主可以直接用了
[解决办法]
我擦。。。我想告诉你libMPG123了
[解决办法]
MCI接口,播放简单的视频,音频都可以
[解决办法]
其实2楼只是调用了一个库里面的函数而已。建议楼主还是自己多研究下播放器什么的。

热点排行