您的位置:首页 > 其它

录音计时的实现方法

2015-11-09 19:56 417 查看
录音中需要显示录音长度,显示需要按S

录音start的时候记下当时的时间

mStartTimeStamp = System.currentTimeMillis();


mStartTimeStamp 为录音开始时间。

录音的时间通过Handler发送。times为和开始时间的差距。

long currentTimeStamp = System.currentTimeMillis();
long times = currentTimeStamp - mStartTimeStamp;


AudioConst.TIMERVIEW_UPDATE_INTERVAL = 1000,计算出来delayError 为误差。一般在10以内。timeDelay一般就为除掉误差后发送消息的时间。

long delayError = (times % AudioConst.TIMERVIEW_UPDATE_INTERVAL);
long timeDelay = AudioConst.TIMERVIEW_UPDATE_INTERVAL - delayError;

mHandler.sendEmptyMessageDelayed(ActivityHandler.CMD_REFRESH, timeDelay);


如果录音暂停了。需要记下当前文件的时长。

mPauseRecordingInfo.SampleLength = MediaUtils.getDuration(mSampleFile);


times的时间需要加上

times = currentTimeStamp - mStartTimeStamp +  mPauseRecordingInfo.SampleLength;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: