将混响效果添加到项目中的媒体播放器'Mobile App (Xamarin.Forms)'



我在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();

如有任何想法/建议,我们将不胜感激。

您可以尝试音频会话0而不是AudioSessionId

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

相关内容

  • 没有找到相关文章

最新更新