首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >90%的直播高手都会遇到这些坑

90%的直播高手都会遇到这些坑

作者头像
腾讯云音视频
修改2018-10-11 16:53:41
2.7K0
修改2018-10-11 16:53:41
举报
文章被收录于专栏:音视频咖音视频咖

通过直播,将公益传播得更广,让人们更深入的体会爱的力量。

直播技术,到底有哪些典型的应用呢?

想把直播结合到公司业务中,会踩哪些坑呢?

2大直播场景

NO.1 单场次直播

▲发布会直播/会议直播/活动直播等

可以通过手机端或专业设备进行推流,将活动直播到网络上。

直播不仅覆盖了娱乐领域,还延伸到了公益活动、助残、教育等领域。

NO.2 秀场直播

▲秀场直播/游戏直播/多房间直播

游戏直播等场景中,大多数会用到聊天框、弹幕消息、爱心点赞,主播端会有美颜增白、动效蒙皮、连麦互动等功能。如果没有这些功能,想象一下关闭美颜功能的主播,会是什么样子。

面临的挑战

5大天坑

NO.1 推流

所谓万事开头难

而直播的第1步,便是推流

@某公司技术工程师:创建直播流,过期怎么办?

@直播技术支持回复@某公司技术工程师:

直播码模式有有效期,频道托管模式不会过期

▲直播码接入和频道接入的区别

总而言之,直播码接入更适合多房间的直播,比如游戏直播;频道接入更适合单场次的直播,比如发布会直播

@某公司技术工程师:通过调取api接口,获取直播推流地址,该如何着手?

@直播技术支持回复@某公司技术工程师:

推流地址可以通过后台自动拼装得到

▲推流地址的拼装规则

@某公司技术工程师:如何用api调取来结束推流

@直播技术支持回复@某公司技术工程师:

要做好清理工作,因为用于推流的 TXLivePusher 和用于显示影像的 TXCloudVideoView 都是不能多实例并行运转的,所以清理工作不当会导致下次直播遭受不良的影响。

//结束推流,注意做好清理工作
public void stopRtmpPublish() {
    mLivePusher.stopCameraPreview(true); //停止摄像头预览
    mLivePusher.stopPusher();            //停止推流
    mLivePusher.setPushListener(null);   //解绑 listener
}

@某公司技术工程师:老板总不按常理出牌,只直播音频,怎么办

@直播技术支持回复@某公司技术工程师:

可以按照以下方法实现

▲纯音频推流的步骤

NO.2 SDK

@某公司技术工程师:在线教育,老师进行视频直播,学生连麦只进行纯音频直播,应该怎样搭建呢?

@直播技术支持回复@某公司技术工程师:

可以通过云端混流来实现

▲直播老师讲课,学生连麦语音交流

具体代码可参考腾讯云直播官网《混流demo》,参考|demo_stream1_and_audio15.py|1音视频+15纯音频混流|

NO.3 录制截图问题

@某公司技术工程师:直播可以回放吗?

@直播技术支持回复@某公司技术工程师:

可以开启录制然后存储在点播系统上,进行回放,具体看以下流程

▲录制流程图

对于一条直播流,一旦开启录制,音视频数据就会被旁路到录制系统。主播的手机推上来的每一帧数据,都会被录制系统追加写入到录制文件中。

@某公司技术工程师:如何将一个时长为16小时的直播流,进行自动抽取录制,最后生成十几分钟的短视频?

@直播技术支持回复@某公司技术工程师:

可以设置定时录制,在生成许多个短视频文件后,将其拼接成1个视频文件,如下图

▲自动剪辑精彩集锦的步骤

NO.4 直播播放问题

@某公司技术工程师:如何给直播加防盗链机制?

@直播技术支持回复@某公司技术工程师:

通过在直播管理控制台,配置 防盗链加密 KEY,防止攻击者获得加密 KEY,也就防止了伪造出有效的推流 URL,达到防盗链的目的,如下图所示:

▲防盗链机制图

@某公司技术工程师:直播支持https协议吗?

@直播技术支持回复@某公司技术工程师:

支持的,可以用两种方式来满足

方式一:

在原有的http协议的播放链接上加s

方式二:

后台自动拼装成https协议的播放链接

推流地址格式:

rtmp://bizid.livepush.myqcloud.com/live/bizid_id?

则播放地址的格式为:

rtmp://bizid.liveplay.myqcloud.com/live/bizid_id
http://bizid.liveplay.myqcloud.com/live/bizid_id.flv
http://bizid.liveplay.myqcloud.com/live/bizid_id.m3u8

例如,账号对应的bizid为8888,ID为test,则播放地址为

http://bizid.liveplay.myqcloud.com/live/bizid_test.flv
http://bizid.liveplay.myqcloud.com/live/bizid_test.m3u8

bizid在直播控制台可查看,ID一般为英文字母加下划线组成

NO.5 费用问题

身为一名技术小哥,不仅要上知开发代码,下知费用报价,不想成为产品经理的技术不是一个好财务

@某公司技术工程师:关于录制的计费问题,每一路需要30元。每个直播间的推流即算作一路,那么这个直播间可以复用吗?两个人今天结束了谈话断开流,明天在用相同的直播间id进行交流,算一路还是两路呢?

@直播技术支持回复@某公司技术工程师:

制计费是统计当月直播流并发录制路数的峰值。

同时录制的直播流数量为并发录制路数,每5分钟统计一个并发录制路数,一个月内最大的并发录制路数为月并发录制峰值路数,可以参考下图

▲录制费用图

@某公司技术工程师:怎么计算视频直播的费用?

@直播技术支持回复@某公司技术工程师:

直播的费用可以参考下图

▲直播费用全景图

只要基础流量费用,其他费用,可以看具体需求。

@某公司技术工程师:我开了很多房间直播,我如何知道一个特定房间的流量呢?

@直播技术支持回复@某公司技术工程师:

查询某条直播流的统计信息(如观看人数、带宽、码率、帧率等)获取统计信息,如图

▲通过API读取流量的示意图

@某公司技术工程师:怎样计算一场直播,100人观看,大概消耗多少流量?

@直播技术支持回复@某公司技术工程师:

一个直播频道流量消耗=(直播码率/8)*直播观看时长(秒)*观看人数

▲直播流量计算公式

举个例子:

直播码率为500kbps,直播时长为1小时,观看人数为100人,则消耗的流量约为:22.5GB。

计算方法: 500/8*3600*100=22500000KB,22500000KB/1000/1000=22.5GB

计费流量为所有直播频道流量消耗的总和

盘点完5大天坑,想必大家都是直播届的道友了。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-09-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯云音视频 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云直播
云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档