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关闭状态。

目录
相关文章
|
数据采集 前端开发 Android开发
Android平台RTMP推送或GB28181设备接入端如何实现采集audio音量放大?
我们在做Android平台RTMP推送和GB28181设备对接的时候,遇到这样的问题,有的设备,麦克风采集出来的audio,音量过高或过低,特别是有些设备,采集到的麦克风声音过低,导致播放端听不清前端采集的audio,这时候,就需要针对采集到的audio,做音量放大处理。
|
语音技术
FreeSwitch中音乐功能保持和静音回铃声怎样设置
FreeSwitch中音乐功能保持和静音回铃声怎样设置
|
7天前
|
安全 API 开发工具
Android平台RTMP推送|轻量级RTSP服务如何实现麦克风|扬声器声音采集切换
Android平台扬声器播放声音的采集,在无纸化同屏等场景下,意义很大,早期低版本的Android设备,是没法直接采集扬声器audio的(从Android 10开始支持),所以,如果需要采集扬声器audio,需要先做系统版本判断,添加相应的权限。
|
5月前
|
API C++ Windows
c++实现waveinopen录音功能
这是一个简单的C++示例,使用 `waveInOpen`函数来录制音频数据,然后通过回调函数 `waveInProc`处理录音数据。需要注意的是,实际使用中可能需要更多的错误处理和资源管理。同时,这个示例是基于Windows的,使用了Windows Multimedia API来进行音频录制。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
96 0
|
存储 编解码 缓存
海康摄像头开发笔记(一):连接防爆摄像头、配置摄像头网段、设置rtsp码流、播放rtsp流、获取rtsp流、调优rtsp流播放延迟以及录像存储
Hik防爆摄像头录像,因为防爆摄像头会有对应的APP软件,与普通的网络摄像头和球机不一样,默认认为它不可以通过web网页配置,所以弄了个来实测确认。经测试实际上也是可以通过web网页配置(与网络摄像头基本是一致的,在码流方面可能会有些不一样),然后提取rtsp流的,界面与球机无异,只是没有球机的云台控制功能,但是界面上也是有的。
海康摄像头开发笔记(一):连接防爆摄像头、配置摄像头网段、设置rtsp码流、播放rtsp流、获取rtsp流、调优rtsp流播放延迟以及录像存储
|
编解码 开发工具 C#
RTSP/RTMP播放端录像不可忽视的几个设计要点
很多开发者提到,拉取的摄像机(一般RTSP流)或RTMP流,如果需要录制,需要考虑哪些因素,本文以大牛直播SDK的Windows平台拉流端录像为例(github),做个简单的介绍:
154 0
|
存储 视频直播
FreeSwitch中的录像和录音设置
FreeSwitch中的录像和录音设置
FreeSWITCH在呼叫失败的情况下如何播放语音提示
看到好多网友问到这个问题。一般我们在打电话时会听到“您拨的电话正在通话中,请稍后再拨….”,或“电话无应答…”之类的提示,我们在 freeswitch 里也可以这样做。
【FFmpeg】ffplay 播放视频命令 ( 播放 | 暂停 | 停止 | 音量控制 | 进度控制 | 音频流 / 视频流 / 字幕流 / 节目切换 )(二)
【FFmpeg】ffplay 播放视频命令 ( 播放 | 暂停 | 停止 | 音量控制 | 进度控制 | 音频流 / 视频流 / 字幕流 / 节目切换 )(二)
816 0
【FFmpeg】ffplay 播放视频命令 ( 播放 | 暂停 | 停止 | 音量控制 | 进度控制 | 音频流 / 视频流 / 字幕流 / 节目切换 )(二)