Android IOS WebRTC 音视频开发总结(三三)-- Periscope介绍
本文主要介绍Periscope,文章来自博客园RTC.Blacker,支持原创,转载请说明出处。
可能国内很多人没听说过Periscope,这可是现在Twitter上很火的一个APP,先看看人家自己是怎么介绍的:

说明如下:
1、说白了这就是一个手机APP直播,只不过不同于我们平时看到的搜狐视频和YY主播,他支持的是个人直播,任何人拿起手机就可以给别人直播。
2、考虑到推特被封杀以及产品自身原因,不太可能在国内火起来,但一些创业者和公司已经开始开发类似APP了,也包括一些大佬。
不过这块想做好也没那么容易,下面我们先来考虑一下实现都有哪些难点:
1、客户端音视频频数据的采集、播放、降噪、自动增益、与功耗。
2、不同网络状况下的延迟抖动缓冲与丢包重传,NAT倒是不用考虑,因为他都是通过服务端转发的。
3、服务端负载与并发,另外考虑到不同客户端网络状况不一样,所以针对不同客户端的码率,分辨率,丢包处理是个比较麻烦的事。
4、用户体验,产品运营,等等等等。
下面我们先来看看怎样来实现这样一个APP我们哪几种方案:
1、PC时代Flash,FMS,RED5,RTMP基本上就可以搞定这套东西,但移动端是个难点,目前市面上的app基本上都是基于这种方案,我们也有基于这种方案的SDK。
2、其实手机端也有相应的控件支持视频播放,但延迟,交互与用户体验会差一些。
3、接下来就是考虑WEBRTC了,但WEBRTC只是一套客户端的东西,所以用他的话还有很多事情要做,当然native端也存在很多需要优化的。
Android IOS WebRTC 音视频开发总结(三三)-- Periscope介绍的更多相关文章
- 转:Android IOS WebRTC 音视频开发总结 (系列文章集合)
随笔分类 - webrtc Android IOS WebRTC 音视频开发总结(七八)-- 为什么WebRTC端到端监控很关键? 摘要: 本文主要介绍WebRTC端到端监控(我们翻译和整理的,译 ...
- Android IOS WebRTC 音视频开发总结(八十五)-- 使用WebRTC广播网络摄像头视频(下)
本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...
- Android IOS WebRTC 音视频开发总结(八十三)-- 使用WebRTC广播网络摄像头视频(上)
本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...
- Android IOS WebRTC 音视频开发总结(四六)-- 从另一个角度看国内首届WebRTC大会
文章主要从开发者角度谈国内首届WebRTC大会,支持原创,文章来自博客园RTC.Blacker,支持原创,转载必须说明出处,更多详见www.rtc.help. -------------------- ...
- Android IOS WebRTC 音视频开发总结(六)-- iOS开发之含泪经验
前段时间在搞webrtc iOS开发,所以将标题改为了Android IOS WebRTC 音视频开发总结, 下面都是开发过程中的经验总结,转载请说明出处(博客园RTC.Blacker): 1. IO ...
- Android IOS WebRTC 音视频开发总结(二四)-- p2p调用堆栈
本文主要分析webrtc音视频点对点部分的代码结构,文章来自博客园RTC.Blacker,转载请说明出处. 前段时间在查一个偶尔断线的问题(这种问题最蛋疼,不好重现,只能凭经验去搞),所以理了下web ...
- Android IOS WebRTC 音视频开发总结(二三)-- hurtc使用说明
本文主要介绍如何测试基于浏览器和手机的视频通话程序,转载请说明出处,文章来自博客园RTC.Blacker,更多详见www.blackerteam.com 很多人想测试浏览器(包括浏览器版本和桌面e ...
- Android IOS WebRTC 音视频开发总结(六十)-- 您为什么招不到适合的音视频人才
本文主要介绍音视频行业招聘现状,文章最早发表在我们的微信公众号上,详见这里,欢迎关注微信公众号blackerteam,更多详见www.blackerteam.com 有过音视频人才招聘经验的应该都深有 ...
- Android IOS WebRTC 音视频开发总结(五七)-- 网络传输上的一种QoS方案
本文主要介绍一种QoS的解决方案,文章来自博客园RTC.Blacker,欢迎关注微信公众号blacker,更多详见www.rtc.help QoS出现的背景: 而当网络发生拥塞的时候,所有的数据流都有 ...
随机推荐
- windows下Gulp入门详细教程 &&gulp安装失败的原因(红色)
以下教程亲自实践可行: 另外添加一个Gulp自动编译.压缩.更新.测试的教程链接:https://markpop.github.io/2014/09/17/Gulp%E5%85%A5%E9%97%A8 ...
- sql工作问题总结
1. sql排序:1. order by ……2. row_number() over(partition by …… order by ……) 使用说明:此函数适合做分组.排序,而不能在使用它分组的 ...
- $(document).ready() 与 window.onload的区别
1.执行时间 window.onload 必须等到页面内所有元素(包括图片 css js等)加载完毕后才会执行. $(document).ready() 是DOM结构绘制完毕后就执行,不必等到所有元素 ...
- eclipse快速收缩展开代码
快速折叠所有代码和展开所有代码都是CTRL+SHIFT+/
- C# 数据回滚
public int GetExecteQuery(string strAddSql, string strUpdateSql, string strDelSql) { SqlConnection c ...
- iframe 跨域自适应 纯css解决方法
<style type="text/css">body{background:#f00;}body, html,#ifm1{width:100%;height:100% ...
- (easy)LeetCode 228.Summary Ranges
Given a sorted integer array without duplicates, return the summary of its ranges. For example, give ...
- PinYinCls
using System;using System.Data;using System.Configuration;using System.Linq;using System.Web;using S ...
- 自定义View的基本流程
1.明确需求,确定你想实现的效果2.确定是使用组合控件的形式还是全新自定义的形式,组合控件即使用多个系统控件来合成一个新控件,你比如titilebar,这种形式相对简单,参考:http://blog. ...
- startService()和bindService()区别
1. 生命周期:startService()方式启动,Service是通过接受Intent并且会经历onCreate()和onStart().当用户在发出意图使之销毁时会经历onDestroy(),而 ...