CN102752431B - 一种实现Android手机语音对讲的方法 - Google Patents

一种实现Android手机语音对讲的方法 Download PDF

Info

Publication number
CN102752431B
CN102752431B CN201210223063.4A CN201210223063A CN102752431B CN 102752431 B CN102752431 B CN 102752431B CN 201210223063 A CN201210223063 A CN 201210223063A CN 102752431 B CN102752431 B CN 102752431B
Authority
CN
China
Prior art keywords
mobile phone
voice data
transmitting terminal
data
receiving terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210223063.4A
Other languages
English (en)
Other versions
CN102752431A (zh
Inventor
张新
王荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Wisco Green City Technology Development Co ltd
Original Assignee
Wuhan Iron and Steel Group Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Iron and Steel Group Corp filed Critical Wuhan Iron and Steel Group Corp
Priority to CN201210223063.4A priority Critical patent/CN102752431B/zh
Publication of CN102752431A publication Critical patent/CN102752431A/zh
Application granted granted Critical
Publication of CN102752431B publication Critical patent/CN102752431B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Telephonic Communication Services (AREA)

Abstract

本发明涉及通讯技术领域,公开了一种实现Android手机语音对讲的方法,包括:在发送端手机,获取音频数据;在发送端手机,设定音频的采样大小,并按设定的采样大小获取音频数据;在发送端手机,将音频采样数据发送到服务端;在服务端,建立接入端地址数据表,将接收的音频采样数据存入接入端地址数据表中,并将音频数据发送到接收端手机;在接收端手机,对由服务端发送过来的音频数据进行解析播放;通过多线程技术在手机端同时实现发送端与接收端的服务。本发明实现了移动手机之间的非布线式的IP语音通话。

Description

一种实现Android手机语音对讲的方法
技术领域
本发明涉及通讯技术领域,主要适用于实现Android手机语音对讲的方法。
背景技术
在程控电话布线不方便的区域及恶劣的环境中,IP语音通话显得尤为重要,而现有的手机自带的功能一般只能进行录音播放,实时性非常差。在这种情况下,利用3G网络进行实时IP语音通话,不失为一种简单有效的方法。现阶段,Android系统日趋完善和稳定,在此基础上进行的应用软件的开发,已经成为一种可能,并不断推出新的应用。为我们在此平台上进行IP语音的应用开发提供了可靠的支持。另外,在3G网络方面,国家已投入大量的人力物力进行支持,普及性已比较高。同时,WIFI热点的布置已经相当容易,无线路由器等硬件的发展也比较成熟,在网络方面为我们的应用提供了必要的条件。
发明内容
本发明所要解决的技术问题是提供一种实实现Android手机语音对讲的方法,它解决了程控电话需要布置线路才能通话的问题。
为解决上述技术问题,本发明提供了一种实现Android手机语音对讲的方法包括:
在发送端手机,获取音频采样数据,将音频采样数据发送到服务端;
在服务端,建立接入端地址数据表,将接收的音频采样数据存入接入端地址数据表中,并将音频数据发送到接收端手机;
在接收端手机,对由服务端发送过来的音频数据进行解析播放;
通过多线程技术在手机端同时实现发送端与接收端的服务。
进一步的,所述在发送端手机,获取音频采样数据包括:在发送端手机,通过调用Android平台的多媒体组件AudioRecord,完成音频数据的捕捉。
进一步的,还包括:在发送端手机,设定音频的采样大小,并按设定的采样大小获取音频数据。
进一步的,所述在发送端手机,设定音频的采样大小,并按设定的采样大小获取音频数据包括:在发送端手机,通过Android平台的AudioRecord组件设定音频通道为CHANNEL_CONFIGURATION_MON,编码方式为ENCODING_PCM_16BIT后获得音频的采样大小,并按设定采样大小获取音频数据。
进一步的,所述在发送端手机,将音频采样数据发送到服务端包括:建立基于TCP协议的服务器,通过套接字将发送端手机取得的采样音频数据发送到服务端。
进一步的,所述在服务端,建立接入端地址数据表,将接收的音频采样数据存入接入端地址数据表中,并将音频数据发送到接收端手机,包括:在服务端内存中建立接入端地址数据表,将发送端手机的地址、接收端手机的地址存入接入端地址数据表中,通过比对服务器中发送端和接收端的地址识别出发送端手机,并将发送端手机的音频数据发送给接收端手机。
进一步的,所述在接收端手机,对由服务端发送过来的音频数据进行解析播放,包括:在接收端手机,首先构建AudioTrack组件,再构建音频解码缓冲区;当有音频数据由服务端推送过来时,将接收到的音频数据存入解码缓冲区,通过AudioTrack组件对缓冲区音频进行解码播放。
进一步的,在发送端手机,将音频采样数据发送到服务端后,判断音频数据是否采样完毕;
若没有采样完毕,则继续按设定的采样大小获取音频数据,并将音频采样数据发送到服务端;
若采样完毕,则停止采样。
进一步的,所述在服务端,建立接入端地址数据表,将接收的音频采样数据存入接入端地址数据表中,并将音频数据发送到接收端手机后,判断是否还有音频数据待转送到接收端手机;
若还有音频数据转送到接收端手机,则继续在接入端地址数据表中,通过比对服务器中发送端和接收端的地址识别出发送端手机,并将发送端手机的音频数据发送给接收端手机。
若没有音频数据转送到接收端手机,则终止转发数据。
进一步的,所述手机接收端对由服务端发送过来的音频数据进行解析播放后,判断是否中止接收;
若不中止接收数据,则继续将接收到的音频数据存入解码缓冲区,并通过AudioTrack组件对缓冲区音频进行解码播放;
若中止接收数据,则停止接收数据。
本发明的有益效果在于:
本发明实现了移动手机之间的非布线式的IP语音通话,可实现由手机语音采集端得到的语音数据到接收端手机的实时传送,并由接收端手机进行实时解码播放。通过多线程技术实现了手机端同时具有发送端与接收端的服务,从而实现了移动手机IP语音通话的双方互为发送端及接收端的双工对讲。
附图说明
图1为本发明实施例提供的实现Android手机语音对讲的方法的流程图。
图2为本发明实施例提供的实现Android手机语音对讲的方法的在发送端的流程图。
图3为本发明实施例提供的实现Android手机语音对讲的方法的在服务端的流程图。
图4为本发明实施例提供的实现Android手机语音对讲的方法的在接收端的流程图。
具体实施方式
为进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的实现Android手机语音对讲的方法的具体实施方式及原理进行详细说明。
由图1可知,本发明提供的实现Android手机语音对讲的方法,包括:
在发送端手机,获取音频采样数据;
在发送端手机,设定音频的采样大小,并按设定的采样大小获取音频数据;
在发送端手机,将音频采样数据实时发送到服务端;
在服务端,建立接入端地址数据表,将接收的音频采样数据存入接入端地址数据表中,并将音频数据实时发送到接收端手机;
在接收端手机,对由服务端发送过来的音频数据进行实时解析播放;
通过多线程技术在手机端同时实现发送端与接收端的服务。
由图2可知,在本发明提供的实现Android手机语音对讲的方法的发送端,先通过调用Android平台的多媒体组件AudioRecord,完成手机发送端音频数据的捕捉。再通过Android平台的AudioRecord组件设定音频通道为CHANNEL_CONFIGURATION_MON,编码方式为ENCODING_PCM_16BIT后获得音频的采样大小,按设定采样大小获取音频数据。接着建立基于TCP协议的服务器,通过套接字将发送端手机取得的采样音频数据实时发送到服务端。再判断音频数据是否采样完毕;
若没有采样完毕,则继续按设定的采样大小获取音频数据,并将音频采样数据实时发送到服务端;
若采样完毕,则停止采样。
这样能通过连续不断的对发送端MIC的音频采样将发送端的音频数据实时发送给服务端,从而生成实时流畅的音频数据流。
由图3可知,在本发明提供的实现Android手机语音对讲的方法的服务端,在服务端内存中建立接入端地址数据表,将发送端手机的地址、接收端手机的地址存入接入端地址数据表中,通过比对服务器中发送端和接收端的地址识别出发送端手机,并将发送端手机的音频数据实时发送给接收端手机;接着建立基于TCP协议的服务器,通过套接字将音频数据实时发送给接收端手机。再判断是否还有音频数据待转送到接收端手机;
若还有音频数据转送到接收端手机,则继续在接入端地址数据表中,通过比对服务器中发送端和接收端的地址识别出发送端手机,并将发送端手机的音频数据实时发送给接收端手机;接着建立基于TCP协议的服务器,通过套接字将音频数据实时发送给接收端手机;
若没有音频数据转送到接收端手机,则终止转发数据。
这样就能连续不断的将发送端的IP音频数据转送到接收端。
由图4可知,在本发明提供的实现Android手机语音对讲的方法的接收端,首先构建AudioTrack组件,再构建音频解码缓冲区;当有音频数据由服务端推送过来时,将接收到的音频数据存入解码缓冲区,通过AudioTrack组件对缓冲区音频进行解码播放。再判断是否中止接收;
若不中止接收数据,则继续将接收到的音频数据存入解码缓冲区,并通过AudioTrack组件对缓冲区音频进行解码播放;
若中止接收数据,则停止接收数据。
这样在没有中止接收处理之前会不断将由服务器端推送过来的实时音频数据进行解码播放处理,从而能在接收端听到发送端的实时语音了。
利用本发明提供的实现Android手机语音对讲的方法实现手机A与手机B之间的对讲,本实施例中,手机A和手机B均为基于Android系统的手机。当手机A向手机B通话时,先通过手机A的多媒体组件AudioRecord,完成手机A的音频数据的捕捉,再通过手机A的AudioRecord组件设定音频通道为CHANNEL_CONFIGURATION_MON,编码方式为ENCODING_PCM_16BIT后获得音频的采样大小,按设定采样大小获取音频数据。接着建立基于TCP协议的服务器,通过套接字将手机A取得的采样音频数据实时发送到服务端。在服务端内存中建立接入端地址数据表,将手机A的地址、手机B的地址均存入接入端地址数据表中,通过比对手机A和手机B的地址信息得出手机A为发送端手机,并将手机A的音频数据实时转发给手机B。手机B将接收到的音频数据存入解码缓冲区,通过AudioTrack组件对缓冲区音频进行解码播放。从而实现了手机A到手机B的通话。
当手机B向手机A回话时,在另一个线程中,先通过手机B的多媒体组件AudioRecord,完成手机B的音频数据的捕捉,再通过手机B的AudioRecord组件设定音频通道为CHANNEL_CONFIGURATION_MON,编码方式为ENCODING_PCM_16BIT后获得音频的采样大小,按设定采样大小获取音频数据。接着建立基于TCP协议的服务器,通过套接字将手机B取得的采样音频数据实时发送给服务端。在接入端地址数据表中,通过比对手机A和手机B的地址信息得出手机B为发送端手机,并将手机B的音频数据实时转发给手机A。手机A将接收到的音频数据存入解码缓冲区,通过AudioTrack组件对缓冲区音频进行解码播放。从而实现了手机B到手机A的通话,即实现了手机A与手机B的双工对讲。
本发明实现了Android手机之间的非布线式的IP语音通话,可实现由手机语音采集端AudioRecord组件得到的语音数据到接收端的实时传送,并由接收端手机通过AudioTrack组件进行实时解码播放。通过多线程技术实现了手机端同时具有发送端与接收端的服务,从而实现了移动手机IP语音通话的双方互为发送端及接收端的双工对讲。
最后所应说明的是,以上具体实施方式仅用以说明本发明的技术方案而非限制,尽管参照实例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (6)

1.一种实现Android手机语音对讲的方法,其特征在于,包括:
在发送端手机,获取音频采样数据,将音频采样数据发送到服务端;其中,所述获取音频采样数据包括:设定音频的采样大小,并按设定的采样大小获取音频数据;
判断音频数据是否采样完毕;
若没有采样完毕,则继续按设定的采样大小获取音频数据,并将音频采样数据发送到服务端;
若采样完毕,则停止采样;
这样能通过连续不断的对发送端MIC的音频采样将发送端的音频数据实时发送给服务端,从而生成实时流畅的音频数据流;
在服务端,建立接入端地址数据表,将接收的音频采样数据存入接入端地址数据表中,并将音频数据发送到接收端手机;具体地,在服务端内存中建立接入端地址数据表,将发送端手机的地址、接收端手机的地址存入接入端地址数据表中,通过比对服务器中发送端和接收端的地址识别出发送端手机,并将发送端手机的音频数据发送给接收端手机;判断是否还有音频数据待转送到接收端手机;
若还有音频数据转送到接收端手机,则继续在接入端地址数据表中,通过比对服务器中发送端和接收端的地址识别出发送端手机,并将发送端手机的音频数据发送给接收端手机;
若没有音频数据转送到接收端手机,则终止转发数据;
这样就能连续不断的将发送端的IP音频数据转送到接收端;
具体地,建立基于TCP协议的服务器,通过套接字将音频数据实时发送给接收端手机;
在接收端手机,对由服务端发送过来的音频数据进行解析播放;
通过多线程技术在手机端同时实现发送端与接收端的服务。
2.如权利要求1所述的实现Android手机语音对讲的方法,其特征在于,所述在发送端手机,获取音频采样数据包括:在发送端手机,通过调用Android平台的多媒体组件AudioRecord,完成音频数据的捕捉。
3.如权利要求1所述的实现Android手机语音对讲的方法,其特征在于,所述在发送端手机,设定音频的采样大小,并按设定的采样大小获取音频数据包括:在发送端手机,通过Android平台的AudioRecord组件设定音频通道为CHANNEL_CONFIGURATION_MON,编码方式为ENCODING_PCM_16BIT后获得音频的采样大小,并按设定采样大小获取音频数据。
4.如权利要求1所述的实现Android手机语音对讲的方法,其特征在于,所述在发送端手机,将音频采样数据发送到服务端包括:建立基于TCP协议的服务器,通过套接字将发送端手机取得的采样音频数据发送到服务端。
5.如权利要求1所述的实现Android手机语音对讲的方法,其特征在于,所述在接收端手机,对由服务端发送过来的音频数据进行解析播放,包括:在接收端手机,首先构建AudioTrack组件,再构建音频解码缓冲区;当有音频数据由服务端推送过来时,将接收到的音频数据存入解码缓冲区,通过AudioTrack组件对缓冲区音频进行解码播放。
6.如权利要求5所述的实现Android手机语音对讲的方法,其特征在于,所述手机接收端对由服务端发送过来的音频数据进行解析播放后,判断是否中止接收;
若不中止接收数据,则继续将接收到的音频数据存入解码缓冲区,并通过AudioTrack组件对缓冲区音频进行解码播放;
若中止接收数据,则停止接收数据。
CN201210223063.4A 2012-06-29 2012-06-29 一种实现Android手机语音对讲的方法 Active CN102752431B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210223063.4A CN102752431B (zh) 2012-06-29 2012-06-29 一种实现Android手机语音对讲的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210223063.4A CN102752431B (zh) 2012-06-29 2012-06-29 一种实现Android手机语音对讲的方法

Publications (2)

Publication Number Publication Date
CN102752431A CN102752431A (zh) 2012-10-24
CN102752431B true CN102752431B (zh) 2015-11-18

Family

ID=47032327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210223063.4A Active CN102752431B (zh) 2012-06-29 2012-06-29 一种实现Android手机语音对讲的方法

Country Status (1)

Country Link
CN (1) CN102752431B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104253696B (zh) * 2013-06-25 2018-08-31 北京计算机技术及应用研究所 基于互联网的警用手持语音对讲方法及系统
CN104486694A (zh) * 2014-11-05 2015-04-01 深圳市广和通实业发展有限公司 一种利用无线模块实现对讲机的方法和系统
CN107632988A (zh) * 2016-07-18 2018-01-26 杭州海康威视数字技术股份有限公司 浏览器语音发送和接收方法、装置及语音对讲系统
CN108519913B (zh) * 2018-04-04 2021-08-27 广州酷狗计算机科技有限公司 应用程序的运行状态管理方法、装置、存储介质及终端

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1917674A (zh) * 2006-09-06 2007-02-21 蒋晓海 一种移动对讲业务中处理语音信息的方法
CN101026789A (zh) * 2007-01-25 2007-08-29 苏州广达友讯技术有限公司 一种wap网络中ptt音频流的处理方法
CN101656778A (zh) * 2008-08-20 2010-02-24 展讯通信(上海)有限公司 一种具有对讲功能的移动终端及其实现方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7698437B2 (en) * 2006-01-18 2010-04-13 Digital Acoustics L.L.C. Method and apparatus for multiple audio connections over networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1917674A (zh) * 2006-09-06 2007-02-21 蒋晓海 一种移动对讲业务中处理语音信息的方法
CN101026789A (zh) * 2007-01-25 2007-08-29 苏州广达友讯技术有限公司 一种wap网络中ptt音频流的处理方法
CN101656778A (zh) * 2008-08-20 2010-02-24 展讯通信(上海)有限公司 一种具有对讲功能的移动终端及其实现方法

Also Published As

Publication number Publication date
CN102752431A (zh) 2012-10-24

Similar Documents

Publication Publication Date Title
CN102447893B (zh) 手机视频实时采集和发布的方法及系统
CN100542341C (zh) 实现移动终端间数据共享的方法和设备
CN101778181B (zh) 一种移动终端实现可视电话三方通话的方法及系统
ATE391365T1 (de) Unterbrochenes senden und empfangen von multimedia-broadcast-/-multicast-dienst-daten in einem mobil-kommunikationssystem
CN101719911A (zh) 通过蓝牙传输多媒体数据并实时播放的方法、设备和系统
CN101867574A (zh) 一种实现视频共享的方法、系统及移动终端
CN102752431B (zh) 一种实现Android手机语音对讲的方法
CN102447956A (zh) 手机视频分享的方法及系统
CN201127081Y (zh) 一种实现多媒体内容共享的系统
CN101778485A (zh) 一种WiFi手持设备的电路域链路建立方法和装置
CN104363496A (zh) 网络机顶盒中声音系统多场景应用的实现方法
CN100561963C (zh) 一种实现多媒体内容共享的系统
CN101163226B (zh) 利用WiMAX网络实现移动视频会议的方法及系统
CN103684970A (zh) 媒体数据流的传输方法和瘦终端
US9338275B2 (en) Terminal network for wireless voice communication
CN101867764A (zh) 移动多方视频通话系统
CN103428175A (zh) 基于异构移动ip网络的实时语音对讲系统
CN103458317A (zh) 智能终端的媒体播放控制方法及系统
CN102821318B (zh) 数字电视机顶盒
CN204810464U (zh) 带4g无线通信功能的智能融合终端
CN204761728U (zh) 多模式电话与电台转接装置
CN102883279A (zh) 一种对讲机通信方法
CN104219567A (zh) 一种移动端远距离实时监听dtv端音频的系统及方法
CN104871494A (zh) 适于连接家庭网络与服务供应商网络的装置
CN104219568A (zh) 一种手机带走听电视音频的无缝连续播放方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20171206

Address after: 430000 front of Qingshan District factory in Wuhan, Hubei Province

Patentee after: Wuhan Iron & Steel Engineering Technology Group Communications Co., Ltd.

Address before: 430080 Friendship Avenue, Hubei, Wuhan, No. 999

Patentee before: Wuhan Iron & Steel (Group) Corp.

CP03 Change of name, title or address

Address after: 430000 gate 1, changqian, Qingshan District, Wuhan City, Hubei Province

Patentee after: Wuhan WISCO Green City Technology Development Co.,Ltd.

Address before: 430000 front of Qingshan District factory in Wuhan, Hubei Province

Patentee before: WUHAN STEELS ENGINEERING TECHNOLOGY GROUP TELECOMMUNICATION Co.,Ltd.

CP03 Change of name, title or address