- 博客(6)
- 收藏
- 关注
原创 Android Audio System
参考:http://blog.csdn.net/droidphone/article/details/5941344 引子 Android Framework的音频子系统中,每一个音频流对应着一个AudioTrack类的一个实例,每个AudioTrack会在创建时注册到AudioFlinger中,由AudioFlinger把所有的AudioTrack进行混合(Mixer),然后输送到Audio
2011-10-31 16:38:25 1151
原创 multimedia framework
Java端发起调用,MediaPlayer会转至MediaPlayerService,在mediaserver进程中创建一个client,然后通过client调用相应的解码工具解码后创建AudioTrack,所有待输出的AudioTrack在AudioFlinger::AudioMixer里合成,然后通过AudioHAL(AudioHardwareInterface的实际实现者)传至实际的硬件来实
2011-10-19 15:11:28 1030
转载 Android中的sp和wp指针
Android中定义了两种智能指针类型,一种是强指针sp(strong pointer),一种是弱指针(weak pointer)。其实称为强引用和弱引用更合适一些。强指针与一般意义的智能指针概念相同,通过引用计数来记录有多少使用者在使用一个对象,如果所有使 用者都放弃了对该对象
2011-10-19 15:10:15 334
原创 工作记录
pthread_mutex可以实现进程互斥 pthread_mutexattr_setpshared(&attr, PTHREAD_PROCESS_SHARED); inline Mutex::Mutex() { pthread_mutex_init(&mMutex, NULL); } inline Mutex::Mutex(const char* name) {
2011-10-12 12:53:45 568
转载 setjmp和longjmp函数
int setjmp(jmp_buf jmpb) 设置缓冲区来保存堆栈的内容,将保存的上下文存入进程的自身的数据空间(u区),并继续在当前的上下文中执行,一旦碰到了longjmp,进城就从该进程 的u区,取出先前保存的上下文,并恢复该进程的上下文为先前保存的上下文。这时核心将使得
2011-10-07 21:23:18 256
转载 linux查看系统信息命令
有些在freebsd下也能用… # uname -a # 查看内核/操作系统/CPU信息 #cat /proc/version # 查看内核 # cat /etc/issue # 查看操作系统版本 # head -n 1 /e
2011-10-07 21:16:21 393
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人