MP3在Sony Ericsson K700上的音响效果

作者:lulei024 文章来源:http://developer.sonyericsson.com

MP3Sony Ericsson K700上的音响效果

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

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

采样率

8,000 Hz

电话机的品质

11,025 Hz

AM 调频收音机的品质

16,000 Hz

11 KHz22 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,你必须先把它转成8000hz16-bitwav格式的文件,然后你再用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){}
}
}

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){}
}
}

你可能感兴趣的:(音乐)