1

我的目标是播放大型音频(有些是最后 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 文件转换为视频文件,具有白色背景。我目前正在使用具有透明背景颜色和 1x1 尺寸的 VideoPlayer 播放视频文件。到目前为止,它运行良好,即使使用耳机也不会失真。

但问题是音频不再在后台播放。我在论坛和互联网上搜索过,但我没有找到答案,所以我想我会问。

我认为这与播放 MP3 文件有关AVAudioPlayer,而 VideoPlayer 播放其他不接受在后台播放的东西。

我正在使用 Titanium 的 Appcelerator,它是 JavaScript 中的一个 API。所以我不能在 C 或 C++ 或类似的东西上编码。这只是 JavaScript。

4

0 回答 0