Android录音模块UML类图
2023-11-13 00:05:11 1 举报
在Android录音模块的UML类图中,主要包含三个核心类:AudioRecord、AudioTrack和MediaRecorder。AudioRecord负责从麦克风采集音频数据,AudioTrack负责将音频数据播放出来,MediaRecorder则是一个辅助类,用于控制录音的开始、停止和暂停等操作。这三个类之间通过回调函数进行通信,实现了录音的基本功能。此外,还包含一些辅助类,如AudioManager,用于管理音频资源的分配和使用;以及FileUtil,用于处理音频文件的存储和读取。整个类图结构清晰,各个类之间的关系明确,便于理解和实现。
作者其他创作
大纲/内容
音频播放类
音频编码基类
OnRecordCallback
OnRecordListener
秒表
录音进度回调
OnTimerPlayListener
+ void onPlayProgress(int time)
CountdownTimer
+ TimerTask timerTask
+ start()+ pause()+ stop()
AudioRecorder.OnRecordPositionUpdateListener
+ void onMarkerReached(AudioRecord recorder);+ void onPeriodicNotification(AudioRecord recorder);
Mp3EncoderThread
+ LameUtil lameUtil
+ encode()
AudioPlayMgr
+ OnPlayListener listener
+ play(String filePath)+ pausePlay()+ resumePlay()+ stopPlay()
音频数据采集线程
EncoderThread
+ List dataQueue+ OnRecordCallback callback
+ abstract encode()+ onMarkerReached()+ onPeriodicNotification+ addPcmData(PcmData data)+ pauseEncode+ stopEncode
录音结果回调
录音配置类
计时播放回调
OnPlayListener
PcmData
+ byte[] data+ int size
录音实体类
TimerAudioPlayMgr
+ CountdownTimer timer+ OnTimerPlayListener listener
mp3lame.so
音频数据采集通知
RecordOption
+ String filePath+ int formatType
计时录音管理类
Mp3编码工具类
计时录音回调
CollectPcmDataThread
+ OnRecordCallback callback
+ startRecord+ pauseRecord+ resumeRecord+ stopRecord+ checkPermission()
Mp3编码库
录音管理类
计时音频播放
Mp3编码线程
LameUtil
+ init()+ encode()+ flush()+ close()
倒计时
TimerVoiceRecordMgr
+ int maxDuration//设置最大时长
OnTimerRecordListener
+ onProgressRecord(int duration)
播放回调
录音帧数据
VoiceEntity
+ String filePath+ String format+ object extra
VoiceRecordMgr
+ CollectPcmDataThread recorder+ EncoderThread encoder+ OnRecordListener onRecordListener
+ startRecord(RecordOption option)+ pauseRecord()+ resumeRecord()+ stopRecord()
SecondTimer
0 条评论
下一页