移动设备的实时交换和流媒体
你口袋里的制作工作室——也就是你的智能手机或平板电脑——有一个相当好的摄像头, 蜂窝数据或Wi-Fi连接, 甚至可能是外部麦克风输入和HDMI输出连接器. 本文将描述来自移动设备的两种不同的直播流:自包含流和多设备同步流.
你口袋里的制作工作室——也就是你的智能手机或平板电脑——有一个相当好的摄像头, 蜂窝数据或Wi-Fi连接, 甚至可能是外部麦克风输入和HDMI输出连接器. 如果你仔细想想,这是非常了不起的, 因为你可以使用一个移动设备来拍摄和记录内容, 在大屏幕上回放, 给所有来访的朋友留下深刻印象, 向他们展示你最近一次旅行的数字幻灯片.
但如果你想直播你的旅行,让同样的朋友有机会看到你的冒险呢? 你也可以在没有手机连接的情况下这样做,假设你不在廷巴克图.
更好的是, 两者都可以, 直播你的动作场面, 同时将内容记录到您的移动设备上,以便稍后进行增强(或者可能会剪掉错误的卷轴)。. 这种方式, 你可以把高质量的版本展示给你从酋长岩胜利归来后顺道拜访的所有朋友, 亚速尔群岛, 甚至是密尔沃基.
所有这些情况真的都有可能发生吗? 当然,这篇文章将告诉你如何处理这三种情况.
在此, 我将描述两种不同类型的移动设备直播:自包含流媒体和多设备同步流媒体.
从头说起
让我们从基本连接开始. 大多数移动设备, 特别是智能手机, 有手机数据包吗, 通常用首字母缩写来表示:3G, 4G, HSDPA, 或LTE. 一些平板电脑有蜂窝数据, 而几乎所有的手机都有无线上网功能, 通常被称为Wi-Fi.
使用Wi-Fi进行直播需要本地Wi-Fi接入点(AP)与外界有正确的连接. 可以使用一些直播工具在本地进行直播, 或围绕虚拟专用网(VPN), 但是,当你可以与整个WWW人口共享时,与十几或几百人分享你的直播流又有什么乐趣呢?
对于独立的流媒体来说,除了基本的无线连接,没有什么其他的了. 你需要下载一个应用程序并注册一个帐户来直播你的冒险. 有时,这两者与为Android或iOS设备提供基本直播应用的直播服务提供商并驾齐驱.
底层的流媒体技术因应用而异, 但独立直播应用的三种基本流媒体格式是RTSP, RTMP, 或者更新的HLS.
RTSP是最初的实时流媒体协议,它是最普通的. 这对持续的连接很有好处, 带宽波动不大的地方, 因此,它在移动应用程序中的使用几乎每周都在减少. 直播RTSP流的主要优点是,使用RTSP播放器的观众不需要Flash或任何特殊的客户端配置.
另一方面,RTMP继续被广泛用于实时流应用程序. RTMP更加健壮,并已被主流流媒体平台广泛采用. 它还有一个额外的好处,可以在许多媒体服务器中使用. 如果你打算建立自己的内容分发,后者是很好的选择.
我们的游戏读者可能知道如何从桌面进行设备内流媒体, 使用Twitch(以前是Justin)等服务.电视),让成千上万的观众关注他们的电子竞技动作. Twitch使用RTMP作为流, 它还可以接收来自移动设备的数据流, 尽管它是通过智能手机的摄像头而不是设备内的游戏实现的. Chhopsky.电视提供了一个 优秀而简单的教程 关于如何将RTMP URL与Twitch密钥相结合.
Broadcast Me by Agilio; GoCoder (下面的图1), which also makes the Wowza Streaming Engine; and the open-source Red5 Pro, which was built as a fork to the open source Red5 Server media server; are examples of RTMP mobile live-streaming apps or software development kits (SDKs). Red5 Pro有一个有趣的功能,允许双向聊天作为直播的一部分.
![](http://dzceab466r34n.cloudfront.net/Images/ArticleImages/InlineImages/107295-siglin-mobile-1-ORG.png)
图1. Wowza GoCoder
HLS, 苹果的HTTP流媒体直播技术, 是否开始更多地用于移动直播, 尽管它增加了相当大的延迟,因为视频流被分割成2秒到10秒的部分,然后封装为MPEG-2传输流(M2TS)数据包,由HTTP服务器交付. 成千上万这样的片段,以小文件的形式,组成了一个直播流.
而小文件服务不会增加太多的处理负载, 分割增加了时间和额外的处理能力. 因此, 使用HLS从独立的移动设备进行直播可能会对电池寿命和额外的处理产生一定的负面影响.
还有一些工作要做. 部分工作来自于Android设备中缺乏一致的HLS实现——不仅仅是在直播的Android设备上, 而是在那些接收直播的安卓设备上. JWPlayer的团队每年都会发布一个 HTML5的报告,为Android用户提供一些优秀的HLS流示例,以测试他们设备的HLS兼容性.
“在Android或其他非ios平台上支持HLS流的最简单方法是提供后备RTSP流,JWPlayer团队在一篇名为 Android的直播之痛. 还有一个很棒的o针对移动设备的HTTP直播的概述 发表在《百家乐软件app最新版下载》上.