100ask_imx6ull使用linphonec实现局域网内与手机通话

100ask_imx6ull使用linphonec实现局域网内与手机通话

之前老师要我看一下如何实现VOIP的方案,网上看到一篇文章用s3c2440移植linphone实现通话,也参考了别人移植linphone需要这些库,在这里插入图片描述
本来打算在看完ALSA声卡部分在JZ2440上面移植一下,刚好最近刚入手100ask_imx6ull韦老师的新板子,在buildroot make menuconfig网络包配置里面看到有linphone,想着上面alsa声卡什么都配置好了,就先来实验一下能不能用,结果还真能手机拨通开发板,虽然音质不太好,也能听清一些,不知道是芯片性能原因,还是采样率不一样,还是记录一下实现过程!

首先我们肯定一个sip服务器来注册我们的终端,以及安卓手机啦。
用到的软件及下载地址:

1.Linphone客户端(安卓及windows):http://www.linphone.org/technical-corner/linphone?qt-technical_corner=2#qt-technical_corner

2.服务器:miniSIPServer,下载地址:https://www.myvoipapp.com/index.html

一、搭建服务器

1.安装软件miniSIPServer,下载地址:https://www.myvoipapp.com/index.html

2.安装好后设置我们服务器的IP地址,因为是在windows上安装的首选地址也就是我们电脑的IP
在这里插入图片描述
3.电脑里本身有MySQL顺带把密码输进去了
如果你的电脑没有可以装一个哦
在这里插入图片描述
4.这里不知道干嘛的,顺带改一下
在这里插入图片描述
5.进入分机,我们要在我们的服务器上**注册我们的用户**
在这里插入图片描述
6.增加用户1000也就是我的第一部手机
对应的IP就是我们手机的IP啦,当然前提在一个局域网下
在这里插入图片描述
我们先设置一下把,分机名为1000,密码123456,底下的IP地址为我们手机连接同一个局域网里面的手机的IP地址,端口号5060
7.同理我们的第二部手机,配置一下。第二部手机的IP地址为192.168.1.103
在这里插入图片描述
8.在电脑端也装了linphone感觉版本有点太新,配置有点问题,先就实现两个手机打电话。

二、安卓手机安装Linphone软件及配置

1.点击助手新建一个SIP账号,我们这里是已经创建过了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
底下高级的选项,代理那里填上服务器的IP地址192.168.1.101
也就是安装miniserver软件的电脑的IP地址
在这里插入图片描述
选择网络连接端口改为5060,这里默认原来是随机的。
在这里插入图片描述
在这里插入图片描述
添加一个账户,用于拨打电话
在这里插入图片描述
4000是我们另一部手机的用户名,IP是另一部手机的IP地址
好了,我们就可以拨打电话啦,测试结果还是很流畅哒!

三、100ask_imx6ull移植linphone

使用100ask-sdk包里面的Buildroot
使用make 100ask_imx6ull_defconfig
然后make menuconfig 把Targer packge 里面
networt
alsa声卡肯定要选上
在这里插入图片描述
然后linphone也选上

退出后make即可,
然后把/100ask_imx6ullsdk/Buildroot_2019.02/output/images目录下的emmc.img镜像下载到板子上即可。

四、启动板子

下载好emmc.img后

进入开发板
在这里插入图片描述
这里有一些linphonec 命令可以参考:

启动
1.	linphonec -d [0|6] 日志等级:linphone -d 0不输出日志,linphone -d 6输出所有信息
2.	linphonec -C 使能摄像头,但不将图像显示到LCD上
3.	linphonec -D 使能LCD显示
4.	linphonec -V 使能LCD显示和摄像头功能,类似于linphone -C -D的组合
5.	linphonec -s root@192.168.1.110在启动linphone后,拨打后面的sip地址电话
6.	linphonec -a 启动linphone后自动接听来电

如:linphonec -V -d 6 使能视频模式,并输出所有调试信息
    linphonec -V -s root@192.168.1.110  启动linphone并拨打对应的sip地址电话

控制
控制是在启动linphone后的操作

1.	注册:其中name和password为对应的户名和密码
register    sip:name@sip.linphone.org    sip:sip.linphone.org    password

2.	呼叫
call    root@sip.linphone.org 呼叫广域网  或者  call @192.168.1.110 呼叫局域网

3.	退出程序:quit

4.	terminate    终止当前对话
terminate    <call id>   终止对应id对话
terminate    all        终止所有对话

5.	answer   接听当前默认的等待电话
answer   <call id>接听指定id号的来电

6.	help  advanced 更多帮助

7.	snapshot  /home/pic.jpeg  截屏

执行linphonec
首先注册了一下感觉有点问题,服务器上没有亮
在这里插入图片描述
在这里插入图片描述
换了个输入格式还是有问题,就没鼓捣了,总是返回注册失败
直接实验看能不能打电话把:
按照上面的命令,拨通我们一部手机
手机上配置的是用户名2000 手机的IP地址是192.168.1.100,可以拨通,我们在板子上接上耳机,通过耳机的麦克可以实现通话啦,但是音质没有想想的那么好。
在这里插入图片描述
手机再回拨root
在这里插入图片描述
在这里插入图片描述
可以看见我们的手机端正在请求链接我,
通过耳机可以听见铃声。
板子上输入answer,可以正常接通打电话啦。
在这里插入图片描述
如果想要实现不同网络之前通话,你也可以在云服务器上安装asterisk搭建一个sip服务器,注册自己的用户。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值