社区
高通开发者论坛
帖子详情
brew编程 mp3播放问题
WE微笑
2012-09-26 09:27:15
用ISound创建的设置音频源不能同时播放多个mp3?就像多线程一样,几个MP3同时播放
...全文
1751
2
打赏
收藏
brew编程 mp3播放问题
用ISound创建的设置音频源不能同时播放多个mp3?就像多线程一样,几个MP3同时播放
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
WE微笑
2012-10-12
打赏
举报
回复
我用IMedia接口以及AEEMediaUtil中的方法自动创建media。在我的TestDemo中可以正常的同时播放3个音乐:代码如下:
media.cpp
---------------------------------
Media::Media(BMainApp * pApp,char * name):m_pApp(pApp)
{
this->bContinue=TRUE;
data.clsData=MMD_FILE_NAME;
data.pData = name;
AEEMediaUtil_CreateMedia(m_pApp->m_pIShell,&data,&this->pIMedia);
}
------------------------------------
void Media ::Play()
{
IMedia_Play(pIMedia);
}
-------------------------------------
下面是创建即播放
-------------------------------------
main.cpp 部分代码
-------------------------------------
handleEvent(AEEEvent eCode,uint16 wParam,uint32 dwParam)
{
...
Media *pMedia1,*pMedia2,*pMedia3;//Media是我自定义的类,用于创建、播放、释放IMedia
switch(eCode)
case EVT_KEY_PRESS:
//播放声音
if(wParam == AVK_SELECT)
{
pMedia1 = new Media(this,MUSIC_URL);//从文件直接读取
pMedia1->Play();
}
if (wParam == AVK_2)
{
pMedia2 = new Media(this,1);//播放第一首,从资源文件读取
pMedia2->Play();
}
if (wParam == AVK_3)
{
pMedia3 = new Media(this,"./resource/jiangnan_Style.mp3");
pMedia3->Play();
}
if (wParam == AVK_4)
{
//pMedia1->bContinue=FALSE;
pMedia1->Stop();
}
if (wParam == AVK_5)
{
pMedia1->Resume();
}
Update();
return (TRUE);
break;
...
}
----------------------------------------
以上代码 可以同时正常播放3首,不管是mid还是MP3。
-----------------------------------------
但是,将次方式移植到另外的一个工程,用
mediaData.clsData = MMD_FILE_NAME;
mediaData.pData = "gu.mid";
//mediaData.dwSize = 65535;
AEEMediaUtil_CreateMedia(m_pIShell,&mediaData,&this->pIMedia)来创建IMedia接口失败,返回状态码为:1
两个工程用的是同一配置的模拟器,播放的是同一音频文件,为什么就失败呢?我测试出来是pIMedia地址没有被改变,又想到是mediaData的问题,把路径设置为绝对路径或者相对路径都是相同结果,好吧,我凌乱了。难道是m_pIShell有问题?m_pIShell是由主入口函数传过来的IShell指针,不会有问题的。
困惑中,望解。
strayedbird
2012-09-26
打赏
举报
回复
音频播放一般不用ISound了,用IMedia
IMedia有多个音频同步播放技术,但是对同时播放的音频格式有要求,编码简单的可以同时播放,复杂的不可以,mp3算是复杂的,所以不可以。
一个
brew
的
MP3
播放
器,供大家一起学习
回调函数是在特定事件发生时被调用的函数,例如在
MP3
播放
时,可能有一个回调函数用于更新
播放
进度,显示已
播放
的时间。这里的“显示时间==”可能是表示
播放
器具有实时显示当前
播放
时间和总时间的功能,确保用户了解...
BREW
简单的音乐
播放
器
4. **音乐格式支持**:
播放
器需要能够识别并
播放
常见的音乐格式,如
MP3
或WAV。这可能涉及到对不同音频格式的解码支持,或者依赖于
BREW
平台上已有的音频解码库。 5. **内存管理**:在资源有限的移动设备上,有效的...
Brew
播放
器源码
1. **音频解码**:
BREW
播放
器需要支持各种音频格式,如
MP3
、WAV等。这需要实现对应的音频解码器,将音频文件的编码数据转化为原始的PCM(脉冲编码调制)数据,以便于硬件进行
播放
。 2. **内存管理**:由于移动设备...
Brew
Mediaplayer example
在实践中,你可能还需要考虑性能优化,如后台
播放
、内存管理以及与UI交互的同步等
问题
。 总之,"
Brew
Mediaplayer example"为我们提供了一个很好的起点,展示了如何在
Brew
平台上使用API来实现音频
播放
功能。通过...
emacs
播放
Mp3
文件
Emacs是一款强大的文本编辑器,它不仅仅用于
编程
和文档编辑,还支持许多额外的功能,包括
播放
音频文件。在Emacs中
播放
MP3
文件涉及到几个关键组件和技术,这将是我们讨论的重点。 首先,我们需要理解Emacs的扩展性。...
高通开发者论坛
4,662
社区成员
5,850
社区内容
发帖
与我相关
我的任务
高通开发者论坛
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
复制链接
扫一扫
分享
社区描述
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
人工智能
物联网
机器学习
技术论坛(原bbs)
北京·东城区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章