「java游戏配乐」配音乐的游戏
本篇文章给大家谈谈java游戏配乐,以及配音乐的游戏对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、用java 如何在游戏中插入音乐
- 2、用Java编写了个小游戏想给游戏加上背景音乐用什么方法
- 3、游戏中如何用Java添加音乐
- 4、我用JAVA写好了一个窗体游戏,怎么加背景音乐?
- 5、我用Java写了个贪吃蛇的小游戏想在游戏中加入背景音乐等等各种音效应该用什么方法?
- 6、java做小游戏,怎么给游戏加背景音乐?? 请附上代码,希望添加背景音乐代码能简短些!谢谢。。
用java 如何在游戏中插入音乐
java好像只支持wav格式的音乐文件,你可以用 格式化工厂 转换一下。。再用下面代码:
import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.net.URI;
import java.net.URL;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class f extends JFrame implements ActionListener {
private static final String AudioClip = null;
private JButton Oj;
private JButton Oj1;
AudioClip clip =null;
File musicFile;
URI uri;
URL url;
private void f() throws InterruptedException{
musicFile = new File("/zxc.wav");
uri = musicFile.toURI();
try {
url = uri.toURL();
} catch (Exception e) {
}
clip=Applet.newAudioClip(url);
//clip.play();
}
f() {
this.setSize(800, 600);
this.setResizable(false);
JPanel p = new JPanel();
this.setContentPane(p);
this.setVisible(true);
Oj = new JButton("开始");
Oj1 = new JButton("结束");
this.setVisible(true);
Oj.addActionListener(this);
Oj1.addActionListener(this);
this.add(Oj);
this.add(Oj1);
}
public static void main(String[] args) throws InterruptedException {
f ff=new f();
ff.f();
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if (e.getSource() == Oj) {
play();
} else if (e.getSource() == Oj1) {
stop();
//System.exit(0);
}
}
public void play() {
if (clip != null)
( (java.applet.AudioClip) clip).play();
}
public void stop() {
if (clip != null)
( (java.applet.AudioClip) clip).stop();
}
}
用Java编写了个小游戏想给游戏加上背景音乐用什么方法
播放音乐的代码 了解一下 可以直接加到小游戏里
package com.music.test;
import javazoom.jl.decoder.JavaLayerException;
import javazoom.jl.player.Player;
import java.io.*;
public class Music {
private String music;
private Player player;
public Music() throws FileNotFoundException, JavaLayerException {
FileInputStream file = new FileInputStream("e:/闹钟.mp3");
BufferedInputStream name = new BufferedInputStream(file);
player = new Player(name);
player.play();
}
public static void main(String[] args) throws FileNotFoundException, JavaLayerException{
new Music();
}
}
游戏中如何用Java添加音乐
音乐也有格式,你什么都不说也不知道你要哪种.另外是j2se还是j2me你也没说,都是java,差别大了去了.
这是我自己写的一个MIDI和Wav的管理类,有载入播放停止等等,但是音量和节拍管理没有,要想实现高级功能最好使用jmf,基于j2se:
import java.io.File;
import java.io.IOException;
import java.util.Vector;
import App.AppFrameBase;
import javax.sound.midi.MidiSystem;
import java.applet.AudioClip;
import java.applet.Applet;
import javax.sound.midi.Sequence;
import javax.sound.midi.InvalidMidiDataException;
import java.net.URL;
import java.net.MalformedURLException;
import javax.sound.midi.Sequencer;
import javax.sound.midi.MidiUnavailableException;
public class AudioHelper
{
public Sequencer MIDIPlayer ;
public AudioClip WAVPlayer ;
public Vector m_vAudio = new Vector() ;
private int m_nCurrentMidiIndex = -1 ;
private int m_nCurrentWavIndex = -1 ;
public AudioHelper()
{
//读取系统声音列表
try
{
MIDIPlayer = MidiSystem.getSequencer();
m_vAudio = findSound() ;
} catch (MidiUnavailableException ex){ex.printStackTrace();}
}
public static final Vector findSound()
{
String path = AppFrameBase.getApplicationDirectory() ;
File file = new File(path + "/Data/Audio/") ;
Vector v = new Vector() ;
File[] fileList = file.listFiles();
for(int i = 0 ; i fileList.length ; i++)
if (fileList[i].isFile())
v.addElement(fileList[i].getName());
return v ;
}
public static final Sequence loadSound(String name)
{
String path = AppFrameBase.getApplicationDirectory() + "/Data/Audio/" + name ;
return loadSoundAsPath(path) ;
}
public static final Sequence loadSoundAsPath(String path)
{
try
{
return MidiSystem.getSequence(new File(path));
} catch (IOException ex)
{
ex.printStackTrace();
return null;
} catch (InvalidMidiDataException ex)
{
ex.printStackTrace();
return null;
}
}
public final String getSoundPath(int index)
{
if (index 0 || index = m_vAudio.size())
return null ;
return m_vAudio.elementAt(index).toString() ;
}
public static final AudioClip loadAudioClip(String name)
{
String path = AppFrameBase.getApplicationDirectory() ;
return loadAudioClipAsPath(path + "/Data/Audio/" + name) ;
}
public static final AudioClip loadAudioClipAsPath(String path)
{
try
{
return Applet.newAudioClip(new URL("file:" + path));
} catch (MalformedURLException ex)
{
return null;
}
}
public void stopSound()
{
stopMIDI() ;
stopWAV() ;
}
public void stopMIDI()
{
if (MIDIPlayer != null)
{
if (MIDIPlayer.isRunning())
MIDIPlayer.stop();
}
}
public void notifyStopMIDI()
{
stopMIDI() ;
if (MIDIPlayer != null)
if (MIDIPlayer.isOpen())
MIDIPlayer.close();
}
public void stopWAV()
{
if (WAVPlayer != null)
WAVPlayer.stop() ;
}
public void loopMIDI(boolean loop)
{
if (MIDIPlayer != null)
if (loop)
{
MIDIPlayer.setLoopCount(Sequencer.LOOP_CONTINUOUSLY);
} else
{
MIDIPlayer.setLoopCount(0);
}
}
public void loopWAV(boolean loop)
{
if (WAVPlayer != null)
if (loop)
WAVPlayer.loop() ;
else
WAVPlayer.play() ;
}
public void playSound(int index,boolean loop)
{
String name = getSoundPath(index) ;
if (name == null)
throw new IndexOutOfBoundsException("Sound index " + index + " is out of current sound index max!") ;
try
{
if (isMidiFile(name))
{
if (m_nCurrentMidiIndex != index || (m_nCurrentMidiIndex == index !MIDIPlayer.isRunning()))
{
stopMIDI();
if (m_nCurrentMidiIndex != index)
{
Sequence se = loadSound(name);
MIDIPlayer.setSequence(se);
}
MIDIPlayer.open();
loopMIDI(loop);
MIDIPlayer.start();
m_nCurrentMidiIndex = index ;
}
} else
if (isWavFile(name))
{
if (m_nCurrentWavIndex != index)
{
WAVPlayer = AudioHelper.loadAudioClip(name);
m_nCurrentWavIndex = index ;
}
if (WAVPlayer != null)
{
WAVPlayer.stop();
if (loop)
WAVPlayer.loop() ;
else
WAVPlayer.play();
}
}
} catch (InvalidMidiDataException ex)
{
ex.printStackTrace();
} catch (MidiUnavailableException ex)
{
ex.printStackTrace();
}
}
public static final boolean isMidiFile(String name)
{
return name.indexOf(".mid") != -1 ;
}
public static final boolean isWavFile(String name)
{
return name.indexOf(".wav") != -1 ;
}
}
我用JAVA写好了一个窗体游戏,怎么加背景音乐?
复制粘贴,采纳即可。
import java.applet.AudioClip;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import javax.imageio.ImageIO;
import javax.swing.JApplet;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Keygame
{
private final static int WIDTH = 800;
private final static int HEIGHT = 600;
public static void main ( String[] args )
{
JFrame jFrame = new JFrame ();
jFrame.setTitle ("指法练习");
jFrame.setBounds (300, 50, WIDTH, HEIGHT);
jFrame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
Mypanel mp = new Mypanel (WIDTH, HEIGHT);
jFrame.add (mp);
Thread thread = new Thread (mp);
thread.start ();
jFrame.addKeyListener (mp);
jFrame.setVisible (true);
}
}
class Mypanel extends JPanel implements Runnable, KeyListener
{
private static final long serialVersionUID = 1L;
int width, height;
int x[] = new int[10];
int y[] = new int[10];
char c[] = new char[10];
int score = 1000;
Image bgImage;
AudioClip christmas = loadSound ("christmas.wav");
public Mypanel ( int width, int height )
{
this.width = width;
this.height = height;
try
{
bgImage = ImageIO.read (new File ("christmas.jpg"));
}
catch (IOException e)
{
e.printStackTrace ();
}
for ( int i = 0; i 10; i++ )
{
x[i] = (int) ( Math.random () * 800 );
y[i] = (int) ( Math.random () * 600 );
c[i] = (char) ( Math.random () * 26 + 97 );
}
christmas.loop ();
}
public void paint ( Graphics g )
{
super.paint (g);
g.drawImage (bgImage, 0, 0, width, height, this);
g.setFont (new Font (Font.DIALOG, Font.BOLD, 17));
for ( int i = 0; i 10; i++ )
{
g.setColor (Color.WHITE);
g.drawString (new Character (c[i]).toString (), x[i], y[i]);
g.setColor (Color.green);
g.drawString ("score: " + score, 5, 15);
}
g.dispose ();
}
public void run ()
{
while (true)
{
for ( int i = 0; i 10; i++ )
{
y[i]++;
if (y[i] 800)
{
y[i] = 0;
x[i] = (int) ( Math.random () * 600 );
c[i] = (char) ( Math.random () * 26 + 97 );
score -= 10;
}
}
try
{
Thread.sleep (10);
}
catch (Exception e0000)
{
e0000.printStackTrace ();
}
repaint ();
}
}
public AudioClip loadSound ( String filename )
{
URL url = null;
try
{
url = new URL ("file:" + filename);
}
catch (MalformedURLException e)
{}
return JApplet.newAudioClip (url);
}
@Override
public void keyPressed ( KeyEvent e )
{
char keyChar = e.getKeyChar ();
int nowY = -1;
int index = -1;
for ( int i = 0; i 10; i++ )
{
if (keyChar == c[i])
{
if (y[i] nowY)
{
nowY = y[i];
index = i;
}
score += 10;
}
}
if (index != -1)
{
y[index] = 0;
x[index] = (int) ( Math.random () * 800 );
c[index] = (char) ( Math.random () * 26 + 97 );
}
}
@Override
public void keyReleased ( KeyEvent e )
{}
@Override
public void keyTyped ( KeyEvent e )
{}
}
我用Java写了个贪吃蛇的小游戏想在游戏中加入背景音乐等等各种音效应该用什么方法?
背景音乐最简单
首先准备一个背景音乐的音频文件例如:
audio src="./mp3/xx.mp3" controls="controls" preload id="music" hidden /audio
在打开游戏的时候就用JS触发,其他音效也是一样的
先准备好音频文件,当某个节点触发后读取这条对应的音频文件就可以了!
java做小游戏,怎么给游戏加背景音乐?? 请附上代码,希望添加背景音乐代码能简短些!谢谢。。
//主程序部分
audioPlayWave = new myMusicPlay("1.wav");// 开音乐
audioPlayWave.start();
musicOpenLab = 1;
//音乐子类(都是苦命的孩子,要互利互惠啊)
import java.io.File;
import java.io.IOException;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.FloatControl;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.SourceDataLine;
import javax.sound.sampled.UnsupportedAudioFileException;
public class myMusicPlay extends Thread {
private String fileName;
private final int EXTERNAL_BUFFER_SIZE = 524288;
public myMusicPlay(String wavFile) {
this.fileName = wavFile;
}
public void run() {
File soundFile = new File(fileName); // 播放音乐的文件名
if (!soundFile.exists()) {
System.err.println("Wave file not found:" + fileName);
return;
}
while (true) { // 设置循环播放
AudioInputStream audioInputStream = null; // 创建音频输入流对象
try {
audioInputStream = AudioSystem.getAudioInputStream(soundFile); // 创建音频对象
} catch (UnsupportedAudioFileException e1) {
e1.printStackTrace();
return;
} catch (IOException e1) {
e1.printStackTrace();
return;
}
AudioFormat format = audioInputStream.getFormat(); // 音频格式
SourceDataLine auline = null; // 源数据线
DataLine.Info info = new DataLine.Info(SourceDataLine.class, format);
try {
auline = (SourceDataLine) AudioSystem.getLine(info);
auline.open(format);
} catch (LineUnavailableException e) {
e.printStackTrace();
return;
} catch (Exception e) {
e.printStackTrace();
return;
}
if (auline.isControlSupported(FloatControl.Type.PAN)) {
FloatControl pan = (FloatControl) auline
.getControl(FloatControl.Type.PAN);
}
auline.start();
int nBytesRead = 0;
byte[] abData = new byte[EXTERNAL_BUFFER_SIZE];
try {
while (nBytesRead != -1) {
nBytesRead = audioInputStream
.read(abData, 0, abData.length);
if (nBytesRead = 0)
auline.write(abData, 0, nBytesRead);
}
} catch (IOException e) {
e.printStackTrace();
return;
} finally {
auline.drain();
// auline.close();
}
}
}
}
关于java游戏配乐和配音乐的游戏的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-04,除非注明,否则均为
原创文章,转载请注明出处。