七牛云申请直播服务操作参考官方文档: 参考GitHub地址: 我改造的代码,可能不够简洁,这样返回的就是鉴权后的播放地址 邮箱:18827526631@163.com七牛云直播java服务端,新人鉴权访问问题教程
七牛云直播java服务端接入
七牛云直播服务开通准备工作
参考地址:
链接: 七牛云官方参考文档.七牛云java—sdk官方参考案例
链接: 七牛云官方java参考案例.运行环境
操作第一步
RTMP推流地址: client.RTMPPublishURL(domain, hub, streamKey, expireAfterDays)
RTMP直播地址: RTMPPlayURL(domain, hub, streamKey)
HLS直播地址: HLSPlayURL(domain, hub, streamKey)
HDL直播地址: HDLPlayURL(domain, hub, streamKey)
直播封面地址: SnapshotPlayURL(domain, hub, streamKey)
Hub
创建流: hub.create(streamKey)
查询流: hub.get(streamKey)
列出流: hub.list(prefix, limit, marker)
列出正在直播的流: hub.listLive(prefix, limit, marker)
批量查询直播实时信息: hub.batchLiveStatus(streamTitles)
Stream
流信息: stream.info()
禁用流: stream.disable() / stream.disable(disabledTill)
解禁流: stream.enable()
查询直播状态: stream.liveStatus()
保存直播回放: stream.save(key, start, end) / stream.save(saveOptions)
保存直播截图: stream.snapshot(snapshotOptions) zzz
更改流的实时转码规格: stream.updateConverts(profiles)
查询直播历史: stream.historyRecord(start, end)// 引入jar包,多余的可以删除 compile 'com.qiniu:qiniu-java-sdk:7.2.+' compile 'commons-codec:commons-codec:1.10' compile 'org.springframework.boot:spring-boot-starter-web' compile group:'com.squareup.okhttp3', name:'okhttp', version:'3.2.0' compile group:'com.google.code.gson', name:'gson', version:'2.6.2' testCompile 'org.springframework.boot:spring-boot-starter-test' testImplementation group: 'junit', name: 'junit', version: '4.12'
操作第二步
引入官方提供的工具,多余的可自行删除,主要用Client.java中的方法,主要是官方的工具里没有封装鉴权方法,这边需要自己改造一下
鉴权参考地址:七牛云官方参考鉴权文档.
主要是这里面的KEY,在官方文档没有说清楚,造成鉴权失败,这边跟七牛云技术支持让他们帮忙看,也说不清个所以然,只会让参考这个文档,那个文档,所以发帖说明这个KEY是从哪里来的
在七牛云中时间戳防盗链会有很多地方都会进行设置,cdn加速那块也有时间戳防盗链,开始问七牛云的技术支持问他是不是哪里的key,回复我是的,结果不是那里的,害的浪费时间去处理鉴权;
这个key会有三个地方进行获取,在直播空间中域名管理里面获取,这里会配置三个域名作为播放,RTMP、HLS、HDL,还有一个RTMP推流域名
这里点击操作里的管理
这里设置主密钥跟副密钥,也就是在鉴权时用的key,官方文档没有说明,被坑三天配置完KEY,就是改造代码
这边找个方法举例
官方封装的方法是这样的/* HLSPlayURL generates HLS play URL */ public String HLSPlayURL(String domain, String hub, String streamKey) { return String.format("https://%s/%s/%s.m3u8", domain, hub, streamKey); }
/* HLSPlayURL generates HLS play URL 设置的过期时间戳:expireAfterSeconds 这个就是空间域名里的时间戳防盗链里设置里配置的key: hlsKey */ public String HLSPlayURL(String domain, String hub, String streamKey, int expireAfterSeconds, String hlsKey) { long expire = System.currentTimeMillis() / 1000 + expireAfterSeconds; String path = "/"+hub+"/"+streamKey+".m3u8"; String expireHex = Long.toHexString(expire); String toSignStr = String.format("%s%s%s", hlsKey, path, expireHex); String signedStr = md5ToLower(toSignStr); return String.format("https://%s/%s/%s.m3u8?sign=%s&t=%s", domain, hub, streamKey,signedStr,expireHex); }
如有侵权请联系删除
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算