国产Linux音视频聊天程序开发遇到的坑及解决:相互听不到对方声音?

最近完成了一个银河麒麟上的视频聊天项目,在我们开发机上测试一切正常后,提交给甲方测试。结果发现在甲方的某些银河麒麟V10的电脑上,听不到声音。

这个问题,使用《Avalonia 实现跨平台的IM即时通讯、语音视频通话(源码,支持信创国产OS,统信、银河麒麟)》这个Demo就可以重现。

我们在客户的几台麒麟V10上做了各种测试,而同一台电脑,在某些情况下又是正常能听到声音的,这真是太奇怪了。

经过漫长的摸索排查,确认麦克风扬声器硬件没有问题,程序也没有问题,最后,终于找到了问题的根本所在。

经过反复测试,发现这个问题跟银河麒麟V10的系统的声音设置有关。

1. 将系统麦克风和扬声器的音量调到最大

如果扬声器音量没有开到最大,那么即使正常的语音数据提交给系统去播放,也是听不到声音的。如下图,将麦克风的声音设置为最大。

如果麦克风音量没有开到最大,那么采集到的麦克风声音数据都是静音数据(全0),这也解释了麦克风连接器连接是正常的,为什么听不到声音了,因为收到的声音数据全是0。

2. 在银河麒麟V10上,麦克风和扬声器设备是独占模式

如果打开了如上图所示的声音设置窗口,麦克风和扬声器就被系统独占了。此时,如果再运行我们音视频通话程序,程序打开麦克风和扬声器就会失败。

综上所述,在国产OS银河麒麟V10上,要想音视频通话正常,需要保证:麦克风和扬声器的音量开到最大,没有其它别的程序(包括系统设置面板)占用了麦克风和扬声器。

开发国产OS上的音视频程序这么久了,感觉跟之前windows相比,国产OS对音视频设备的支持还是差一些,还有一段距离。

相信国产OS越来越好,到最后完全取代掉windows。当然,这需要更多的人将国产OS用起来,现在国家正在大力支持信创这块,前途还是很乐观的。

相关推荐
CSharp精选营3 天前
.NET被上海信创“拉黑”了?刚子给你讲明白:别慌,这事儿没那么严重
c#·.net·信创
Jane - UTS 数据传输系统4 天前
立足国家“十五五”数智化战略大局,紧扣上海“2+3+6+6”产业布局,UTS数据传输系统筑牢数智化转型数据底座
大数据·人工智能·跨平台·信创·跨数据库·十五五·国产数据库适配
ModelHub XC信创模盒10 天前
中国信创AI生态下 “信创模盒”社区战略招募种子用户
人工智能·大模型·开发者·信创·算力
豆豆16 天前
学校CMS国产化选型指南:从核心标准到产品对比
cms·网站建设·网站制作·信创·建站·网站管理系统·学校网站
FORCECON116 天前
力控FinforWorx一体化管控平台,工业APP,动态扩展,支持国产化操作系统,赋能企业数字化转型
信创·web组态·scada·工业app·力控科技
Industio_触觉智能17 天前
【转载】2026数字中国信创赛道【开放原子电鸿专项赛】开启报名,触觉智能电鸿硬件
信创·openharmony·rk3568·国产化·开源鸿蒙·电鸿·电力鸿蒙
智擎软件测评小祺24 天前
信创适配测试报告,测什么、备什么?
信创·检测·cma·第三方检测·cnas·信创适配测试·信创适配测试报告
九章-24 天前
医疗系统数据库选型技术指南:从合规性到高性能的全方位考量
数据库·信创·医疗信创
豆豆1 个月前
PageAdmin信创网站建设与等保二级合规实施方案
cms·网站建设·网站制作·信创·等保·建站·网站管理系统
信创新态势1 个月前
本地部署,安全落地:联想开天 X7深度适配 OpenClaw,重塑国产 AIPC 新体验
信创·aipc·openclaw·养龙虾·龙虾教程