Android:如何为我的应用播放的任何音乐文件创建淡入/淡出音效? [英] Android: How to create fade-in/fade-out sound effects for any music file that my app plays?

查看:19
本文介绍了Android:如何为我的应用播放的任何音乐文件创建淡入/淡出音效?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用的应用程序播放音乐文件.如果计时器到期,我希望音乐淡出.我怎么做.我正在使用 MediaPlayer 播放音乐,音乐文件存在于我的应用程序的原始文件夹中.

The application that I am working on plays music files. If a timer expires I want the music to fade out. How do I do that. I am using MediaPlayer to play music and music files are present in raw folder of my application.

推荐答案

一种方法是使用 MediaPlayer.setVolume(right, left) 并在每次迭代后使这些值递减..这是一个粗略的想法

One way to do it is to use MediaPlayer.setVolume(right, left) and have these values decrement after every iteration..here is a rough idea

float volume = 1;
float speed = 0.05f;

public void FadeOut(float deltaTime)
{
    mediaPlayer.setVolume(volume, volume);
    volume -= speed* deltaTime

}
public void FadeIn(float deltaTime)
{
    mediaPlayer.setVolume(volume, volume);
    volume += speed* deltaTime

}

FadeIn()FadeOut() 应在您的此计时器到期后调用.该方法不需要采用 deltaTime,但它会更好,因为它会在所有设备上以相同的速率降低音量.

The FadeIn() or FadeOut() should be called once this timer of yours has expired. The method doesn't need to take the deltaTime, but it's better as it will lower the volume at the same rate across all devices.

这篇关于Android:如何为我的应用播放的任何音乐文件创建淡入/淡出音效?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆