C++音视频八股文(流媒体协议基础 )

1. RTSP协议的工作流程是什么?主要包含哪些命令?

  1. RTSP定义:Real Time Streaming Protocol,实时流传输协议,是一个应用层协议,用于控制流媒体服务器,类似于视频播放器的遥控器
  2. 工作流程:客户端发送OPTIONS请求查询服务器支持的方法发送DESCRIBE获取媒体描述信息(SDP)发送SETUP建立会话,协商传输参数(RTP端口等)发送PLAY开始播放,服务器开始发送RTP数据流播放过程中可发送PAUSE暂停发送TEARDOWN结束会话,释放资源
  3. 主要命令:OPTIONS:查询服务器支持的方法DESCRIBE:获取媒体描述(返回SDP)SETUP:建立传输会话,分配资源PLAY:开始播放,可指定播放范围PAUSE:暂停播放TEARDOWN:终止会话GET_PARAMETER:获取参数,常用于保活SET_PARAMETER:设置参数
  4. 协议特点:基于文本的协议,类似HTTP,使用554端口,只负责控制不传输媒体数据,实际数据通过RTP/RTCP传输
  5. 应用场景:监控摄像头、视频点播、IPTV、专业视频设备

2. RTMP协议的特点是什么?适用于什么场景?

  1. RTMP定义:Real Time Messaging Protocol,实时消息传输协议,Adobe开发,基于TCP的应用层协议
  2. 主要特点:基于TCP传输,可靠性高,自动重传丢失数据低延迟,通常1-3秒延迟支持音视频和数据消息使用1935端口支持加密变体RTMPS和RTMPE
  3. 工作原理:建立TCP连接后进行握手,然后通过chunk分块传输数据,支持多路复用,可在一个连接上传输多个流
  4. 消息类型:音频消息、视频消息、数据消息(AMF格式)、控制消息(设置块大小、确认等)
  5. 适用场景:直播推流(OBS等推流工具)低延迟直播(互动直播)CDN分发的中间协议Flash时代的网页直播(现已淘汰)
  6. 优缺点:优点是延迟低、稳定可靠;缺点是浏览器不原生支持(Flash淘汰)、防火墙可能拦截、CDN支持成本高

3. HLS协议的原理是什么?M3U8文件的作用是什么?

  1. HLS定义:HTTP Live Streaming,苹果开发的基于HTTP的流媒体传输协议
  2. 工作原理:服务器将视频切分成多个小的TS文件(通常5-10秒)生成M3U8索引文件记录TS文件列表客户端先下载M3U8文件按顺序下载并播放TS文件定期更新M3U8获取最新分片(直播场景)
  3. M3U8文件作用:播放列表索引文件,文本格式记录所有TS分片的URL和时长包含流的元信息(编码格式、分辨率、码率)支持多码率自适应(Master Playlist)直播时动态更新,点播时固定
  4. M3U8结构:包含#EXTM3U标识、#EXT-X-VERSION版本、#EXT-X-TARGETDURATION目标时长、#EXTINF每个分片时长、#EXT-X-ENDLIST结束标记(点播)
  5. 优点:基于HTTP,穿透防火墙能力强CDN友好,可利用HTTP缓存支持自适应码率浏览器原生支持(iOS Safari、

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

C++八股文全集 文章被收录于专栏

本专栏系统梳理C++技术面试核心考点,涵盖语言基础、面向对象、内存管理、STL容器、模板编程及经典算法。从引用指针、虚函数表、智能指针等底层原理,到继承多态、运算符重载等OOP特性从const、static、inline等关键字辨析,到动态规划、KMP算法、并查集等手写实现。每个知识点以面试答题形式呈现,注重原理阐述而非冗长代码,帮助你快速构建完整知识体系,从容应对面试官提问,顺利拿下offer。

全部评论

相关推荐

老粉都知道小猪猪我很久没更新了,因为秋招非常非常不顺利,emo了三个月了,接下来说一下我的情况吧本人是双非本 专业是完全不着计算机边的非科班,比较有优势的是有两段大厂实习,美团和字节。秋招面了50+场泡池子泡死的:滴滴 快手 去哪儿 小鹏汽车 不知名的一两个小厂其中字节13场 两次3面挂 两次2面挂 一次一面挂其中有2场面试题没写出来,其他的都是全a,但该挂还是挂,第三次三面才面进去字节,秋招加暑期总共面了22次字节,在字节的面评可以出成书了快手面了8场,2次实习的,通过了但没去,一次2面挂 最后一次到录用评估 至今无消息滴滴三面完 没几天挂了 所有技术面找不出2个问题是我回答不上来的,三面还来说我去过字节,应该不会考虑滴滴吧,直接给我干傻了去哪儿一天速通 至今无消息小鹏汽车hr 至今无消息美团2面挂 然后不捞我了,三个志愿全部结束,估计被卡学历了虾皮二面挂 这个是我菜,面试官太牛逼了拼多多二面挂 3道题也全写了 也没问题是回答不出来的 泡一周后挂腾讯面了5次 一次2面挂 三次一面挂,我宣布腾讯是世界上最难进的互联网公司然后还有一些零零散散的中小厂,但是数量比较少,约面大多数都是大厂。整体的战况非常惨烈,面试机会少,就算面过了也需要和各路神仙横向对比,很多次我都是那个被比下去的人,不过这也正常,毕竟谁会放着一个985的硕士不招,反而去招一个双非读化学的小子感觉现在互联网对学历的要求越来越高了,不仅仅要985还要硕士了,双非几乎没啥生存空间了,我感觉未来几年双非想要进大厂开发的难度应该直线上升了,唯一的打法还是从大二刷实习,然后苟个转正,不然要是去秋招大概率是炮灰。而且就我面字节这么多次,已经开始问很多ai的东西了,你一破本科生要是没实习没科研懂什么ai啊,纯纯白给了
不知名牛友_:爸爸
秋招你被哪家公司挂了?
点赞 评论 收藏
分享
2025-12-31 14:19
门头沟学院 产品经理
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务