| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 531 人关注过本帖
标题:如何mic循环小弟在此求教
只看楼主 加入收藏
漂浮的显卡
Rank: 1
等 级:新手上路
帖 子:20
专家分:9
注 册:2015-12-5
结帖率:0
收藏
 问题点数:0 回复次数:13 
如何mic循环小弟在此求教
#include <windows.h>
#include <mmsystem.h>
#include <commctrl.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#pragma comment(lib, "winmm.lib")
int main()
{
char buf[50] = {0}; //存放错误信息
char cmd[100] = "open \"e:\\xx\\xx.mp3\" alias aa_music"; //这里xx是音乐文件路径
MCIERROR mciError;
int mp3_alltime = 0; mciError = mciSendString(cmd, buf, 50, NULL);
if (mciError)
{
printf("%s err1 \n", buf);
return 1;
}

//设置音量
mciSendString("setaudio aa_music to 500", NULL, 0, 0);

//播放音乐
mciError = mciSendString("play aa_music",NULL,0,NULL); //Play music
if (mciError)
{
printf("%s err2 \n", buf);
}

//获取该mp3文件的播放时间
char sPosition[256]; //存取当前播放音乐的总时间
mciSendString("status aa_music length",sPosition,255,0); mp3_alltime = atol(sPosition);
Sleep(mp3_alltime); //这个主要是起到让程序不会挂起,要不然直接结束了。
return 0;
}

网上查到是 play aa_music repeat
可是不行,各位大神告诉我下,应该怎么才能循环播放
2015-12-05 14:35
漂浮的显卡
Rank: 1
等 级:新手上路
帖 子:20
专家分:9
注 册:2015-12-5
收藏
得分:0 
没人吗?
2015-12-05 14:37
漂浮的显卡
Rank: 1
等 级:新手上路
帖 子:20
专家分:9
注 册:2015-12-5
收藏
得分:0 
帮帮忙啊
2015-12-05 14:44
漂浮的显卡
Rank: 1
等 级:新手上路
帖 子:20
专家分:9
注 册:2015-12-5
收藏
得分:0 
来人啊
2015-12-05 15:06
newdos
Rank: 9Rank: 9Rank: 9
等 级:禁止访问
威 望:6
帖 子:251
专家分:1169
注 册:2012-8-13
收藏
得分:0 
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
#include <mmsystem.h>

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

int main()
{
    char sPos[256];
    char *sStr = "open \"e:\\r1.mp3\" alias aa_music";

    mciSendString(sStr, 0, 0, NULL);
    mciSendString("play aa_music repeat", 0, 0, 0);
    for(;;)
    {
        mciSendString("status aa_music position",sPos,256,0);
        printf("%s\n", sPos);
        if(kbhit()) break;
    }
    return 0;
}

测试可以循环啊。。。正常得很。
2015-12-05 15:28
漂浮的显卡
Rank: 1
等 级:新手上路
帖 子:20
专家分:9
注 册:2015-12-5
收藏
得分:0 
回复 5楼 newdos
谢谢你谢谢你,谢谢你
2015-12-05 15:49
漂浮的显卡
Rank: 1
等 级:新手上路
帖 子:20
专家分:9
注 册:2015-12-5
收藏
得分:0 
回复 4楼 漂浮的显卡
不知道为什么,还是没声音,你用我程序试试看
2015-12-05 16:04
漂浮的显卡
Rank: 1
等 级:新手上路
帖 子:20
专家分:9
注 册:2015-12-5
收藏
得分:0 
回复 5楼 newdos
不知道为什么还是,不行。你试试看我的程序?在我的上面改动下呗。说实话,我是照着网上弄得,不是很会,只能了解个大概
2015-12-05 16:05
newdos
Rank: 9Rank: 9Rank: 9
等 级:禁止访问
威 望:6
帖 子:251
专家分:1169
注 册:2012-8-13
收藏
得分:0 
木有声音,多半是文件并木有打开,mciSendString返回错误代码,自己查msdn吧,拷贝mp3到对应盘上,修改open那里的路径呗,不用怀疑函数调用有问题,俺这里有声音且循环。但程序里不可能这么写,循环将引起阻塞问题,正确的方式是判断播放是否结束,然后再次播放,用户可能循环了几次又要换歌,如果你对c语言不够了解,还是先玩通,再碰api。
2015-12-05 16:29
漂浮的显卡
Rank: 1
等 级:新手上路
帖 子:20
专家分:9
注 册:2015-12-5
收藏
得分:0 
回复 9楼 newdos
那大神,我想问问,如果双线程,用playsound写一个同时播放2个音频文件的该怎么写,我们关于线程方面没深入的教,能不能写个简单的例子,我想学习下,关键我现在很需要一个同时能播放两个音频的代码,谢谢大神
2015-12-05 17:01
快速回复:如何mic循环小弟在此求教
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.043426 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved