文章分类 - Audio
摘要:frameworks/base/media/java/android/media/AudioService.java //direction 一般取1(音量+),0, -1(音量-) public void adjustSuggestedStreamVolume(int directi...
阅读全文
摘要:system/etc/audio_policy.conf# Global configuration section: lists input and output devices always present on the device# as well as the output device ...
阅读全文
摘要:AudioPolicyService和AudioPolicyManager结构关系AudioPolicyService中的具体实现实际都是AudioPolicyManager完成的 AudioPolicyManager连接 AudioPolicyServiceAudioPolicyManager中并
阅读全文
摘要:hardware/libhardware/include/hardware/hardware.htypedef struct hw_module_methods_t { /** Open a specific device */ int (*open)(const struct hw_m...
阅读全文
摘要:AudioPolicyInterface AudioPolicyClientInterfaceaudio_policy audio_policy_service_ops 两组互相对应hardware/libhardware/include/hardware/audio_policy.h//架构定...
阅读全文
摘要:enum output_type { OUTPUT_DEEP_BUF, // deep PCM buffers output stream OUTPUT_LOW_LATENCY, // low latency output stream OUTPUT_TOTAL};s...
阅读全文
摘要:http://blog.csdn.net/tjy1985/article/details/8051383 NuPlayerhttp://blog.csdn.net/tjy1985/article/details/7398193 视频音频播放http://blog.csdn.net/freechao/...
阅读全文
摘要:mediainfo用来查看音频文件相关信息$sudo apt-get install mediainfo$~/Music$ mediainfo cfy.mp3 GeneralComplete name : cfy.mp3Format : MPEG AudioFile size : 4.03 MiBD...
阅读全文
摘要:public class MainActivity extends Activity implements OnClickListener { private static final String TAG = "CM-MainActivity"; private MediaPlayer...
阅读全文
摘要:AudioPolicyService启动时会初始化一个AudioPolicyManagerBase这个类会解析audio_policy.conf,调用openOutput(), 将创建多个profile对应的output.---------------------------------------...
阅读全文
摘要:一般播放器模式:三个线程1.解码线程:audiotrack将数据解码出来往共享缓存写2.播放线程:AudioFlinger中的播放线程从共享缓存读取数据,然后往bsp写3.控制线程:控制视频和音频的播放,从而保持一致。status_t AwesomePlayer::prepareAsync_l() ...
阅读全文
摘要:在使用AudioFocus获取音频焦点时,这两个参数都可以获取焦点。但两个参数的解释却不一样public static final int AUDIOFOCUS_GAINUsed to indicate a gain of audio focus, or a request of audio foc...
阅读全文
摘要:音乐播放可以使用MediaPlayer.java或者AudioTrack.java这里我们讨论MediaPlayer.java播放音乐从上至下的过程。------------------------------------android播放音乐java层的流程:MediaPlayer mMediaP...
阅读全文
摘要:JNI函数注册有2种方式:静态注册,动态注册 android大部分是属于动态注册。 静态注册: JNI本身是使用C++语言实现,所谓静态注册就是直接去声明引用外部的某个函数,用静态代码来注册。 javah命令是用于根据JAVA本地方法,生成对应的c语言头文件及相应的stub文件的命令 下面举例来说明
阅读全文