gpt4 book ai didi

android - Soundpool mediaplayer 或其他在 Android 上播放短声音文件的方法

转载 作者:行者123 更新时间:2023-11-30 02:53:52 24 4
gpt4 key购买 nike

我需要创建一个非常简单的乐器应用程序。只有 7 个按钮和 7 个音符,一架简单的钢琴。我下载了 7 个不同的短 wav 文件。我需要通过单击按钮来播放它们。当我松开按钮时,声音应该会停止。我知道这应该很容易,但我试过的样本没有用。有很多 soundpool 和 mediaplayer 代码示例,但是当我尝试它们时它们不起作用,我不确定这是因为我下载的声音文件还是其他原因。在我的研究过程中,我发现了这个例子

Playing short .wav files - Android

但这并没有帮助。我已经从这个网站下载了笔记

https://www.freesound.org/people/pinkyfinger/sounds/68448/

并将它们上传到原始文件夹。我该如何玩它们?

根据链接,这是更新后的代码,但它在大约 20 次点击后停止播放。

package com.example.playaudio;

import android.app.Activity;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;


public class MainActivity extends Activity implements OnClickListener{
private MediaPlayer mp;
private MediaPlayer mp2;
private MediaPlayer mp3;
private MediaPlayer mp4;
private MediaPlayer mp5;
private MediaPlayer mp6;
private MediaPlayer mp7;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setVolumeControlStream(AudioManager.STREAM_MUSIC);
Button button1=(Button)findViewById(R.id.button_1);
Button button2=(Button)findViewById(R.id.button_2);
Button button3=(Button)findViewById(R.id.button_3);
Button button4=(Button)findViewById(R.id.button_4);
Button button5=(Button)findViewById(R.id.button_5);
Button button6=(Button)findViewById(R.id.button_6);
Button button7=(Button)findViewById(R.id.button_7);

button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
button4.setOnClickListener(this);
button5.setOnClickListener(this);
button6.setOnClickListener(this);
button7.setOnClickListener(this);

}

public void onClick(View v) {
int resId;
int resId2;
int resId3;
int resId4;
int resId5;
int resId6;
int resId7;


switch (v.getId()) {
case R.id.button_1:
resId = R.raw.a;
mp = MediaPlayer.create(this, resId);

mp.start();
break;
case R.id.button_2:
resId2 = R.raw.b;
mp2 = MediaPlayer.create(this, resId2);
mp2.start();
break;
case R.id.button_3:
resId3 = R.raw.c;
mp3 = MediaPlayer.create(this, resId3);
mp3.start();
break;
case R.id.button_4:
resId4 = R.raw.d;
mp4 = MediaPlayer.create(this, resId4);
mp4.start();
break;
case R.id.button_5:
resId5 = R.raw.e;
mp5 = MediaPlayer.create(this, resId5);
mp5.start();
break;
case R.id.button_6:
resId6 = R.raw.f;
mp6 = MediaPlayer.create(this, resId6);
mp6.start();
break;
case R.id.button_7:
resId7 = R.raw.p;
mp7 = MediaPlayer.create(this, resId7);
mp7.start();
break;

}


}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}



}

最佳答案

点击按钮使用本教程 Sound Buttons

或者这个Playing audio

它们都很有帮助,应该是您要找的。

关于android - Soundpool mediaplayer 或其他在 Android 上播放短声音文件的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23663781/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com