c語言播放mp3
『壹』 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語言中PlaySound函數如何播放MP3文件
可以使用PlaySound()函數播放聲音文件,
該函數原型位於#include <mmsystem.h>中,
因此要使用PlaySound,首先需要添加對這個頭文件的引用。
提示:mm就是MultiMedia的簡寫,多媒體
【1、函數使用說明】
函數原型為: BOOL PlaySound(LPCSTR pszSound, HMODULE hmod,DWORD fdwSound);
返回值表示是否播放成功。
參數pszSound是要播放聲音的文件名,
只支持WAV等格式的文件(應該不能播放MP3格式文件);
你可以去mp3..com用「wav」為關鍵詞可以搜到很多wav音樂,
也可以用工具將其他格式的轉換為wav格式的。
參數hmod是應用程序的實例句柄,一般傳遞NULL就可以;
參數fdwSound是標志的組合掩碼,
可選值有SND_FILENAME、SND_ASYNC、SND_SYNC等。
SND_FILENAME表示pszSound參數指定的是文件名(pszSound還可以指定資源、內存音樂、系統音樂等等);
SND_ASYNC:用非同步方式播放聲音,PlaySound函數在開始播放後立即返回;
SND_SYNC:同步播放聲音,在播放完後PlaySound函數才返回;
SND_LOOP一遍遍的重復播放聲音,必須與SND_ASYNC標志一塊使用。
【2、使用舉例】
PlaySound(TEXT("C:\\WINDOWS\\Media\\Windows XP 啟
動.wav"),NULL,SND_FILENAME|SND_SYNC);
注意的問題:文件名中的反斜線要用「\\」,
因為C語言中「\」默認是轉義符,
如果要表示「\」則需要使用「\\」,
對這點不明白的請回去翻一下C語言的書;
對中文字元串要使用TEXT宏。
『叄』 C語言播放音樂!
|給,這個是我在VC上運行確認OK的:回
#include <iostream>
#pragma comment(lib,"winmm.lib")
#include <windows.h>
using namespace std;
int main()
{
答PlaySound("C:\\music.wav",NULL,SND_FILENAME|SND_ASYNC|SND_LOOP);
system("PAUSE");
return 0;
}
『肆』 c語言播放MP3 API函數是什麼 怎麼用
建議參考這個:http://..com/question/41366091.html 裡面有說到如何播放mp3文件的函數,及其說明。
『伍』 用C語言播放音樂
這么高難度的問題 您連個分都不給~太不厚道了~~估計沒人給你答~
『陸』 如何用C語言播放指定目錄下的MP3文件格式的音樂,要代碼實現,可以是簡單的代碼,但必須要能夠實現哈。
#include <stdio.h>
#include <windows.h>
#pragma comment(lib, "winmm.lib")
int main()
{
mciSendString("open \"C:\\我們的愛.mp3\" alias file", NULL, 0, NULL);
mciSendString("play file", NULL, 0, NULL);
return 0;
}
/*
不是我寫得 在網上找的...這個程序 主要就是call mciSendString函數, 好像沒什麼參考意義, 因為如何解碼是別人寫好的... 你想寫解碼mp3的函數 不可能用簡單代碼的
*/
『柒』 怎樣用標准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>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
unsigned frequency[100];
char hight[100];
unsigned time[100];
unsigned rate;
void main()
{
void set(unsigned f[],char h[],unsigned t[],int r,int num);
void music(unsigned f[],unsigned t[],int num);
int flag=0;
FILE *f1;
int i,n,menu;
char FileName[30];
while(1)
{ f1=NULL;
i=n=0;
printf("本程序採用編碼的形式播放音樂。\n");
printf("\n用記事本編輯樂譜,然後通過輸入文件名播放音樂\n");
printf("樂譜文件可以自創,也可以抄別人的\n");
printf("\n現在可以先輸入數字再按回車播放音樂:\n");
printf("1 播放指定音樂music1\n");
printf("2 播放指定音樂music2\n");
printf("3 通過程序文件名播放音樂\n");
printf("4 退出\n");
while(1)
{
printf("menu=");scanf("%d",&menu);
if(menu==1)
{
strcpy(FileName,"music1.txt");
break;
}
if(menu==2)
{
strcpy(FileName,"music2.txt");
break;
}
if(menu==3)
{
scanf("%s",FileName);
break;
}
if(menu==4)
exit(0);
}
printf("\n該文件的音樂編碼如下:\n");
if((f1=fopen(FileName,"r"))==NULL)
{
printf("不能打開文件!\n");
exit(1);
}
fscanf(f1,"%d",&rate);
while(!feof(f1)&&flag!=1)
{
fscanf(f1," %d%c%d",&frequency[i],&hight[i],&time[i]);
printf(" %d%c%d",frequency[i],hight[i],time[i]);
if(time[i]!=-1)
{
i++;n++;
}
else
flag=1;
}
printf("\n");
set(frequency,hight,time,rate,n);
music(frequency,time,n);
fclose(f1);
}
getch();
}
void set(unsigned f[],char h[],unsigned t[],int r,int num)
{
int i,k;
for(i=0;i<num;i++)
{
t[i]=t[i]*r;
switch(h[i])
{
case 'H':k=4;break;
case 'M':k=2;break;
case 'L':k=1;
}
switch(f[i])
{
case 1: f[i]=262*k; break;
case 2: f[i]=296*k; break;
case 3: f[i]=330*k; break;
case 4: f[i]=349*k; break;
case 5: f[i]=392*k; break;
case 6: f[i]=440*k; break;
case 7: f[i]=494*k; break;
}
}
}
void music(unsigned f[],unsigned t[],int num)
{
int i;
for(i=0;i<num;i++)
{
Beep(f[i],t[i]);
}
}
『玖』 在c語言程序中播放音樂
|給你一個在VC下的例子:播放系統中關機音樂PlaySound(TEXT("C:\\Windows\\Media\\Windows XP 關機.wav"),NULL,SND_FILENAME|SND_ASYNC|SND_LOOP);
注意這個函數只能播放.wav格式的音樂,還有別忘了#include <mmsystem.h>
『拾』 C語言如何播放mp3格式音樂
windows現有的API似乎只支持播放.wav格式的音頻,mp3格式恐怕你得再去網上找找開源代碼
//播放音頻"1.wav"
#include<stdio.h>
#include<windows.h>
#pragmacomment(lib,"winmm.lib")
intmain()
{
PlaySound("1.wav",NULL,SND_FILENAME|SND_ASYNC|SND_LOOP);
getchar();
return0;
}