可以使用OSS LiveChannel来实现:
OSS LiveChannel介绍: 使用OSS LiveChannel来管理RTMP推流,即直播频道。每个LiveChannel从属于一个Bucket,用户可以在同一个Bucket中创建多个直播频道。通过LiveChannel,用户可以获取对应的RTMP推流地址,将音视频数据通过RTMP协议推送到OSS,并在OSS中以HLS协议的ts、m3u8文件进行存储。
RTMP推流到OSS: 用户可以使用RTMP协议将音视频数据上传到OSS。通过配置LiveChannel,用户可以方便地获取推流地址,并实现音视频的实时存储。
实时截图与鉴黄: OSS支持在LiveChannel中实时截图,同时可以结合第三方鉴黄服务对截图进行鉴别。用户可以设置LiveChannel开启截图,OSS按照用户指定的间隔截图并保存到OSS。后续,通过鉴黄服务对截图进行审核,确保直播内容的合规性。
权限控制: OSS提供丰富的鉴权/授权机制,使用户可以精细地控制数据的访问权限。对于HLS直播/点播场景,OSS支持动态签名m3u8的机制,使用户可以使用私有Bucket提供HLS播放服务,并通过URL签名方式访问m3u8,保障播放数据的安全性。
数据生命周期管理: 利用OSS的数据处理能力,用户可以进行各种后期处理,包括截图、转码、鉴黄等。同时,OSS的Lifecycle等功能可以用来做数据的生命周期管理,确保数据存储的高可靠性和低成本。通过以上方式,用户可以在直播的同时将音视频内容存储到OSS,充分利用OSS的高可靠、低成本、无限扩展的云存储特性。通过OSS的数据处理能力,用户可以实现多种监管和风控需求,并在享受直播服务的同时降低数据存储成本。
api文档:https://help.aliyun.com/zh/oss/developer-reference/overview-70
参考文档:https://developer.aliyun.com/article/66182
网友回复
为啥所有的照片分辨率提升工具都会修改照片上的图案细节?
js如何在浏览器中将webm视频的声音分离为单独音频?
微信小程序如何播放第三方域名url的mp4视频?
ai多模态大模型能实时识别视频中的手语为文字吗?
如何远程调试别人的chrome浏览器获取调试信息?
为啥js打开新网页window.open设置窗口宽高无效?
浏览器中js的navigator.mediaDevices.getDisplayMedia屏幕录像无法录制SpeechSynthesisUtterance产生的说话声音?
js中mediaRecorder如何录制window.speechSynthesis声音音频并下载?
python如何直接获取抖音短视频的音频文件url?
js在浏览器中如何使用MediaStream与MediaRecorder实现声音音频多轨道混流?