|
|
本帖最后由 tufei 于 2017-3-13 13:37 编辑 1 V. b) _9 J2 |! u7 _
" v' G( H5 ^% Z. n经过这2天的了解学习,对视频流播放有了大概的了解。但因为第一次搞这块。还是想各位前辈给点经验指导。; w% a4 |9 N; n0 b( A
视频服务器的上传打算采用这2种方式:( T3 h! l+ w* E/ P
# q" s2 ?/ B; K0 S/ N1 w
第一种方式:1. laravel+ffmepg+ngingx+videojs
5 [, p L/ i8 s& q" `5 k' ?即: laravel开发上传接口,提供上传rest api,以及上传认证功能,返回视频上传后的地址
+ Q& ?8 x' f4 {2 G2 o0 J" r) a ffmepg作为上传过程中对视频转码,以及切片的功能,不做推流处理: j g o+ c9 \6 w0 ?
nginx作为web服务器
! n0 K# z1 ] d/ |7 r videojs作为H5播放器$ O# @* I+ v7 n- i% o, B$ H8 U
* C# e, a8 c& { 参考播放页面:http://www.advertstudy.com/movie/movie.html (nginx+videojs) % O) \6 `* q8 q6 [/ T
: @- f7 c8 [+ i. g1 h2 K7 e第二种方式. laravel+ffmepg+nginx+videojs + 新增(nginx+rtmp moudle)+(配置nginx支持hls 方式播放)
1 ^1 ?2 b- m2 `0 A! c5 P1 b$ V
' B/ ^/ v1 @# m0 s, u6 L第二种方式主要增加了对rtmp协议 和hls的支持,支持直播方式,用ffmepg 推流,可以对点播的视频,进行ts后缀 小文件的推流处理。/ {. o+ v" H: S& Y% \% J
! r a5 ]# \8 ^ E7 Z4 r
问题1.2 \' q. `( {- \
第一种方式播放,其实就是直接对视频的点播。指定视频地址,以及缩略图地址。- Y. y3 L! f& @$ |# S9 H9 A
第二种方式支持,rtmp,和hls的协议以及直播的方式。( j$ B& ]6 E7 U9 l+ l$ I' Z( N3 {
这种方式可以对视频可以进行一个10秒钟的一个小文件的保存。以及m3u8的文件格式的播放,(本质应该是用 ffmepg推流,然后客户端用相应的协议去接流比如用rtmp,http协议) G/ u! r0 s( |% K/ E
如果我只是对MP4格式的视频做点播。有必要弄hls支持吗?不同大小的视频文件比如50MB 跟500MB 有性能差异?
' }8 v/ _! Q+ f6 M/ C+ X: t1 N
2 n8 X& ~! `% d/ P问题2:如果我所有的文件都是mp4格式的话。有必要用第二种方式吗?第二种方式比第一种有什么优点?(因为MP4格式对所有浏览器,IE9以上,和现代手机都是可以播放的)
: P; i j9 f8 ]* |. i) F5 w. ~ ]. b3 |( E7 K- M
问题3:如果视频文件很多,比如1个TB的量的话。播放会产生大量的流量 那么用什么服务器比较好(50刀-500刀每个月都可以考虑)。最好是不限流量的服务器,求推荐!
3 A5 [0 S* r4 k& c5 l最后感谢上一贴 @河小马 和 @wo2363960626 ,@akzovk 的一些解惑 。诚邀这贴进行一些建议。也希望其他前辈不吝赐教。" d4 K4 k' L2 Q K- a
" i7 _7 e! v$ g& V W* q
|
评分
-
查看全部评分
|