没有合适的资源?快使用搜索试试~ 我知道了~
首页android的audio图解
资源详情
资源评论
资源推荐

Android 之 Audio 图解 作者:王军锋
1
6
Media Recorder
Recorder
Device
Frameworks
Kernel
Media Player
Audio Manager
ToneGenerator
ToneGenerator
OpenCore
Native
AudioCodec
Application
AudioHardwareXXXX
Alsa-util
Alsa-lib
AudioSystem
AudioHardwareInterface
AudioDriver
AudioPolicyInterface
3,4
Player
Application
Audio结构图,黄色为重点
AudioFlinger
1,2,5
AudioPolicyManagerXXXX
1
*
1
*
AudioService
AudioPolicyService
A2dpAudioInterface
AudioTrack
AudioTrack AudioRecord
MicrophoneInputStream
Ringtone
MediaPlayerService
SoundPool
SoundPool
AudioMixer
AudioResample
AudioStreamOut AudioStreamIn
Android_media
_AudioTrack
Audiosource
XXXXRecorder
C++ application C++ application

Android 之 Audio 图解 作者:王军锋
2
6
Media Recorder
AAC/AMR/3gp
Recorder
Device
Frameworks
Kernel
StagefrightRecorder
Native
AudioCodec
Application
AudioHardwareALSA
Alsa-util
Alsa-lib
AudioSource
AudioHardwareInterface
AudioDriver
AudioPolicyInterface
3,4
录音流程
AudioSystem
1
AudioPolicyManagerBase
1
*
1
*
AudioPolicyService
MediaRecorderClient
PVMediaRecorder
OMXCodec
MediaSource
AMRWriter
Amr File
AudioRecord
IAudioRecord
BnAudioRecord
AudioCodec
PVAuthorEngine
AuthorDriver
1
*
MicrophoneInputStream
WAV Recorder
A2dpAudioInterface
AudioFlinger
AudioStreamInALSA
1,2,5

Android 之 Audio 图解 作者:王军锋
3
AudioTrack
AudioSystem AudioPolicyService AudioPolicyInterface AudioPolicyManager
getStrategy()
getDeviceForStrategy()
setParameters()
parameterCommand()
AudioCommandThread::threadLoop()
AudioCommandThread::insetCommand_l()
alsa_default
s_route(deivce,mode)
alsa-libALSAStreamOpsAudioStreamOutALSA
result
alsa-lib
遍历
MixerThread::threadLoop()
MixerThread::threadLoop()
standby()
ThreadBase::setParameters()
write()
write()
open()/close()
snd_pcm_*
MixerThread::checkForNewParameters_l()
setParameters() setParameters()
open(device,mode) snd_pcm_*
standby()
audioHardwareALSA
ALSAMixer
getAnalogLoop()
setAnalogLoop()
startOutput() startOutput() startOutput()
setParameters()
setParameters()
setParameters()
IBinder.transact(SET_PARAMETERS)
setStreamVolume()......
applyStreamVolumes()
AudioPolicyClientInterface
setStreamVolume()
setStreamVolume() setStreamVolume()
AudioTrack.java
Android_media_AudioTrack.
cpp
native_setup()
AudioTrack
android_media_AudioTrack_native_setup()
new AudioTrack(streamType,sampleRate,channel,mode)
剩余12页未读,继续阅读
















安全验证
文档复制为VIP权益,开通VIP直接复制

评论7