8541E-修改系统录音/播放都使用VOIP

简介: 笔记

查看声卡状态

//查看模拟声卡播放状态:
adb shell cat /proc/asound/card0/*/*/status
//查看VOIP声卡播放状态:
adb shell cat /proc/asound/card1/*/*/status

实例:

查看声卡顺序,每次开机注册顺序可能不一样,可以看到目前系统有三个声卡:
模拟声卡,打电话的声卡,voip声卡
1|sl8541e_1h10_32b:/ $ cat /proc/asound/cards
 0 [sprdphone      ]: sprdphone - sprdphone
                      sprdphone
 1 [saudiolte      ]: saudiolte - saudiolte
                      saudiolte
 2 [saudiovoip     ]: saudiovoip - saudiovoip
                      saudiovoip
待机:
sl8541e_1h10_32b:/ $ cat /proc/asound/card0/*/*/status
closed
closed
closed
closed
closed
closed
closed
closed
sl8541e_1h10_32b:/ $  cat /proc/asound/card1/*/*/status
closed
closed
closed
closed
讲话(录音):
sl8541e_1h10_32b:/ $ cat /proc/asound/card0/*/*/status
closed
closed
state: RUNNING
owner_pid   : 7264
trigger_time: 1666836399.469438708
tstamp      : 0.000000000
delay       : 0
avail       : 0
avail_max   : 0
-----
hw_ptr      : 0
appl_ptr    : 0
state: PREPARED
owner_pid   : 7264
trigger_time: 1666836399.468863862
tstamp      : 0.000000000
delay       : 0
avail       : 320
avail_max   : 0
-----
hw_ptr      : 0
appl_ptr    : 0
closed
closed
closed
closed
sl8541e_1h10_32b:/ $ cat /proc/asound/card1/*/*/status
closed
closed
closed
closed
收听(播放):
sl8541e_1h10_32b:/ $  cat /proc/asound/card0/*/*/status
closed
state: RUNNING
owner_pid   : 949
trigger_time: 1179.798942809
tstamp      : 1187.602456649
delay       : 1200
avail       : 720
avail_max   : 1360
-----
hw_ptr      : 344400
appl_ptr    : 345600
closed
closed
closed
closed
closed
closed
sl8541e_1h10_32b:/ $  cat /proc/asound/card1/*/*/status
closed
closed
closed
closed


昨晚修改后,VOIP通过LOG看已经打开,但是调试音频参数时发现通道似乎又切走了,再次分析日志。

下图是发起对讲:


20.png

image.png


发现VOIP打开后,又立即被关闭。

adb查看发起讲话时的声卡状态:

sl8541e_1h10_32b:/ # cat /proc/asound/cards
 0 [sprdphone      ]: sprdphone - sprdphone
                      sprdphone
 1 [saudiolte      ]: saudiolte - saudiolte
                      saudiolte
 2 [saudiovoip     ]: saudiovoip - saudiovoip
                      saudiovoip
sl8541e_1h10_32b:/ # cat /proc/asound/card1/*/*/status
closed
closed
closed
closed
sl8541e_1h10_32b:/ # cat /proc/asound/card0/*/*/status
state: RUNNING
owner_pid   : 4994
trigger_time: 1176.116787850
tstamp      : 1182.896760038
delay       : 0
avail       : 0
avail_max   : 320
-----
hw_ptr      : 54080
appl_ptr    : 54080
closed
closed
closed
closed
closed
closed
closed
sl8541e_1h10_32b:/ # cat /proc/asound/card2/*/*/status
closed
closed
closed
sl8541e_1h10_32b:/ #

结论是对讲中,模拟声卡起作用,VOIP声卡关闭,问题还是在软件上。


原因分析:


发起对讲的过程是:按下PTT后,开始录音(打开VOIP),同时播放提示音(打开VOIP),提示音播放完(关闭VOIP)。导致后续的录音VOIP关闭状态。

目录
相关文章
|
11月前
|
UED Python
利用requests库调整Session对象的超时设置
总的来说,设置requests库的Session对象的超时时间可以帮助你控制等待服务器响应的时间,让你的代码更健壮,就像设置了自动关机一样,保护了你的电视不会因为持续等待而损坏。只要牢记这些要点,并按照我们的指示进行操作,你就能有效地掌握这个技巧。
367 26
|
存储 Prometheus 监控
|
存储 算法 API
音视频同步的方法:深入探索基于FFmpeg的音视频同步策略(三)
音视频同步的方法:深入探索基于FFmpeg的音视频同步策略
747 1
|
Ubuntu Linux Python
update-alternatives --config python 为什么不能使用
【6月更文挑战第14天】update-alternatives --config python 为什么不能使用
630 1
|
Cloud Native Java Docker
java一分钟之-Docker化Java应用:Dockerfile与镜像构建
【6月更文挑战第6天】本文探讨了Docker在Java应用部署中的重要性,强调了Dockerfile在保证环境一致性和提升部署效率上的作用。Dockerfile是自动化构建Docker镜像的文本文件,它的使用能实现标准化、可重复性和透明度。文章指出了编写Dockerfile时的常见问题,如指令误用、镜像体积过大和安全性不足,并提供了相应的解决策略。通过一个Spring Boot应用的实战示例,展示了如何编写Dockerfile和构建镜像。总之,掌握Dockerfile和镜像构建技巧对于优化Java应用的云原生部署至关重要。
618 0
|
Java Android开发 开发者
rk3399 android以太网和wifi共存
rk3399 android以太网和wifi共存
737 0
|
机器学习/深度学习 算法 索引
【机器学习】特征选择之过滤式特征选择法
【机器学习】特征选择之过滤式特征选择法
1689 3
|
人工智能 JSON 前端开发
【AI的未来 - AI Agent系列】【MetaGPT】4. ActionNode从理论到实战
【AI的未来 - AI Agent系列】【MetaGPT】4. ActionNode从理论到实战
517 0
下一篇
开通oss服务