`
马晨辉
  • 浏览: 52329 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

webrtc for android demo 开发

阅读更多
近段时间,研究了一下WebRTC 的一些东西,写一写感想,总结一下

1.编译WebRTC for android
    这个没有太大的难度,按照官方网站的教程进行编译就可以
    但是你再运行的时候会遇到一些问题,错误控制台会提示缺少文件,你需要从WebRTC 的工程中,找到这些文件,并添加到对应的目录。然后就可以运行了。
    之后可以找两台机器,只要把IP 和端口填写正确就可以通信了。(但是这其中有隐患,在你真正想做成工程化的时候,你就知道了)

2.编写服务器端的UDP 转发
   这个没什么太难的,只是因为我是初次使用 golang 语言进行开发的,所以浪费了一点时间。其实没什么东西,要确保原封不动的把UDP 包转发过去就可以。

3.修改客户端文件,让视频流经过服务器中转。
   这步是有些困难的,也是我浪费时间比较多的地方。经过最终的研究,和高人的指点,找到了问题
   3.1 要对WebRTC 的视频流传输协议有一定的了解。
        它是先发送第一张图片,然后发送的针都是和上一张图对比的差异化结果,如果图片视频有大的变化是,就会重新发送头指针图片,然后重复这个过程。
        所以可以看到,在你向对方发送视频之前,确保对方已经打开了receiver 的监听。
        我现在的做法是在onCreate 的时候,就打开了监听。只是做Demo后期可以优化。
   3.2 对于带宽的要求,它有一个初始化的带宽参数,500,但是很多情况下,这个参数太大了,如果网速慢的话,还有就是丢包严重的情况下,这个参数太大,视频就卡住了,或者解码异常了。我现在这个参数写的是150。当然了,图像的清晰度就不够了。

基于这些修改,我现在的WebRTC的Demo就做完了,现在两太机器可以正常通信了。后续的任务还很多。
分享到:
评论
6 楼 spinshine 2014-08-15  
你这个写的也太模糊了。 只说用转发,完全不知道怎么实现的。
服务端的demo也没有。
5 楼 xinzhengjie 2014-06-03  
大哥 ,您好 ,我现在也是想把webrtc结合到项目里面去,但是 就是你之前提到的,这里需要设置IP,而且 我反复 看了几遍 webrtc代码 没看到 在哪里发送的和接收流数据 可以交流一下么,QQ397591922,谢谢
4 楼 shenvsv 2013-09-24  
我在github上发现了你的demo,但是我不清楚如何使用它,我有两部4.0以上的手机
3 楼 shawnkong 2013-07-09  
关注一下,好东西
2 楼 马晨辉 2013-06-09  
是的,是服务器的转发
1 楼 loocao 2013-02-21  
请问"服务器端的UDP 转发"这个是什么意思?会不会将WebRTC的视频音频数据通过服务器端转发?

相关推荐

    webrtc android 服务器demo

    本“WebRTC Android 服务器demo”项目是一个完整的示例,它演示了如何在Android设备上使用WebRTC与浏览器前端进行实时通信。项目中,信令服务器采用了Node.js这一轻量级、高性能的服务器端JavaScript运行环境。 一...

    webrtc安卓版本官方demo57版本,方便测试用

    压缩包内的文件“webrtc安卓版本demo_57”可能是包含该WebRTC Android demo的APK文件或者源代码目录,开发者可以通过安装APK来直接在Android设备上运行演示,或者通过源代码学习如何集成WebRTC到自己的Android应用中...

    Webrtc aecm for android Demo by bill

    Bill Hoo分享的这个GitHub项目是针对Android平台实现的WebRTC AECM demo。开发者可以通过这个项目学习如何在Android应用中集成和使用WebRTC的回声消除功能。项目中可能包含了以下关键组件和概念: 1. **Native库**...

    android webrtcdemo

    "android webrtcdemo"是一个专为Android平台设计的WebRTC学习示例,它展示了如何实现多人视频通话和一对一通话功能。 首先,我们需要理解WebRTC的基本组件和流程。WebRTC系统主要包含以下部分: 1. **User Agent ...

    安卓下 android webRTC-Demo

    标题“安卓下 android WebRTC-Demo”指的是一个Android应用示例,展示了如何在Android设备上使用WebRTC技术进行实时通信。这个Demo适用于开发者,特别是对WebRTC不熟悉的Android开发者,他们可以直接导入Eclipse IDE...

    WebRtcDemo_Android_armv7

    "WebRtcDemo_Android_armv7" 是一个针对Android平台、基于armv7架构的WebRTC演示应用,经过验证能够正常运行并集成到其他项目中,为开发者提供了一种在Android设备之间实现音视频通话的解决方案。 1. **WebRTC概述*...

    webrtc安卓版本官方demo56版本,方便测试用

    本压缩包包含的是WebRTC的Android版本官方Demo,具体为56版本。这个版本可能包含了WebRTC开发团队在该时间点的最新改进和优化,旨在为开发者提供一个易于测试和学习的基础平台。"webrtc吧(www.rtc8.com)"是可能的一...

    WebRTC学习笔记_Demo收集 .docx

    2012年,Google在最新的Chrome for Android版本中正式支持WebRTC,这标志着WebRTC技术开始走向成熟,并且吸引了越来越多开发者和企业的关注。如今,WebRTC不仅被集成到主流浏览器中,还被广泛应用于各类应用场景,...

    WebRTCDemo-debug.apk源码,基于ADT及NDK的项目

    在这个"WebRTCDemo-debug.apk源码"项目中,我们拥有一个基于Android开发工具集(ADT)和Native Development Kit(NDK)构建的示例应用,它展示了如何在Android设备上使用WebRTC进行局域网内的P2P视频通话。...

    starrtc-android-demo,

    "starrtc-android-demo"是一个开源项目,专为Android平台设计,用于实现实时通信(RTC,Real-Time Communication)功能。这个项目的目的是提供一个基础框架,让开发者能够快速地在自己的应用中集成音视频通话和聊天...

    flutter使用webrtc技术实现共享桌面,视频

    在开发过程中,务必关注错误处理,因为WebRTC涉及到复杂的网络交互。使用日志和调试工具可以帮助追踪和解决问题。 7. **界面设计**: Flutter的强项在于构建美观的用户界面。你需要设计并实现视图来展示本地和...

    Rtc android demo

    通过分析这个“Rtc Android Demo”,开发者可以快速上手使用huRTC,理解RTC在Android应用中的实现细节,并根据需求进行二次开发,构建自己的实时通信应用。同时,对于学习Android音视频编程和了解WebRTC技术,这个...

    安卓获取麦克风声音大小经典满意Demo

    在安卓平台上,开发一款应用获取麦克风声音大小是常见的需求,比如用于实时音量指示、噪音检测或音乐应用。这个“安卓获取麦克风声音大小经典满意Demo”应该提供了一个实现这一功能的示例代码。下面我们将详细探讨...

    基于SkyRTC实现Web、iOS、Android多平台,多人视频的通讯Demo

    3. Android平台:在Android上,SkyRTC通常基于Java或Kotlin,利用Android的Media APIs和WebRTC库。开发者需要处理权限请求、设备选择、音视频编码解码等问题。 四、Demo实现步骤 1. 初始化SkyRTC客户端,设置必要的...

    KurentoAndroidDemo:基于kurento-room的视频会议

    该项目使用Java作为主要编程语言,这得益于Java在Android开发中的广泛支持和丰富的库资源。在项目的源代码中,我们可以看到以下几个关键模块: 1. **初始化KurentoClient**:首先,应用需要连接到运行Kurento媒体...

    Android-OpenSLES.zip

    Android OpenSLES(Open Sound System for Linux-based Systems)是Google为Android平台提供的一个底层音频库,它提供了一套强大的工具来处理复杂的音频任务,如回声消除和降低声音噪音。本篇将深入探讨如何基于...

    Jitsimeet.apk

    官网demo地址: https://meet.jit.si/ Github地址: https://github.com/jitsi Github推荐指数: 1678(star) 功能(官方原文翻译): 不像其他的视频会议技术,Jitsi Videobridge是jitsi的核心,将...

Global site tag (gtag.js) - Google Analytics