我的目标是播放大型音频(有些持续20分钟,有些甚至1小时),耳机上没有音频失真。
我想知道在iOS设备上播放背景或睡眠模式的视频是否可行。
我有一些大的(如100mb每个大).mp3文件,我可以在后台修改Info.plist执行此操作:
<key>UIBackgroundModes</key>
<array>
<string>audio</string>
</array>
并且还在ti_app上执行此操作:
<iphone>
<backgroundModes>
<mode>audio</mode>
</backgroundModes>
</iphone>
并在player.js上添加此内容
Ti.Media.audioSessionMode = Ti.Media.AUDIO_SESSION_MODE_PLAYBACK;
它适用于.mp3文件。
但每当我插入耳机时,它听起来都是扭曲的。我使用SoundPlayer播放这些本地文件。
我尝试过使用AudioPlayer在本地播放它们(尝试在论坛上找到的东西),但似乎AudioPlayer只接受流媒体,而不是本地。我认为必须有一个解决方法,但我找不到一个。所以我决定将MP3文件转换成具有白色背景的视频文件。我目前正在使用VideoPlayer播放视频文件,具有透明背景颜色和1x1尺寸。到目前为止,它运行良好,因为即使使用耳机也不会失真。
但问题是音频不再在后台播放。我在论坛和互联网上搜索过,但我没有找到答案,所以我想我会问。
我认为这与使用AVAudioPlayer
播放的MP3文件有关,VideoPlayer会播放其他不接受在后台播放的内容。
我正在使用Titanium的Appcelerator,它是JavaScript中的API。所以我无法在C,C ++或类似的东西上编码。这只是JavaScript。