美文网首页
流媒体初步学习

流媒体初步学习

作者: little_wang | 来源:发表于2017-06-29 10:39 被阅读0次

每一份协议都有对应的rfc,或者iso的文档,协议实现参考文档。

拆h264为rtp,vlc去播放

http://wmnmtm.blog.163.com/blog/static/382457142011921153415/
vlc根据sdp 去接收播放rtp包
h264 拆分成rtp的包,参考 https://github.com/wangdxh/Desert-Eagle/blob/master/webrtcgateway/webrtcgateway/nice_agent.cpp
void read_send_video(void* pdata) 这个函数里面读取 自定义的h264文件格式是4个字节的长度 然后是h264一帧数据, 把帧切成rtp的包 用ice进行发送,
如果vlc播放,直接发送的话直接用udp
发送到你在sdp里面指定的端口上

flv ts文件格式

接下来要熟悉2种文件格式 flv 文件格式 和 ts 文件格式,flv 是http-flv的基础 ts是hls m3u8的基础,完成把h264文件转换成这两个文件格式
https://github.com/wangdxh/Desert-Eagle/tree/master/localtest/tstest ts文件格式测试
flv文件格式网络上比较多,
https://github.com/wangdxh/Desert-Eagle/tree/master/streampushclient 看懂协议之后,这里也有一些flv的代码

rtsp http-flv hls

rtsp协议最简单 可以实现一个rtsp server 用vlc进行播放,用最原始的socket函数实现。
实现http-flv,就是flv文件走在http上面使用chunked格式
hls协议 就是新增一个m3u8的文件,ts文件还是ts文件
https://github.com/wangdxh/Desert-Eagle/tree/master/streamserver

webrtc

然后就可以进阶到webrtc了,在这里是新的协议 ice,dtls,srtp,使用协议库去完成网也使用webrtc浏览视频
https://github.com/wangdxh/Desert-Eagle/tree/master/webrtcgateway

mp4文件格式

video标签,走hls,http-flv 最终都是使用fragmented mp4去播放,mp4文件格式的了解还是很有必要的,mp4v2库

网络库

然后就是自己实现网络库,接着是选择网络库
这个过程是穿插在协议实现的过程中

相关文章

  • 流媒体初步学习

    每一份协议都有对应的rfc,或者iso的文档,协议实现参考文档。 拆h264为rtp,vlc去播放 http://...

  • Kafka技术内幕

    第一部分:初步了解Kafka Apache Kafka是一个分布式流媒体平台。这到底是什么意思?流媒体平台具有三个...

  • 学习中

    初步学习

  • 学习小组Day7笔记--小孙

    初步学习测序

  • iOS流媒体

    流媒体,什么是流媒体,图片、声音、文字、音频、视频传递信息的统称为媒体。流媒体,在云端流动的称之为流媒体 流媒体具...

  • Nginx初步学习

    实习入职第一天的时候,在同事的帮助下安装了N多软件和工具。然鹅作为一个初入工作的菜鸡,很多工具之前没有接触...

  • HTML初步学习

    网页根据W3C标准判定由三部分构成 :1. 结构(HTML) : 描述网页结构(骨架)2. 表现(CSS) ...

  • Vue学习初步

    v-cloak 解决插值表达式方法渲染闪烁问题,如果vue控制区域内的标签上面加了v-cloak,在网速不够无法请...

  • CAD 初步学习

    环境 windows 10 Autodesk AutoCAD 2019 前言 这是一篇随心记录的文章,并不会专心的...

  • Lombok初步学习

    Lombok技术 为什么会出现lombok技术 原因:在开发过程中,我们会定义大量的bean,然后去生成属性构造器...

网友评论

      本文标题:流媒体初步学习

      本文链接:https://www.haomeiwen.com/subject/fbhmcxtx.html