ios android mid音频文件,ios – 使用MusicPlayer和Music Sequence播放midi文件
我使用以下代码成功地让iOS使用soundfont示例播放.mid(midi)文件:
-(void) playMusic:(NSString*) name
{
NSString *presetURLPath = [[NSBundle mainBundle] pathForResource:@"GortsMiniPianoJ1" ofType:@"SF2"];
NSURL * presetURL = [NSURL fileURLWithPath:presetURLPath];
[self loadFromDLSOrSoundFont: (NSURL *)presetURL withPatch: (int)3];
NSString *midiFilePath = [[NSBundle mainBundle] pathForResource:name ofType:@"mid"];
NSURL * midiFileURL = [NSURL fileURLWithPath:midiFilePath];
NewMusicPlayer(&musicPlayer);
if (NewMusicSequence(&musicSequence) != noErr)
{
[NSException raise:@"play" format:@"Can't create MusicSequence"];
}
if(MusicSequenceFileLoad(musicSequence, (CFURLRef)midiFileURL, 0, 0 != noErr))
{
[NSException raise:@"play" format:@"Can't load MusicSequence"];
}
MusicPlayerSetSequence(musicPlayer, musicSequence);
MusicSequenceSetAUGraph(musicSequence, _processingGraph);
MusicPlayerPreroll(musicPlayer);
MusicPlayerStart(musicPlayer);
}
但是,当我在第一个文件仍在播放时尝试播放第二个文件时出现问题.
我尝试了很多变化.首先,上面的代码将同时播放两个轨道.或者,我尝试过:
DisposeMusicPlayer(musicPlayer);
DisposeMusicSequence(musicSequence);
在NewMusicPlayer(& musicPlayer)之前,但这会产生一个奇怪版本的曲调,只播放零星的音符.
我很乐意简单地调用这种方法,然后播放下一首曲目.
ios android mid音频文件,ios – 使用MusicPlayer和Music Sequence播放midi文件相关推荐
- ios android mid音频文件,iOS 录音 音频 视频 控制中心
录音 最近项目中需要录音功能,为此在写了一个录音的小模块. 首先需要添加AVFoundation.framework lame.h 帮助链接 下面直接上代码 #import #import #impo ...
- ios android跨服务器,阴阳师ios怎么转安卓 阴阳师跨系统角色转移服务介绍_游侠手游...
阴阳师ios怎么转安卓?阴阳师在2021年1月20日更新后开启了跨系统角色转移服务试行,那么本次跨系统角色转移的规则是什么样的,ios和安卓之间转换需要满足什么条件呢?接下来就让我们一起了解一下吧. ...
- Java播放midi文件及加载sf2音色库示例
最近折腾Java的MIDI功能,发现网上的教程大多只讲到怎么用Sequencer,更深入的比较难找,而且大都没的注释,于是自己踩坑无数,来这里发点稍微深入使用Java的MIDI功能的示例(嘛其实也没多 ...
- linux swf文件打开_如何在Linux上播放.swf文件?
linux swf文件打开 How to play the flash (.swf) files downloaded from the Web on Linux? 如何在Linux上播放从Web下载 ...
- 浏览器没办法播放html文件,ie浏览器使用video标签无法播放mp4文件
ie11浏览器,使用bottle.py提供文件浏览服务,html5浏览mp4视频,测试ie浏览器上无法播放,显示无效的视频源. 从网上下载了一个好的mp4文件,可以在ie浏览器上播放,问题应该在2个地 ...
- ios android 同步的备忘录,iOS 备忘录如何共享给好友编辑 / Android 如何实现下拉搜索 | 有轻功 #012...
「有轻功」是 AppSo 新栏目 它是「有用功」的迷你瘦身版 每天 10 秒钟 教你 1 个即学即用的手机技巧 微信号 appsolution 后台回复 「有轻功」获取该栏目的所有文章 这是第 12 ...
- 兼容iOS Android,React Native兼容iOS Android的TabBar
最近着手开发的一个兼容iOS.Android的TabBar.还在不断开发中! 欢迎fork,欢迎star. :p 自己捣鼓了个E文的readme,没啥难度凑合可看. react-native-tabs ...
- ios android与wp,在iOS与Android间选择WP
10月30日,微软发布了Windows Phone 8系统,并将在11月份开始发售相关搭载该系统的手机.在iOS.Android已经为广大用户所熟知的今天,WP8带来的的体验势必有所不同.其是否可以在 ...
- ios android app 混编,ios、android移动应用APP原生/混合定制开发
功能板块 - 注册模块 . 支付模块 . 工具类 . 个人中心 . 互动模块 . 新闻资讯模块 . 广告模块 . 通用模块 . 招聘模块 . 发单抢单 . 地图模块 . 聊天通讯 . 活动模块 . 电 ...
最新文章
- P3项目全球模板狗血设计之三 --- 发货到成本中心需要创建预留单
- C语言 · 求存款
- TreeView的异步延时加载
- 科技发烧友之单反佳能700d中高端
- HTML+CSS+JS实现 ❤️3D方块弹跳动画特效❤️
- oracle一体机flash卡,PCIe Flash卡设备的测试
- vertx:Flink报错 严重: Caught unexpected Throwable IllegalAccessError: tried to access class io.netty.uti
- python 模块定义_在python中定义私有模块函数
- 全新自助任务平台WQ源码对接微信带分类信息线报完美运营驴赚网全量开源发布
- WPS宏插件使用教程
- 常见的图标库有哪些?
- 如何优雅的在word打公式
- Window程序设计(一)
- unsteady_rel_perm案例学习
- js删除数组内多个指定下标的元素
- 计算机表演赛qq输入法,25届计算机表演赛命题搜索之中国文学篇.doc
- qq邮箱怎么添加学校邮箱
- JavaScript中6种继承方式总结
- 信息论基本概念-自信息、互信息、信息熵、信道容量
- JAVA 接收JSON数据,并进行转换处理