直播背后的技术

原创
2020/03/28 11:51
阅读数 451

当下直播行业正在如火如途进行中,但是我们对直播所使用到的技术,应该有所了解。

    直播有三个阶段分别为建流、推流、拉流

   建流:通常rtmp协议用rtmp模块实现的,这是一个nginx第三方模块很强大,很多第三方的直播SDK应该都是基于其实现的。

   推流:就是主播端用到的

   拉流:就是观看用户用的

推送和拉取用ffmpeg开源软件就可以做到,只不过界面有点简陋,所以第三方厂商对其也进行了封装成了SDK。

众所周知,直播对于带宽消耗很大,虽然服务端和客户端可以自建,但是旁大的带宽消耗是大部分企业无法承受的,所以选择第三方SDK是最好的归宿,因为他们有高额带宽、有CDN、有超大存储。

 

ffmpeg 简单用法

高质量录屏

ffmpeg -f gdigrab -i desktop -preset ultrafast -crf 10 playback.mp4


无损录屏

ffmpeg -video_size 1920x1080 -framerate 30 -f gdigrab -i desktop -c:v libx264 -qp 0 -preset ultrafast   playback .mp4


直播

ffmpeg -f gdigrab -s 500x300 -i desktop -c:v libx264 -b:v 2M -qp 0 -crf 10 -preset ultrafast -f rtsp -rtsp_transport tcp rtsp://localhost:2333/live.sdp
 
ffplay -rtsp_flags listen rtsp://localhost:2333/live.sdp?tcp
 
 

展开阅读全文
打赏
0
2 收藏
分享
加载中
更多评论
打赏
0 评论
2 收藏
0
分享
返回顶部
顶部