边采集边上传

来源:互联网 发布:2016淘宝域名怎么设置 编辑:程序博客网 时间:2024/05/17 03:14

其实,本地录音,上传到服务器,获取语音识别结果的过程,就是边采集,边上传,边获取相应包的过程。

有一个android的讨论:http://www.apkbus.com/android-44735-1-1.html

难点在于如何将microphone的数据实时传递到服务器,服务器端如何识别实时语音流并返回识别的结果。

其他参考:http://blog.csdn.net/lvjunwoaini/article/details/7035601

关于android的实时视频录制现在网上炒的很火,我想把自己学习研究的一个视频录制的demo 的心得与大家分享一下

 

使用的是MediaRecorder 以及使用SurfaceView进行录制的。

视频录制的部分也比较简单,直接看API的图就可以很清楚的知道步骤了。
Android的MediaRecorder包含了Audio和video的记录功能,在Android的界面上,Music和Video两个应用程序都是调用MediaRecorder实现的。
通过操作这个MediaRecorder类就能实现这个音频和视频的录制。


通过几个星期的努力做了一个基本成型的东西。可以录制视频并且可是实时的上传到服务器端。但是没有解决实时的问题,正在研究当中。但是在实时的上传的时候会遇到很多问题。

1.就是在保存本地的路径换成Socket android 的IPA可以支持可以用Socket 来传输

ParcelFileDescriptor pfd = ParcelFileDescriptor
        .fromSocket(receiver);
      mediaRecorder.setOutputFile(pfd.getFileDescriptor());

只要把参数换成Socket 就可以。

但是有个问题,可是实时的传到服务器上。有数据,但是就是不能播放。具体查了好多资料,知道什么原因,但是没有具体的解决方法,目前正在研究方法中。

1.具体不能播放的原因就是,在视频的录制的时候都有个数据回写功能。数据回写就是把视频一些标题数据信息,加载到录制的文件的开头,要是在录制视频没有这个标题头的话就不能播放视频,在本地录制的可以播放,但是用Socket 传输的话就是把那个信息数据加到文件的后面。导致文件开头没有信息无法播放,所以现在正在研究解决方法。

具体实时的上传的代码如下可以参考。


0 0