- 2024-07-28记最近一次紧张的sip客户端问题排查
我司开发了一个sip软电话客户端(sip协议常用于网络音视频通讯),基于开源的linphonesdk,使用C#CPF框架开发,.netcore运行时。有windows版本和uos版本。windows版本之前说是要支持视频,CPF里面支持视频只找到一个办法,就是NativeElement控件使用winform的pictureBox来显示,只能用4.x版本的
- 2024-07-03linphone 回声消除
声学回声消除是通过消除或者移除本地话筒中拾取到的远端的音频信号来阻止远端的声音返回去的一种处理方法。linphone上使用speex库实现了回声消除插件,speex库是目前开源的声学回声消除做的比较好的库。下面总结一下,linphone上的回声消除部分。 第一部分--配置linphone的声
- 2024-07-03Linphone 配置参数(噪音调试)
1,先找到跟语音相关的参数,其实有很多归纳一下无非就是回声消除参数、回声抑制参数、噪声处理参数、均衡器参数4个。2,要了解参数的用途。花费了一周时间还是值得的。agc=0 #这个是自动增益,试过=1会啸叫echocancellation=1#回声消除这个必须=1,否则会听到自己说话的声音ec_tail_len
- 2023-11-23linphone Sdk 无法听到声音
2023-10-2500:02:42,155.App.OnLog(belle-sip)udp_listening_point:recvfrom()failedon[sip:0.0.0.0:63579;transport=UDP],:[操作成功完成。]reopeningserversocket2023-10-2500:02:42,218.App.OnLog(belle-sip)udp_listening_point:recvfrom()failedon[sip:0
- 2023-10-27linphone Sdk 无法听到声音
2023-10-2500:02:42,155.App.OnLog(belle-sip)udp_listening_point:recvfrom()failedon[sip:0.0.0.0:63579;transport=UDP],:[操作成功完成。]reopeningserversocket2023-10-2500:02:42,218.App.OnLog(belle-sip)udp_listening_point:recvfrom()failedon[sip:
- 2023-08-03LinphoneSDK v 5.2.94 使用方法
前提vs2022 wpfLinphoneSDK的获取途径有两种1 下载 linphonesdk.5.2.94.nupkghttps://gitlab.linphone.org/BC/public/linphone-sdk/-/packages/然后引用 这里是没有dll的,只是引用了LinphoneWrapper.cs2 下载zip包https://download.linphone.org/releases/windows/sd
- 2023-06-19linphone 录音
MakeCall()CallParamscallParams=core.CreateCallParams(null);stringpath=WriteLog.GetCurDir()+"\\record\\"+DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss",DateTimeFormatInfo.InvariantInfo)+"-out"+txtdial.Text
- 2023-06-02Android上试用Linphone(Free SIP VOIP Client)
1.下载Linphoneapk并且安装到两个Android手机上[url]http://www.linphone.org/eng/download/packages/android.html[/url]2.申请两个免费的SIP帐号进行测试[url]https://www.ekiga.net/[/url]3.在每个Android手机上分别配置Linphone应用程序点
- 2023-06-02linphone-linphonecore_jni.h文件分析
说明linphone主要的功能逻辑基本都是C/C++语言实现的,这时候在Android端就必须要用到JNI了,这里并不是要分析JNI怎样使用的逻辑,这里有几篇文章是java部分JNI的官方说明。这份说明并没有怎样说怎么样配置Android的JNI环境,只是说了语法部分java-jni-01-Introductionjava-jni-02-Des
- 2023-06-01linphone-sdk-android网络检测分析
原文 linphone-sdk-android网络检测分析-掘金(juejin.cn)前言好久没写linphone-sdk-android相关的文章了,上一篇文章还是一个月之前,经过上次修改linphone-sdk-android后最近没有啥问题发生,本文记录下之前遇到的linphone网络问题的坑。注:笔者的App作为Launcher
- 2023-05-29linphone-LinphoneManager.java文件分析
介绍本篇主要是对个人对LinphoneManger类的理解及对上面的注释,这是对linphone研究的一个开始.会慢慢对linphone逐步分析,随着时间的推进,我会对linphone有进一步的了解,希望希望了解的同学能跟上我的脚步.简介LinphoneManager类是Linphone的主要操作管理类.主要功能:官方/***
- 2023-05-29linphone-去掉HistoryListFragment界面
说明HistoryListFragment界面包括:1.拨打电话记录2.未接听记录3.修改记录看图HistoryListFragment主界面修改拨打记录界面好,开始去掉这个界面需要分析的点每次拨打记录是怎样形成的。记录还可以分日期显示一组。没有接到的电话是怎样记录的就该记录时,那个工具栏是怎样变
- 2023-05-29linphone-自动接听视频电话
说明由于一定场合,需要需要自动接听视频。这时候linphone在Settings->VIDEO中勾选EnableVideo选项就可以实现自动接听视频选项了。在SettingsFragment.java中findPreference(getString(R.string.pref_video_enable_key)).setOnPreferenceChangeListener(newOnPreferenceChangeList
- 2023-05-29Linphone Use WIFI only
说明因为在移动网络下,如果输入错误的网址,会发生崩溃的情况,所以极大的可能使用了WIFI,就是在每次通话的时候都要检查是否网络可达.UseWIFIonly在每次检查的时候,去检查配置文件.这个是在.linphonerc配置文件中能够//NetworksettingspublicvoidsetWifiOnlyEnabled(B
- 2023-05-29linphone 手机上不能接听电话
问题描述这几天遇到一个问题,linphone安装到手机上不能接听电话.解决办法在linphone的设置中,设置端口号为5060,不要使用随机的端口号.然后问题就解决了.具体位置
- 2023-05-29Linphone callState 电话状态的监听状态(二)
LinphonecallState电话状态的监听状态callState是一个观察者模式接着上一篇的说,这篇主要是涉及到linphone中c层的注册监听机制.主要是代码追踪和代码过程.linphonecore_jni.cc中的添加监听事件的方法linphonecore_jni.cc中extern"C"voidJava_org_linphone_core_LinphoneC
- 2023-05-29Linphone callState 电话状态的监听状态(一)
0.阅读指南因为粘贴的代码比较多,阅读之前请先看目录.如果对这篇文章有什么建议的话,请在评论中指出.尽量把文章写好点.1.说明LinphoneService有个重要的机制,就是通过注册LinphoneCoreListener的实例,当Linphone的状态发声变化的时候,会回调相应的方法.然后linphone上层
- 2023-05-29linphone 自动接听电话
自动接听电话strings.xml:<stringname="pref_auto_answer">Autoanswerincomingcalls</string>non_localizable_strings.xml:<stringname="pref_auto_answer_key">pref_auto_answer_key</string>在xml文件中有这个线索,在界面设置如下将A
- 2023-05-29linphone-PresenceNoteImpl文件对应的JNI层文件分析
说明这个很短,自己看。native函数privatenativelongnewPresenceNoteImpl(Stringcontent,Stringlang);privatenativevoidunref(longnativePtr);privatenativeStringgetContent(longnativePtr);privatenativeintsetContent(longnativePtr,String
- 2023-05-29linphone-TunnelConfigImpl文件对应的JNI层文件分析
说明native函数privatenativeStringgetHost(longnativePtr);privatenativevoidsetHost(longnativePtr,Stringhost);privatenativeintgetPort(longnativePtr);privatenativevoidsetPort(longnativePtr,intport);privatenativeintgetRem
- 2023-05-29linphone-LinphoneService.java文件分析
说明主要是处理接听电话的逻辑,监听linphone拨打电话的状态逻辑。官方注释/****Linphoneservice,reactingtoIncomingcalls,...<br/>**Rolesinclude:<ul>*<li>InitializingLinphoneManager</li>*<li>StartingClibLinphonethroughLinphoneManage
- 2023-05-29linphone-LinphoneCallParams.java文件分析
说明专门作为Audio和Video的参数功能设置视频的带宽设置音频的带宽设置媒体的加密数据(encryption)设置是否允许低带宽设置RecordFile设置Sdp设置会话名称等是否允许多个rtp请求UML类图LinphoneCallParamsImpl.javapackageorg.linphone.core;importorg.linphone.core.LinphoneCor
- 2023-05-29linphone-CallManager.java文件分析
说明进行会话的管理,重新加入会话等功能创建会话重新进入Video重新设置参数更新会话UML类图CallManger.javapackageorg.linphone;importorg.linphone.core.LinphoneAddress;importorg.linphone.core.LinphoneCall;importorg.linphone.core.LinphoneCallParams;importorg.l
- 2023-05-29linphone-PayloadType.java文件分析
说明这个类主要是设置一些类型的参数,如MIME,RATE,FMTP等功能设置MIME设置RATE设置FMTUML类图PayloadType.javapackageorg.linphone.core;publicinterfacePayloadType{/***Obtaintheregisteredmime-type(actuallysubmime)ofthePayloadType.Forexample:
- 2023-05-29linphone-LinphoneProxyConfig.java文件分析
说明这个是linphone的纯配置文件,可能需要保存到文件中,是长久的数据.如何保存c/c++分析.功能设置Identity设置Address设置Proxy设置register设置Domain设置Dial设置Route设置Route设置Expires设置AVPF设置Realm设置ContactParameters设置PublichExpiresUML类图LinphoneProxyConfi