『壹』 c語言如何播放背景音樂
一.在程序中直接播放聲音文件
在VC++ 中的多媒體動態連接庫中提供了一組與音頻設備有關的函數。利用這些函數可以方便地播放聲音。最簡單的播放聲音方法就是直接調用VC++中提供的聲音播放函數BOOL sndPlaySound ( LPCSTR lpszSound,UINT fuSound ); 或BOOL PlaySound( LPCSTR lpszSound, HMODULE hmod, DWORD fuSound );其中參數lpszSound是需要播放聲音的.W***文件的路徑和文件名, hmod在這里為NULL,fuSound是播放聲音的標志,詳細說明請參考VC++中的幫助。 例如播放C:soundmusic.wav可以用sndPlaySound ("c:\sound\music.wav",SND_ASYNC);或PlaySound("c:\sound\music.wav",NULL, SND_ASYNC|SND_NODEFAULT );如果沒有找到music.wav文件,第一種格式將播放系統默認的聲音,第二種格式不會播放系統默認的聲音。
二.將聲音文件加入到程序中
在VC++的程序設計中,可以利用各種標準的資源,如點陣圖,菜單,對話框等。同時VC++也允許用戶自定義資源,因此我們可以將聲音文件作為用戶自定義資源加入程序資源文件中,經過編譯連接生成EXE文件,實現無.W***文件的聲音播放。要實現作為資源的聲音文件的播放,首先要在資源管理器中加入待播放的聲音文件。
具體步驟入下:
1.獲得包含資源的模塊句柄:
HMODULE hmod=AfxGetResourceHandle();
2.檢索資源塊信息:
HRSRC hSndResource=FindResource(hmod,MAKEINTRESOURCE(IDR_W***E1),_T("W***E"));
3. 裝載資源數據並加鎖:
HGLOBAL hGlobalMem=LoadResource(hmod,hSndResource);
LPCTSTR lpMemSound=(LPCSTR)LockResource(hGlobalMem);
4.播放聲音文件:
sndPlaySound(lpMemSound,SND_MEMORY));
5.釋放資源句柄:
FreeResource(hGlobalMem);
『貳』 請問C語言中有沒有載入本地音樂的函數
C我不知道。
但是C++中可以使用 sndPlaySound("c:\**.wav",SND_ASYNC);實現非同步播放,其中"c:\**.wav"是你的音樂路徑,這是比較簡單的方法,但是有一個限制,就是只能播放wav格式的音樂,而且只能播放小於100KB的音樂。
如果要播放較大的音頻文件,你也可以使用MCI,相關資料建議你再網路一下。
『叄』 如何用C語言實現音樂播放
#include <stdio.h>
#include <windows.h>
int main()
{
mciSendString("open \"C:\\我們的愛.mp3\" alias file", NULL, 0, NULL);
mciSendString("play file", NULL, 0, NULL);
getchar();
}
『肆』 怎麼用c語言播放特定目錄里的wav文件
用C語言播放音樂,一般需要額外的庫或者調用系統的API函數。
以Windows為例,可以通過PlaySound函數播放wav格式的音樂。示例如下,代碼在vc6.0中編譯通過。
#include<stdio.h>
#include<windows.h>
#include<mmsystem.h>
#pragma
comment(lib,
"WINMM.LIB")
int
main()
{
PlaySound(TEXT("1.wav"),0,SND_FILENAME);
//1.wav是要播放的音樂文件
return
0;
}
如果想播放mp3音樂可以使用如下代碼。
注意:生成程序後,請在cmd中執行此程序,不要在vc/vs的IDE中運行。#include
<windows.h>
#include
<mmsystem.h>
#include
<stdio.h>
#pragma
comment(lib,
"Winmm.lib")
int
main(int
argc,
char
*argv[])
{
//絕對地址形式
TCHAR
fileName[]="ganlusi.mp3";
TCHAR
shortName[MAX_PATH];
GetShortPathName(fileName,shortName,sizeof(shortName)/sizeof(TCHAR));
TCHAR
cmd[MAX_PATH+10];
wsprintf(cmd,"play
%s",shortName);
mciSendString(cmd,NULL,
0,
NULL);
Sleep(5
*
60
*
1000);
//這里是防止一播放就結束做的延遲
return
0;
}
『伍』 在c語言程序中播放音樂
給你一個在VC下的例子:播放系統中關機音樂PlaySound(TEXT("C:\\Windows\\Media\\Windows XP 關機.wav"),NULL,SND_FILENAME|SND_ASYNC|SND_LOOP);
注意這個函數只能播放.wav格式的音樂,還有別忘了#include <mmsystem.h>
『陸』 怎樣用標准C語言播放音樂
用C語言播放音樂,一般需要額外的庫或者調用系統的API函數。
以Windows為例,可以通過PlaySound函數播放wav格式的音樂。示例如下:
#include<stdio.h>
#include<windows.h>
#include<mmsystem.h>
#pragmacomment(lib,"WINMM.LIB")
intmain()
{
PlaySound(TEXT("1.wav"),0,SND_FILENAME);//1.wav是要播放的音樂文件
return0;
}
如果想播放mp3音樂可以使用如下代碼。
注意:生成程序後,請在cmd中執行此程序,不要在vc/vs的IDE中運行。
#include<windows.h>
#include<mmsystem.h>
#include<stdio.h>
#pragmacomment(lib,"Winmm.lib")
intmain(intargc,char*argv[])
{
//絕對地址形式
TCHARfileName[]="ganlusi.mp3";
TCHARshortName[MAX_PATH];
GetShortPathName(fileName,shortName,sizeof(shortName)/sizeof(TCHAR));
TCHARcmd[MAX_PATH+10];
wsprintf(cmd,"play%s",shortName);
mciSendString(cmd,NULL,0,NULL);
Sleep(5*60*1000);//這里是防止一播放就結束做的延遲
return0;
}
『柒』 在項目文件夾中放入一段音樂如何使用c語言編譯器進行最簡單的播放
#include <windows.h>
int main(int argc, char *argv[])
{
//文件類型只能是WAV
PlaySound(TEXT("Data\\1.wav"), NULL, SND_FILENAME | SND_ASYNC | SND_LOOP);
Sleep(50000); //等待聲音播放
return 0;
}
********************************************
#include <windows.h>
int main(int argc, char *argv[])
{
//文件類型可以是:mp3、wav、avi等
mciSendString("play Data\\1.mp3", //MCI命令字元串
NULL, //存放反饋信息的緩沖區
0, //緩沖區的長度
NULL); //回調窗口的句柄,一般為NULL
Sleep(50000); //等待聲音播放
return 0;
}
****************** 基本結構這樣子的 ,你試試看,需要調試
『捌』 如何用c語言打開一個音樂文件,求詳細代碼和解釋,非常感謝。
這個必須使用系統的API,在Windows下,API可以直接打開AVI視頻文件,WAV聲音文件和BMP圖片文件。這些可以直接使用C語言實現。
打開AVI文件可以使用VFW的API
(系統自帶的)(還可以直接控制攝像頭)
WAV就很簡單了,只要包含了windows.h,就可以直接使用PlaySound
函數播放
BMP圖片,也可以使用VFW來顯示。使用VFW的時候,要包含vfw.h
這些你網路一下VFW就能找到圖片和視頻的例子,
網路PlaySound就能找到播放聲音的例子。
『玖』 如何用C語言播放音樂
首先要解壓縮音頻文件,這些文件的格式一般都是標准化的可以在網上面找到解壓方法.
然後把解壓得到的音頻數據輸出到音效卡,這里需要硬體I/O操作的知識.把數據送到特定的I/O埠,然後音效卡才能發聲.
『拾』 如何用C語言編程打開磁碟上的音樂文件
這個程序可能是最簡單的mp3播放器了。當然也談不上什麼功能。但是確實能播放。
鏈接時要指定庫文件。VC++是vfw32.lib, GCC是libvfw32.a.
我在VC6.0和GCC/MinGW 3.3.1下都通過了。
假設程序名是MyPlay, 目錄下還有一個aaa.mp3, 運行MyPlay aaa.mp3即可。
注意Sleep(50000)是讓他最多播放50秒。沒有Sleep()的話,窗口一閃就退出了。
具體的MCI函數請查有關資料。
#include
#include
int main(int argc, char* argv[])
{
if (argc>1) {
HWND MyPlayer = MCIWndCreate(NULL,GetMoleHandle(NULL), 0, argv[1]);
MCIWndPlay(MyPlayer);
Sleep(50000);
}
return 0;
}
這個程序還可以播放MIDI, AVI, WMV, MPG等影音文件。
如果只是後台播放MIDI或MP3,不想顯示那個沒有用的窗口,把MCIWndCreate()第三個參數0改成WS_POPUP即可。
如果想精確控制Sleep()至MP3播放結束,可以改成 Sleep(MCIWndGetLength(MyPlayer));
對於mp3, MCIWndGetLength()返回值的單位是毫秒,可以直接用於Sleep()延時。
對於mpg, MCIWndGetLength()返回值的單位是幀數,還要轉換成毫秒才能用於Sleep().
具體MCIWndGetLength()返回值的單位是什麼,可以調用MCIWndGetTimeFormat()來查詢。
>是C,不是C++ 更不是Vc++
你誤解了。VC6.0不只是支持C++, 也支持C. GCC更是C編譯器,不是C++編譯器。
這個程序是地地道道的C程序,沒有一丁點兒 C++ 的成分。但是他調用了Windows API函數,所以必須用支持Windows編程的32位C編譯器,不一定用VC或GCC。
很多人認為,剛學C語言最好用GCC或VC的命令行方式,但遺憾的大多教學用的C環境仍然選用20多年前的TC。如果堅持用16位的TC可以做一些事情,但在現在絕大多數事情是他做不到的