【问题标题】:Audio composition using Windows Phone 8.1 media editing APIs使用 Windows Phone 8.1 媒体编辑 API 进行音频合成
【发布时间】:2014-08-23 07:32:34
【问题描述】:

我想在 Windows Phone 8.1 应用程序中加入多个真实录音的 AAC 音频文件。实际上我想要录音中的暂停/恢复功能。在 MP3 编码中,我可以简单地加入缓冲区以组合音频文件,但在 AAC 的情况下它不起作用。 MP3 编码配置文件在 Windows Phone 8.1 中不可用。我以为MediaComposition 会帮助我拼接录音,但我遇到了例外。

我首先尝试从音频文件创建MediaClip 对象,但我得到ArgumentException 和消息Source can not be audio file。然后我尝试从音频文件创建BackgroundAudioTrack 对象并添加到MediaComposition。然后我尝试使用这些方法cvMediaElement.SetMediaStreamSource(comp.GenerateMediaStreamSource());cvMediaElement.SetMediaStreamSource(comp.GeneratePreviewMediaStreamSource(100, 100)); 将源设置为MediaElement,两者都抛出ArgumentException 和消息The parameter is incorrect. 这里有人指出我正确的方法吗?

【问题讨论】:

    标签: c# audio windows-runtime media windows-phone-8.1


    【解决方案1】:

    我知道这是一个老问题,但我想如果在搜索过程中发现它,我会为您和其他人回答。

    如您所见,Windows Phone 8.1 的 MediaComposition 不直接支持音频剪辑。这已针对 Windows 10 进行了修复(MediaComposition 本身现在是通用 Windows 平台的一部分,因此您可以在许多平台上使用它)。

    对于 Windows Phone 8.1,该问题可能与 BackgroundAudioTracks 不规定乐曲“内容”(本身)的长度这一事实有关。为此,您可能需要先添加一个空白 MediaClip。例如,您可以从黑色创建一个 MediaClip (MediaClip.CreateFromColor),并让它与背景音轨的总长度一样长。这应该让它在 Windows Phone 8.1 上按预期工作。

    如果您在 Windows 10 上试一试后仍然遇到任何这些问题,请告诉我,我可以提交一些错误 :)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多