Audio中underrun与overrun问题解决(十八)
解决 十八 Audio 问题
2023-09-14 09:09:53 时间
CPU控制DMA传输数据步骤:
(1)外设可通过DMA控制器向CPU发出DMA请求:
(2)CPU响应DMA请求,系统转变为DMA工作方式,并把总线控制权交给DMA控制器;
(3)由DMA控制器发送存储器地址,并决定传送数据块的长度;
(4)执行DMA传送;
(5)DMA操作结束,并把总线控制权交还CPU。
linux错误码定义:
#define EPIPE 32 /* Broken pipe */
1.播放pcm时,snd_pcm_lib_write() 返回 -EPIPE,为underrun问题(上层write慢了,底层没数据了)。
播放时音频的时候会有-EPIPE的错误,因为驱动buffer没有数据可以丢给codec所致.
就是上层给下面喂数据的速度慢了,底层不到充足的数据,所以给上层返回一个-EPIPE错误出来。
2.录制音频时,s
相关文章
- 公众号:请勿插入非mp/weixin.qq.com的域名链接 解决
- 【已解决】ShardingSphere 使用记录,ShardingException: Can not update sharding key, logic table: [user_log]解决
- 器利而工善丨移动开发平台如何解决开发者的吐槽?
- MySQL数据库错误1064解决方法(mysql错误1064)
- 解决Oracle数据库显示格式化问题(oracle显示格式化)
- Linux Grub引导:完美解决系统启动问题(linuxgrub引导)
- Postfix邮箱常见的退信报错及解决方法
- MySQL权限转移故障排除解决无法转授权问题(mysql不能转授权)
- 职场新人必学Redis面试题解决技巧(redis面试题解决方法)
- 解决Oracle 04045错误的有效方法25字小贴士(oracle 04045)
- javascript中onmouse事件在div中失效问题的解决方法
- 解决jquery异步按一定的时间间隔刷新问题