科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道详细介绍手机游戏中的声音处理

详细介绍手机游戏中的声音处理

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文是在同一个游戏中移植在不同机型时所做的对声音的处理,考虑到性能的要求,对每种类型的手机做了一定的要求

作者:中国IT实验室 来源:中国IT实验室 2007年9月22日

关键字: 手机

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共3页)

  public void playSound(EMSound sound, int count) {
    if (!soundEnable) {
      return;
    }
    try {
      if (soundPlaying) {
        stopSound();
      }
      if (soundPlayer == null) {
        soundPlayer = Manager.createPlayer(new ByteArrayInputStream(sound.data),
                                           sound.type);
        soundPlayer.addPlayerListener(soundListener);
        currentSound = null;
      }
      if (sound != currentSound) {
        soundPlayer.close();
        soundPlayer = Manager.createPlayer(new ByteArrayInputStream(sound.data),
                                           sound.type);
        currentSound = sound;
      }
      soundPlayer.start();
    }
    catch (Exception ex) {
      soundPlaying = false;
      System.out.println(ex.toString());
    }
  }

  public void stopSound() {
    if (!soundEnable) {
      return;
    }
    if (soundPlayer != null) {
      try {
        soundPlayer.stop();
      }
      catch (Exception e) {
        System.out.print(e.toString());
      }
    }
  }

  public boolean isSoundPlaying() {
    return soundPlaying;
  }

  public boolean isSoundEnable() {
    return soundEnable;
  }


3.读取mid文件

1)
import javax.microedition.media.*;


2)

  Player player;
  void initSound() {
    try {
      player = Manager.createPlayer(getStream("/sound/b_main.mid"),
                                    "audio/midi");
      player.realize();
      player.setLoopCount(100000);
    }
    catch (Exception e) {
      e.printStackTrace();
    }

  }

3) //在程序中对声音的控制

              m_playSound = (byte) (1 - m_playSound);
              if (m_playSound == 1) {
                try {
                  player.start();
                }
                catch (Exception e) {}
              }
              if (m_playSound == 0) {
                try {
                  player.stop();

                }

                catch (Exception e) {}
              }


///---------------end

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章