|
|
本帖最后由 tufei 于 2017-3-13 13:37 编辑
& u0 Y; f4 ^* t- b
# _6 A o4 q: @& q! j7 g* K" a经过这2天的了解学习,对视频流播放有了大概的了解。但因为第一次搞这块。还是想各位前辈给点经验指导。
! b5 z# z7 h. r/ f视频服务器的上传打算采用这2种方式:
( ?6 z. e6 O! P6 A1 U" m: R7 L, ^- ~
第一种方式:1. laravel+ffmepg+ngingx+videojs
% N/ {9 `: p# w7 Q9 ~( e即: laravel开发上传接口,提供上传rest api,以及上传认证功能,返回视频上传后的地址& f& F% L* C" G3 d/ ~7 ^% E- i% z
ffmepg作为上传过程中对视频转码,以及切片的功能,不做推流处理
9 `1 j$ q- O2 P3 M% N5 N" z nginx作为web服务器8 o( z* N# i: A4 D; P2 k) a
videojs作为H5播放器) g* m# i" }7 W# {1 V5 h/ v$ v3 m
6 m; _/ u3 k( Z6 S& ~2 E
参考播放页面:http://www.advertstudy.com/movie/movie.html (nginx+videojs) & l; N7 m$ o9 @0 A6 k
: ?. w* x* h# X* \; ?; f
第二种方式. laravel+ffmepg+nginx+videojs + 新增(nginx+rtmp moudle)+(配置nginx支持hls 方式播放)
3 g% U% I' N( ^+ A/ s& M- h6 g6 m$ I/ n* Y2 X3 ~
第二种方式主要增加了对rtmp协议 和hls的支持,支持直播方式,用ffmepg 推流,可以对点播的视频,进行ts后缀 小文件的推流处理。
& q+ f, v* r6 U3 u) D6 v6 x
6 r' S" ^" N) A8 S9 l1 m问题1.
0 T7 ~- x3 `* ` ^8 T+ V% H第一种方式播放,其实就是直接对视频的点播。指定视频地址,以及缩略图地址。1 [% j$ h& u, ^4 W+ ^: d% n: z
第二种方式支持,rtmp,和hls的协议以及直播的方式。2 ?& X* B( \$ \( i. C* e
这种方式可以对视频可以进行一个10秒钟的一个小文件的保存。以及m3u8的文件格式的播放,(本质应该是用 ffmepg推流,然后客户端用相应的协议去接流比如用rtmp,http协议); q$ k* S* Y0 X! O7 a, Q
如果我只是对MP4格式的视频做点播。有必要弄hls支持吗?不同大小的视频文件比如50MB 跟500MB 有性能差异?
& x4 r( V/ @6 ?6 T: \# Y
6 y5 Z5 N: `+ X2 F7 w4 h问题2:如果我所有的文件都是mp4格式的话。有必要用第二种方式吗?第二种方式比第一种有什么优点?(因为MP4格式对所有浏览器,IE9以上,和现代手机都是可以播放的)7 n" y2 f& M5 `* ~# l8 n2 s) `
6 v) u9 s: K% l( w问题3:如果视频文件很多,比如1个TB的量的话。播放会产生大量的流量 那么用什么服务器比较好(50刀-500刀每个月都可以考虑)。最好是不限流量的服务器,求推荐!
, Y5 l* X! l. x/ @最后感谢上一贴 @河小马 和 @wo2363960626 ,@akzovk 的一些解惑 。诚邀这贴进行一些建议。也希望其他前辈不吝赐教。7 E4 i1 }/ O4 g& A7 V8 @: T. T
8 t* _. d/ G2 Q
|
评分
-
查看全部评分
|