SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
Android DevCamp




Produced by CSDN

Website: http://devcamp.csdn.net/
Weibo: http://weibo.com/cmdnclub/
李鹏军
爱图腾科技 架构师
相关介绍

传输协议

音频输出

音频编码

音频输入

音频解码
相关介绍




l  目前国外知名的有 Square支付,coin支付。

l  国内比较火的应该是拉卡拉手机刷卡支付
相关介绍




l  手机的音频接口除了移动支付外还可以做很多

 的事情。

l  比如 遥控信号指令发送器
传输协议


u  传输协议可以自定义

u  音频接口的传输协议很重要


u  ⼀一个成熟的规范可以满足很多的需求开发
简单的发送协议

      u  send command!

         Accept device   Accept type    Ac#on
             code        command       command
          command         (1 Byte)     (1 Byte)
           (1 Byte)
             0x03           0xA0       0x02




u     Accept device Code command :接受指令的硬件设备代码!

u     Accept type command :接收指令的硬件设备类型!

u     Action command:需要执行的指令。
音频输出
    输出流程


              音频
             通过
               音频
                    信号
                  接口
                     发送

 音频输出应用
将指令转换成音频信号

                            外接硬件设备
                          解码音频信号获得原始指令



                                         可被遥控的设备
                                          做出响应
音频数据输出需要准备的参数



sampleRateInHz: 录音采样率 (单位Hz, 44100, 22050,16000,11025)
channelConfig: 录音通道数(声道) (12, 16) CHANNEL_IN_MONO,CHANNEL_IN_STEREO.
audioFormat: 线性采样位数 (8, 16,) PCM 16 bit per sample
bufferSizeInBytes:使用值小于getMinBufferSize()将导致初始化失败


    u  相关代码
音频数据输出需要准备的参数



sampleRateInHz: 录音采样率 (单位Hz, 44100, 22050,16000,11025)
channelConfig: 录音通道数(声道) (12, 16) CHANNEL_IN_MONO,CHANNEL_IN_STEREO.
audioFormat: 线性采样位数 (8, 16,) PCM 16 bit per sample
bufferSizeInBytes:使用值小于getMinBufferSize()将导致初始化失败


    u  相关代码
实例化 AudioTrack
 实例化音频输出对象

u  相关代码
执行输出音频流
 开始执行音频输出
u  相关代码




配置 voiceData 数据的编码调制
音频编码
调制编码


将需要发送的指令数据转换成模拟音频信号



Encode的⼀一个过程
音频编码
将数字信号转换成模拟信号输出




这里的voiceData就可以作为音频输出流播放了
音频输入
     流程图


               设备
需要读取的设备       通过
                外接
                     信息
                   设备
将信息录入到硬件设备中           录入




                             外接硬件设备
                           将传入的信息编码成音频信号



                                           音频输入应用
                                            将音频信号
                                           转换成指令信息
音频输入需要准备的参数

sampleRateInHz: 录音采样率 (单位Hz, 44100, 22050,16000,11025)
channelConfig: 录音通道数(声道) (12, 16) CHANNEL_IN_MONO,CHANNEL_IN_STEREO.
audioFormat: 线性采样位数 (8, 16,) PCM 16 bit per sample
bufferSizeInBytes:使用值小于getMinBufferSize()将导致初始化失败


u  相关代码
音频输入需要的参数对照
实例化 AudioRecord
 获得音频接口数据的对象

u  相关代码
获得音频输入
  监听音频接口是否有输入的音频流

u  相关代码




   对获得的音频流 buffer 进行解码
解码音频流


u  将音频流的模拟信号转换成数字信号后识别指令


u  相关代码




u  解码出来的RecvData数据就可以根据协议解析指令了
谢谢!

    爱图腾科技
Next App Generation

Mais conteúdo relacionado

Mais procurados (20)

Arion Hdci
Arion HdciArion Hdci
Arion Hdci
 
Nanoxx
NanoxxNanoxx
Nanoxx
 
Technotrend
TechnotrendTechnotrend
Technotrend
 
Jiuzhou
JiuzhouJiuzhou
Jiuzhou
 
Topfield
TopfieldTopfield
Topfield
 
智慧家庭 簡報
智慧家庭 簡報智慧家庭 簡報
智慧家庭 簡報
 
Technotrend
TechnotrendTechnotrend
Technotrend
 
物聯網技術分享 使用ESP8266
物聯網技術分享 使用ESP8266物聯網技術分享 使用ESP8266
物聯網技術分享 使用ESP8266
 
Topfield
TopfieldTopfield
Topfield
 
Internetradio
InternetradioInternetradio
Internetradio
 
使用 Arduino 控制 ESP8266 的各種方式
使用 Arduino 控制 ESP8266 的各種方式使用 Arduino 控制 ESP8266 的各種方式
使用 Arduino 控制 ESP8266 的各種方式
 
Band_allocation_overlap_and_im2_im3_freq_calculator
Band_allocation_overlap_and_im2_im3_freq_calculatorBand_allocation_overlap_and_im2_im3_freq_calculator
Band_allocation_overlap_and_im2_im3_freq_calculator
 
第18讲 Hdlc和Ppp
第18讲 Hdlc和Ppp第18讲 Hdlc和Ppp
第18讲 Hdlc和Ppp
 
Eycos
EycosEycos
Eycos
 
Windancer2003
Windancer2003Windancer2003
Windancer2003
 
Metabox
MetaboxMetabox
Metabox
 
Dvbshopplayer
DvbshopplayerDvbshopplayer
Dvbshopplayer
 
NTHU Comm Presentation
NTHU Comm PresentationNTHU Comm Presentation
NTHU Comm Presentation
 
Abcom
AbcomAbcom
Abcom
 
Encoder
EncoderEncoder
Encoder
 

Semelhante a Android音频口数据通信开发 | 爱图腾 李鹏军

2009.05.Windows Media 网络直播 Howto
2009.05.Windows Media 网络直播 Howto2009.05.Windows Media 网络直播 Howto
2009.05.Windows Media 网络直播 Howtocaipenglong
 
Ipc(4.5)
Ipc(4.5)Ipc(4.5)
Ipc(4.5)mylaner
 
uRock @ SITCON 2015
uRock @ SITCON 2015uRock @ SITCON 2015
uRock @ SITCON 2015宗凡 楊
 
Edge series tranning 1
Edge series tranning 1Edge series tranning 1
Edge series tranning 1Jason Hsiao
 
說明會 Letron 500
說明會 Letron 500說明會 Letron 500
說明會 Letron 500Aiken Lin
 
网络收音机-毕业论文
网络收音机-毕业论文网络收音机-毕业论文
网络收音机-毕业论文rgw5267
 
Grastron Company Profile-20160701
Grastron Company Profile-20160701Grastron Company Profile-20160701
Grastron Company Profile-20160701Owen Zhong
 
雲端搜影機使用手冊 中英版
雲端搜影機使用手冊 中英版雲端搜影機使用手冊 中英版
雲端搜影機使用手冊 中英版昱竑 伍
 
助听器的基础知识(李炬2)
助听器的基础知识(李炬2)助听器的基础知识(李炬2)
助听器的基础知识(李炬2)deafchina
 
助听器的基础知识
助听器的基础知识助听器的基础知识
助听器的基础知识deafchina
 
11. 视频基础知识培训
11. 视频基础知识培训11. 视频基础知识培训
11. 视频基础知识培训sophictony
 
20100629 中山大学交流
20100629 中山大学交流20100629 中山大学交流
20100629 中山大学交流leonsandy888
 

Semelhante a Android音频口数据通信开发 | 爱图腾 李鹏军 (13)

2009.05.Windows Media 网络直播 Howto
2009.05.Windows Media 网络直播 Howto2009.05.Windows Media 网络直播 Howto
2009.05.Windows Media 网络直播 Howto
 
Ipc(4.5)
Ipc(4.5)Ipc(4.5)
Ipc(4.5)
 
uRock @ SITCON 2015
uRock @ SITCON 2015uRock @ SITCON 2015
uRock @ SITCON 2015
 
Edge series tranning 1
Edge series tranning 1Edge series tranning 1
Edge series tranning 1
 
說明會 Letron 500
說明會 Letron 500說明會 Letron 500
說明會 Letron 500
 
网络收音机-毕业论文
网络收音机-毕业论文网络收音机-毕业论文
网络收音机-毕业论文
 
Grastron Company Profile-20160701
Grastron Company Profile-20160701Grastron Company Profile-20160701
Grastron Company Profile-20160701
 
雲端搜影機使用手冊 中英版
雲端搜影機使用手冊 中英版雲端搜影機使用手冊 中英版
雲端搜影機使用手冊 中英版
 
助听器的基础知识(李炬2)
助听器的基础知识(李炬2)助听器的基础知识(李炬2)
助听器的基础知识(李炬2)
 
助听器的基础知识
助听器的基础知识助听器的基础知识
助听器的基础知识
 
11. 视频基础知识培训
11. 视频基础知识培训11. 视频基础知识培训
11. 视频基础知识培训
 
Klangv2
Klangv2Klangv2
Klangv2
 
20100629 中山大学交流
20100629 中山大学交流20100629 中山大学交流
20100629 中山大学交流
 

Mais de imShining @DevCamp

如何创建更加灵活的App | 大众点评 屠毅敏
如何创建更加灵活的App | 大众点评 屠毅敏如何创建更加灵活的App | 大众点评 屠毅敏
如何创建更加灵活的App | 大众点评 屠毅敏imShining @DevCamp
 
Android在多屏幕、多设备上的适配 | 布丁 任斐
Android在多屏幕、多设备上的适配 | 布丁 任斐Android在多屏幕、多设备上的适配 | 布丁 任斐
Android在多屏幕、多设备上的适配 | 布丁 任斐imShining @DevCamp
 
Android程序的编译,安装和运行 | 小米科技 汪文俊
Android程序的编译,安装和运行 | 小米科技 汪文俊Android程序的编译,安装和运行 | 小米科技 汪文俊
Android程序的编译,安装和运行 | 小米科技 汪文俊imShining @DevCamp
 
和Android源代码一起工作 | 海豚浏览器 胡继堂
和Android源代码一起工作 | 海豚浏览器 胡继堂和Android源代码一起工作 | 海豚浏览器 胡继堂
和Android源代码一起工作 | 海豚浏览器 胡继堂imShining @DevCamp
 
Android消息推送实现 | 友盟 徐仙明
Android消息推送实现 | 友盟 徐仙明 Android消息推送实现 | 友盟 徐仙明
Android消息推送实现 | 友盟 徐仙明 imShining @DevCamp
 
千万级并发在线推送系统架构解析 | 个信互动 叶新江
千万级并发在线推送系统架构解析 | 个信互动 叶新江千万级并发在线推送系统架构解析 | 个信互动 叶新江
千万级并发在线推送系统架构解析 | 个信互动 叶新江imShining @DevCamp
 
发现和建立多设备之间的数据通信 | 豌豆荚实验室 孙桥
发现和建立多设备之间的数据通信 | 豌豆荚实验室 孙桥发现和建立多设备之间的数据通信 | 豌豆荚实验室 孙桥
发现和建立多设备之间的数据通信 | 豌豆荚实验室 孙桥imShining @DevCamp
 
凡客移动应用之Android + HTML5技术运用 | 凡客 汪健飞 徐金山
凡客移动应用之Android + HTML5技术运用 | 凡客 汪健飞 徐金山凡客移动应用之Android + HTML5技术运用 | 凡客 汪健飞 徐金山
凡客移动应用之Android + HTML5技术运用 | 凡客 汪健飞 徐金山imShining @DevCamp
 
Android账户同步备份框架 | 盛大乐众ROM 郭振
Android账户同步备份框架 | 盛大乐众ROM 郭振 Android账户同步备份框架 | 盛大乐众ROM 郭振
Android账户同步备份框架 | 盛大乐众ROM 郭振 imShining @DevCamp
 
简单中的不简单,iPhone应用开发实践总结:《社区类iPhone应用开发的技术实践》| 麻麻帮 陈剑飞
简单中的不简单,iPhone应用开发实践总结:《社区类iPhone应用开发的技术实践》| 麻麻帮 陈剑飞简单中的不简单,iPhone应用开发实践总结:《社区类iPhone应用开发的技术实践》| 麻麻帮 陈剑飞
简单中的不简单,iPhone应用开发实践总结:《社区类iPhone应用开发的技术实践》| 麻麻帮 陈剑飞imShining @DevCamp
 
在iOS平台上用Cocos2D做开发 | iOS独立开发者 秦春林
在iOS平台上用Cocos2D做开发 | iOS独立开发者 秦春林在iOS平台上用Cocos2D做开发 | iOS独立开发者 秦春林
在iOS平台上用Cocos2D做开发 | iOS独立开发者 秦春林imShining @DevCamp
 
在iOS平台上实现全功能视频处理 | 盛大微酷 赵志猛
在iOS平台上实现全功能视频处理 | 盛大微酷 赵志猛在iOS平台上实现全功能视频处理 | 盛大微酷 赵志猛
在iOS平台上实现全功能视频处理 | 盛大微酷 赵志猛imShining @DevCamp
 
iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》| 新浪 张俊林
iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》| 新浪 张俊林iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》| 新浪 张俊林
iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》| 新浪 张俊林imShining @DevCamp
 
逆向工程技术详解:解开IPA文件的灰沙 -- 通过静态分析工具了解IPA实现 | 友盟 张超 | iOS DevCamp
逆向工程技术详解:解开IPA文件的灰沙 -- 通过静态分析工具了解IPA实现 | 友盟 张超 | iOS DevCamp逆向工程技术详解:解开IPA文件的灰沙 -- 通过静态分析工具了解IPA实现 | 友盟 张超 | iOS DevCamp
逆向工程技术详解:解开IPA文件的灰沙 -- 通过静态分析工具了解IPA实现 | 友盟 张超 | iOS DevCampimShining @DevCamp
 
《Passbook实战详解》| 爱图腾 廉洁 | iOS DevCamp
《Passbook实战详解》| 爱图腾 廉洁 | iOS DevCamp《Passbook实战详解》| 爱图腾 廉洁 | iOS DevCamp
《Passbook实战详解》| 爱图腾 廉洁 | iOS DevCampimShining @DevCamp
 
从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践
从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践
从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践imShining @DevCamp
 

Mais de imShining @DevCamp (16)

如何创建更加灵活的App | 大众点评 屠毅敏
如何创建更加灵活的App | 大众点评 屠毅敏如何创建更加灵活的App | 大众点评 屠毅敏
如何创建更加灵活的App | 大众点评 屠毅敏
 
Android在多屏幕、多设备上的适配 | 布丁 任斐
Android在多屏幕、多设备上的适配 | 布丁 任斐Android在多屏幕、多设备上的适配 | 布丁 任斐
Android在多屏幕、多设备上的适配 | 布丁 任斐
 
Android程序的编译,安装和运行 | 小米科技 汪文俊
Android程序的编译,安装和运行 | 小米科技 汪文俊Android程序的编译,安装和运行 | 小米科技 汪文俊
Android程序的编译,安装和运行 | 小米科技 汪文俊
 
和Android源代码一起工作 | 海豚浏览器 胡继堂
和Android源代码一起工作 | 海豚浏览器 胡继堂和Android源代码一起工作 | 海豚浏览器 胡继堂
和Android源代码一起工作 | 海豚浏览器 胡继堂
 
Android消息推送实现 | 友盟 徐仙明
Android消息推送实现 | 友盟 徐仙明 Android消息推送实现 | 友盟 徐仙明
Android消息推送实现 | 友盟 徐仙明
 
千万级并发在线推送系统架构解析 | 个信互动 叶新江
千万级并发在线推送系统架构解析 | 个信互动 叶新江千万级并发在线推送系统架构解析 | 个信互动 叶新江
千万级并发在线推送系统架构解析 | 个信互动 叶新江
 
发现和建立多设备之间的数据通信 | 豌豆荚实验室 孙桥
发现和建立多设备之间的数据通信 | 豌豆荚实验室 孙桥发现和建立多设备之间的数据通信 | 豌豆荚实验室 孙桥
发现和建立多设备之间的数据通信 | 豌豆荚实验室 孙桥
 
凡客移动应用之Android + HTML5技术运用 | 凡客 汪健飞 徐金山
凡客移动应用之Android + HTML5技术运用 | 凡客 汪健飞 徐金山凡客移动应用之Android + HTML5技术运用 | 凡客 汪健飞 徐金山
凡客移动应用之Android + HTML5技术运用 | 凡客 汪健飞 徐金山
 
Android账户同步备份框架 | 盛大乐众ROM 郭振
Android账户同步备份框架 | 盛大乐众ROM 郭振 Android账户同步备份框架 | 盛大乐众ROM 郭振
Android账户同步备份框架 | 盛大乐众ROM 郭振
 
简单中的不简单,iPhone应用开发实践总结:《社区类iPhone应用开发的技术实践》| 麻麻帮 陈剑飞
简单中的不简单,iPhone应用开发实践总结:《社区类iPhone应用开发的技术实践》| 麻麻帮 陈剑飞简单中的不简单,iPhone应用开发实践总结:《社区类iPhone应用开发的技术实践》| 麻麻帮 陈剑飞
简单中的不简单,iPhone应用开发实践总结:《社区类iPhone应用开发的技术实践》| 麻麻帮 陈剑飞
 
在iOS平台上用Cocos2D做开发 | iOS独立开发者 秦春林
在iOS平台上用Cocos2D做开发 | iOS独立开发者 秦春林在iOS平台上用Cocos2D做开发 | iOS独立开发者 秦春林
在iOS平台上用Cocos2D做开发 | iOS独立开发者 秦春林
 
在iOS平台上实现全功能视频处理 | 盛大微酷 赵志猛
在iOS平台上实现全功能视频处理 | 盛大微酷 赵志猛在iOS平台上实现全功能视频处理 | 盛大微酷 赵志猛
在iOS平台上实现全功能视频处理 | 盛大微酷 赵志猛
 
iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》| 新浪 张俊林
iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》| 新浪 张俊林iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》| 新浪 张俊林
iOS平台应用详解:《Siri:I,robot! Siri语音识别系统详解》| 新浪 张俊林
 
逆向工程技术详解:解开IPA文件的灰沙 -- 通过静态分析工具了解IPA实现 | 友盟 张超 | iOS DevCamp
逆向工程技术详解:解开IPA文件的灰沙 -- 通过静态分析工具了解IPA实现 | 友盟 张超 | iOS DevCamp逆向工程技术详解:解开IPA文件的灰沙 -- 通过静态分析工具了解IPA实现 | 友盟 张超 | iOS DevCamp
逆向工程技术详解:解开IPA文件的灰沙 -- 通过静态分析工具了解IPA实现 | 友盟 张超 | iOS DevCamp
 
《Passbook实战详解》| 爱图腾 廉洁 | iOS DevCamp
《Passbook实战详解》| 爱图腾 廉洁 | iOS DevCamp《Passbook实战详解》| 爱图腾 廉洁 | iOS DevCamp
《Passbook实战详解》| 爱图腾 廉洁 | iOS DevCamp
 
从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践
从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践
从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践
 

Android音频口数据通信开发 | 爱图腾 李鹏军