[RK3288][Android6.0] Audio播放时的pcm数据dump思路
来源:互联网 发布:淘宝天猫苏宁易购 编辑:程序博客网 时间:2024/06/06 02:20
Platform: Rockchip
OS: Android 6.0
Kernel: 3.10.92
其实这块RK已经写了,不过它的思路很好,即通过动态调节property而来决定是否需要dump data,这样的话在不用reboot的情况下就可以拿数据了,适合处理once的bug,其他模块也可以用这个思路。
OS: Android 6.0
Kernel: 3.10.92
其实这块RK已经写了,不过它的思路很好,即通过动态调节property而来决定是否需要dump data,这样的话在不用reboot的情况下就可以拿数据了,适合处理once的bug,其他模块也可以用这个思路。
static ssize_t out_write(struct audio_stream_out *stream, const void* buffer, size_t bytes){......//通过property来控制是否要dump pcm data property_get("media.audio.record", value, NULL); // prop_pcm = atoi(value); //非0的值决定要dump多少数据才停止,单位是M if (prop_pcm > 0) { dump_out_data(buffer, bytes, &prop_pcm); }......}dump_out_data():
static void dump_out_data(const void* buffer,size_t bytes, int *size) { ALOGD("dump pcm file."); static FILE* fd; static int offset = 0; if(fd == NULL) { fd=fopen("/data/debug.pcm","wb+"); if(fd == NULL) { ALOGD("DEBUG open /data/debug.pcm error =%d ,errno = %d",fd,errno); offset = 0; } } //写pcm数据 fwrite(buffer,bytes,1,fd); offset += bytes; fflush(fd); //比如size是1,那么就是1M后停止dump数据 if(offset >= (*size)*1024*1024) { *size = 0; fclose(fd); offset = 0; system("setprop media.audio.record 0"); ALOGD("TEST playback pcmfile end"); } }
阅读全文
1 0
- [RK3288][Android6.0] Audio播放时的pcm数据dump思路
- [RK3288][Android6.0] 调试笔记 --- Audio录音PCM数据抓取
- [RK3288][Android6.0] 调试笔记 --- display数据帧的dump
- [RK3288][Android6.0] Audio录音HAL层的数据读取流程分析
- [RK3288][Android6.0] Audio的ASOC驱动及数据结构
- [RK3288][Android6.0] Audio的DMA调用实例流程
- [RK3288][Android6.0] Audio的frame/period_size/bps_rate
- [RK3288][Android6.0] Audio的音量设置流程小结
- [RK3288][Android6.0] Audio的音量计算过程小结
- [RK3288][Android6.0] 调试笔记 --- Audio驱动层判断录音数据是否异常
- [RK3288][Android6.0] 调试笔记 --- RT5640播放时的Codec寄存器列表
- [RK3288][Android6.0] 调试笔记 --- UVC Camera jpg和yuv数据帧dump
- [RK3288][Android6.0] 调试笔记 --- 3GPP转成PCM格式
- Android5.1 Audio的FW和HAL层dump PCM数据
- [RK3288][Android6.0] Audio录音HAL层的初始化流程分析
- [RK3288][Android6.0] 调试笔记 --- Audio的Voice Call无法静音问题
- [RK3288][Android6.0] Audio中的单声道到双声道的转换处理过程
- [RK3288][Android6.0] 调试笔记 --- Audio分离DTMF tone引起的异常
- 获取枚举的对应值
- MFC动态创建控件并响应事件代码实现过程
- CentOS7.0基于hadoop集群安装配置Hive
- Spring JdbcTemplate详解
- dom4j 操作xml
- [RK3288][Android6.0] Audio播放时的pcm数据dump思路
- springmvc视图解析器.
- 下载服务端数据到本地保存为Excel
- angular指令:弹框点击空白处隐藏
- 二重循环解题思路
- 【报错】NoSuchElementException: null
- nsq源码分析(1):代码结构
- 不定期更新--lnmp配置各种坑的笔记
- [Python]Attempted relative import in non-package