繁体   English   中英

在指定时间播放mp3文件

[英]play mp3 files at designated duration

我正在尝试制作一个可以通过MediaPlayer在指定时间播放mp3文件的应用

例如:

开始时间: 00 : 42

结束时间:01:23

我的问题是:

-是否可以通过textview以MM:SS格式指定开始时间和结束时间?

谢谢!!

是的,在启动MediaPlayer并加载文件后,可以在指定时间后暂停或停止播放器

while(mPlayer.isPlaying()) {
          if(mPlayer.getCurrentPosition() > 7254 && mPlayer.getCurrentPosition() < 7410 ){ 
              labelTxt.setText("Stop: " + mPlayer.getCurrentPosition() );
              mPlayer.stop();
              break;
          }
        }

使用此代码

 MediaPlayer mp;

Runnable stopPlayerTask = new Runnable(){
    @Override
    public void run() {
        mp.pause();
    }};

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    EditText etStartTime = (EditText)findViewById(R.id.edittext_start_time);
    EditText etEndTime = (EditText)findViewById(R.id.edittext_end_time);

    String StartTime = etStartTime.getText().toString();
    String EndTime = etEndTime.getText().toString();

    long min = Integer.parseInt(StartTime .substring(0, 2));
    long sec = Integer.parseInt(StartTime .substring(3));

    long minEnd = Integer.parseInt(StartTime .substring(0, 2));
    long secEnd = Integer.parseInt(StartTime .substring(3));

    long startLong = (min * 60L) + sec;
    long endLong = (minEnd * 60) + secEnd;
    int starIntTime = (int) startLong;
    int endIntTime = (int) endLong;


    mp = MediaPlayer.create(this, R.raw.my_sound_file);
    mp.seekTo(starIntTime);
    mp.start();

    Handler handler = new Handler();
    handler.postDelayed(stopPlayerTask, endIntTime);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM