一、前后端联调

1.前后端集成环境搭建
image.png
2.如何搭建前端环境
—安装node.js
—环境变量中配置环境:搭建环境的讲义中有具体操作
—安装cnpm(01前后端环境搭建文件中有讲解)
—前端工程导入(2个:教学机构portal,运营admin)
—copy到有个文件夹解压
—进入其中一个文件路径,输入cmd:cnpm i :下载依赖
—运行portal:cnpm run server
—运行admin:cnpm run dev
_package.js文件中会定义运行的命令(二者不一样)

提示:在执行 cnpm i 的时候要求网络,要不然可能会导致依赖下载失败,到时运行出错

以下测试前(启动网关,系统管理微服务)
小bug:如果一个服务刚注册的nacos时,通过网关访问不到,说明服务启动后存在一个预热期,等会访问就好了。
3.对课程基础信息测试
查询
—问题:新添加的课程,需要翻到最后面在可以看到
优化:最新添加的课程显示再最前面
做法:根据时间做排序
image.png
添加

修改

删除
—问题:前端删除后,并没有消失
优化:删除数据需要过滤,在查询方法中添加对statu=1的条件

4.对课程计划信息测试(运营)
添加章节
修改
查询
删除 遵循原则:存在小节时不可以删除大章节,存在媒资时,不可以删除
5.课程审核测试(运营)

二、媒资业务说明

image.png
2.媒资操作参与:教育机构和运营平台
业务:
教育机构上传媒资———》运营查看审核,审核通过——-》教育机构才可以绑定
注:媒资审核不通过,没有办法修改后再进行绑定,教育机构需要删掉媒资,重新上传
image.png

3.媒资的数据模型
image.png
(1)媒资信息表需要字段
**后期细讲

4.流媒体服务:
1.对于流媒体的技术不了解
2.搭建流媒体服务成本非常高
中小型公司不会自己去搭建流媒体服务。
企业通常直接使用云服务,而不自行开发,原因在于:(背)
●快速实现产品,快速交付产品,不必重头开始研发
●减少技术投入,包括时间、人力
●直接使用成熟的技术方案,避免技术风险
为什么使用阿里云视频点播服务?(背)
经考量,阿里云视频点播服务功能完善、SDK便于使用、API丰富,并与阿里云生态完美集成(我们项目中是偏向阿里系列),因此我们项目选择使用它。

三、阿里云视频点播服务

产品功能概述

阿里云将流媒体服务分为两大类:
1.(我们学这个)点播:
2.直播:
阿里云点播一条龙服务:
我们只用上传和管理
image.png

阿里云点播入门

1.开通步骤
—访问阿里云官网,在右上角单击登录或注册。
—在阿里云官网进入VOD产品详情页,单击立即开通。
—开通完成后,即可进入VOD控制台概览页面,开始使用点播服务
2.基础配置
—媒资管理管理配置-存储管理
3.通过控制台上传文件
—选择媒资库 > 音视频,单击上传音视频。
—在上传音视频页面,您可以根据需要连续添加多个音视频或选择移除某个音视频,单击开始上传。
—已添加的本地视频文件进入上传阶段,当上传进度为100%时,完成上传操作
注:在线预览是的视频格式必须是MP4,HTTP协议规定

阿里云SDK代码操作

上传流程:
image.png
视频播放流程
image.png
官方提供的代码

1.视频上传获取上传凭证

1.示意图(上传凭证需要使用方通过 AccessKey + 存储区域标识 + 文件源信息 来生成。
image.png
2.代码(媒资服务中心-——-》导入依赖———》初始化(官方CV):初始化客户端对象:传入AK,SK、;点播服务接入地址)———-》后端获得凭证(获得凭证代码:请求——》初始化——-》响应(视频id,地址,)凭证有效期是3000s)———-
点播服务地址赋值
image.png
代码所处位置:image.png

2.获取视频播放地址获取

为什么播放地址是个list?
上传时间太长?
上传大视频的优化:断点续传
为什么网速会影响清晰度?
清晰度越高,码率越高,上传的数据就会越多,当前网络达不到,就会导致视频卡顿
为什么清晰度越高,码率越高,上传的数据就会越多?
因为清晰度越高像素点越密集,传输越多

四、媒资文件上传

1.导入媒资代码
2.运行sql脚本
3.配置阿里云基础配置
4.媒资管理应用配置

媒资上传:

阿里云视频点播支持多端上传、并发上传、断点续传,满足不同场景下的上传需求,同时支持短视频SDK直接上传及直播录制转点播的一体化方案。
●上传方式 提供上传SDK,支持Web端(JavaScript)、移动端(Android,iOS)、服务端(JAVA),以及上传OpenAPI,也可以通过控制台和PC客户端工具上传,并支持直播录制转点播
●支持类型

| 类型

| 格式

| | —- | —- | | 视频

| 3gp, asf, avi, dat, dv, flv, f4v, gif, m2t, m3u8, m4v, mj2, mjpeg, mkv, mov, mp4, mpe, mpg, mpeg, mts, ogg, qt, rm, rmvb, swf, ts, vob, wmv, webm

| | 音频

| aac, ac3, acm, amr, ape, caf, flac, m4a, mp3, ra, wav, wma

| | 图片

| png,jpg,jpeg

|

媒资管理:

  1. **阿里云视频点播**提供集上传、存储、媒资管理于一体的媒体管理方案,可以方便、灵活的管理海量视音频素材。<br />●媒资存储 <br />数据多重冗余备份,提供异地容灾和资源隔离,提供 99.999999999119)% 的数据可靠性,您可以在任何应用、任何时间、任何地点存储和访问您的数据。(阿里云一年宕机时间为5-7分钟,0.111111111*一年的时间,为宕机时间,所以9越多,越安全)<br />●媒资管理支持通过控制台或 API 对媒资进行管理。<br /> ○列表式视频管理,在线预览视频<br /> ○媒资信息编辑:标题、描述、封面设置等,支持自定义媒资元数据管理<br /> ○媒资多级分类、标签<br /> ○媒体名称模糊搜索及媒资ID精准搜索<br /> ○文件管理,支持查看视频地址<br /> ○视频信息CSV导出,包括视频的ID、名称、视频地址等

收费标准:

用多少收多少(我们用这种方式)
包月
image.png

大文件上传怎么做优化?断点续传
什么是断点续传:(上传和下载都可以用到,将文件或分成几个部分,每部分找个现成,进行上传下载,如果遇到网络问题,可以从已经上传或下载的部分开始下载或上传,不需要从头再来)
断点续传解决了什么问题:文件上传时间缩短(分片上传),达到提速速(多线程同时支持多片上传)
断点续传原理:利用HTTP请求中的两个字段:客户端请求头中的Range(实现上传),和服务端响应头的Content-Range(实现下载)
(Content-Length会告诉服务端上传文件多大,上传直到到了length,然后则上传结束,服务端进行合并)
断点续传如何实现?
(云服务已经写好啦,直接CV)
若非要自己写,就辞职!https://blog.csdn.net/u012319157/article/details/79111491

1.需求分析

上传时序图:接口①和接口②
image.png
image.png
接口①:传入filename,filetitle
返回:VideoId(视频id),address,auth(凭证)
image.png
接口②:传入:videoId
传出:刷新凭证
image.png

image.png

媒资文件删除
(本地和阿里云先删哪一个?首先要考虑事务,我们能控制的只能是本地的,所以要把,阿里云往后放,两个都成功则都成功,阿里云失败了,则本地可以回滚,若本地失败,下面的代码不用执行。
如果先删阿里云,如果失败,再次删本地,则会导致阿里云直接抛出异常,本地产生脏数据,没有办法删掉本地了)