服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

mp3在sony ericsson k700上的音响效果

mp3sony ericsson k700上的音响效果

 

在midlets中,通过使用mp3文件,可以在很大程度上改善音效。这篇小技巧和后面一个附带源代码的midlet程序将会向你指出如何去做。

像任何以采样为基础的声音播放一样,mp3播放的音质很大程度上依赖于采样率。下面的内容说明了人们在主观上对一些常见的不同采样率的mp3音质的评价。

 

采样率

8,000 hz

电话机的品质

11,025 hz

am 调频收音机的品质

16,000 hz

在11 khz和22 khz之间的折中音质

22,050 hz

接近 fm 收音机的品质

32,075 hz

比 fm 收音机的品质好一些

44,100 hz

cd 音质

48,000 hz

dat 音质

 

另一个影响因素是单独采样的比特分辨率,选择8比特的分辨率将可以提供256级展示效果,如果选择16比特那么可以提供65k级的效果。为了获得高质量的mp3文件,我们最好存储为一下格式:

22,050 hz, 16-bit resolution, mono, 40kbps
44,100 hz. 16-bit resolution, mono, 64kbps

 

创建一个20秒的mp3文件,在22.050khz频率下的大小为99kb,在44.1khz采样率下为158kb。如果把他们转换成amr格式的,大小为27kb,但是音质有所下降。如果你想把mp3转成amr,你必须先把它转成8000hz,16-bit的wav格式的文件,然后你再用amr converter 来转换成amr格式的文件。amr格式的文件的采样率只有8khz,它可以很好的应用在人声上,mp3更适合听音乐。你可以从这里下载amr converter

 

用mmapi播放mp3文件还算简单,读者应该注意创建player的时候mp3的内容类型应该是audio/mpeg。如果创建其他的媒体类型的播放器请参考下面的列表:

  1. wave audio files: audio/x-wav
  2. au audio files: audio/basic
  3. mp3 audio files: audio/mpeg
  4. midi files: audio/midi
  5. tone sequences: audio/x-tone-seq
  6. mpeg video files: video/mpeg

下面是播放mp3的例子:

inputstream is = getclass().getresourceasstream("/example.mp3");
try{
            player = manager.createplayer(is, "audio/mpeg");
player.start();
}catch(exception e){}

 

需要更多关于k700上声音的信息,请参阅sony ericsson j2me developers’ guidelines和 jsr-135 文档。

 

 

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.media.*;

import javax.microedition.io.*;
import java.io.*;

public class mp3 extends midlet {
    public void startapp() {
        musicplayer mp = new musicplayer();
        mp.playmp3();
    }
   
    public void pauseapp() {
    }
   
    public void destroyapp(boolean unconditional) {
    }
}

class musicplayer{

    private player player = null;
    private runtime rt;

    public musicplayer(){
        rt = runtime.getruntime();
    }

    public void playmp3(){
        inputstream is = getclass().getresourceasstream("/discuss.mp3");
        try{
            player = manager.createplayer(is, "audio/mpeg");
            player.start();
        }catch(exception e){}
    }
}

扫描关注微信公众号