微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

向“移动应用程序 (Xamarin.Forms)”项目中的 MediaPlayer 添加混响效果

如何解决向“移动应用程序 (Xamarin.Forms)”项目中的 MediaPlayer 添加混响效果

我在 Xamarin 项目中创建了一个 MP3 播放器,它播放得很好。我添加了调整音高和速度的功能,但我无法将混响效果带到我的 MediaPlayer。

我在 Kotlin 和 Java 中找到了各种示例,其中包含创建 PresetReverbEnvironmentalReverb 方法所需的代码。 >

虽然我的 C# 代码运行并没有产生任何错误,但使用任何一种方法都不会应用混响效果。我是 Xamarin 和 Android 的新手,所以我希望得到一些帮助。

这是我的代码

MediaPlayer _mediaPlayer = new MediaPlayer();

AssetFileDescriptor fd = global::Android.App.Application.Context.Assets.OpenFd(fileName);

#region REVERB

PresetReverb presetReverb = new PresetReverb(1,0); // was set to _mediaPlayer.AudioSessionId
presetReverb.Preset = PresetReverb.PresetLargeroom;
presetReverb.SetEnabled(true);
_mediaPlayer.AttachAuxEffect(presetReverb.Id);
_mediaPlayer.SetAuxEffectSendLevel(1.0f);

#endregion

_mediaPlayer.SetDataSource(fd.FileDescriptor,fd.StartOffset,fd.Length);
_mediaPlayer.Prepare();
_mediaPlayer.Start();

任何想法/建议将不胜感激。

解决方法

您可以尝试使用 Audio session 0 而不是 AudioSessionId

  PresetReverb presetReverb = new PresetReverb(1,0);
            presetReverb.Preset = PresetReverb.PresetLargehall;
            presetReverb.SetEnabled(true);
            _mediaPlayer.AttachAuxEffect(presetReverb.Id);
            _mediaPlayer.SetAuxEffectSendLevel(1.0f);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。