登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 计算机类 > 计算机科学与技术 > 正文

基于RTMP流媒体服务器的视频转码器毕业论文

 2022-02-14 20:20:01  

论文总字数:27586字

摘 要

近年来随着网络技术的蓬勃发展、网络带宽不断提高,音视频编码压缩技术的不断进步,流媒体技术在各个领域都得到了非常广泛的应用。本课题主要在windows平台下研究基于RTMP协议的流媒体服务器、基于ffmpeg的实时转码等技术,构建一套完整的基于RTMP、具备实时转码功能的视频直播方案。

本文首先分析实时流媒体传输协议RTMP,AAC/H.264等音视频编码技术、flv视频封装格式,开源的RTMP流媒体服务器MonaServer以及ffmpeg转码解决方案,在此基础上完成基于RTMP流媒体服务器的视频转码器的设计和实现。本转码器是基于开源的RTMP服务器MonaServer,原MonaServer服务器中只包含转发功能,不具备转码功能,所以我们在阅读MonaServer服务器源码的基础上对MonaServer进行二次开发,基于FFmpeg实现实时转码功能。实现时对MonaServer中收到的h.264视频数据采用flv格式进行封装后进行转码(转码主要实现了视频空间分辨率和视频码率的转换)。转码提供了两种方式,可以选择将转码后的数据保存为本地文件便于以后的视频点播,也可以将转码后的数据以流的RTMP流的形式进行发布,客户端拉流进行播放,实现视频直播的实时转码。

论文最后总结全文,并展望下一步工作。

关键词:视频转码 实时转码 ffmpeg RTMP 流媒体 Windows

Video Transocder Based on RTMP Stream Media Server

Abstract

In recent years, with the vigorous development of network technology, network bandwidth continues to improve, audio and video coding compression technology continues to progress, streaming media technology have been widely used in various fields. This paper mainly studies the streaming media server which bases on RTMP protocol and transcoding technology based on ffmpeg, we want to construct a complete video program based on RTMP and real-time transcoding.

Firstly, we analyze the real-time streaming media transmission protocol in the field of audio and video coding technology,such as RTMP, AAC / H.264 , flv video encapsulation format, open source RTMP streaming media server MonaServer and ffmpeg transcoding solution, on basis of these,we complete the design and implementation of video transcoder about RTMP streaming media server.This transcoder is based on open source RTMP server MonaServer, the original MonaServer server contains only forwarding function except transcoding function, so we make the MonaServer secondary development after reading the MonaServer server source ,which is based on FFmpeg real-time transcoding Features. It can implement the MonaServer, which can receive in the h.264 video data using flv format after the package transcoding (the use of transcoding is mainly to achieve the video space resolution and video bit rate conversion). Transcoding provides two ways, which can save the transcoded data as a local file for future video on demand, and also be able to transcode the transcoded data as RTMP streams. The client pulls the stream to play, which can achieve the real-time video transcoding.

Finally, we summarize this work, and some perspectives for the future work will be outlined.

Keywords: Video Transcoding,Real-time transcoding,FFmpeg RTMP Streaming Media Windows

目录

摘 要 I

Abstract II

第一章 绪论 1

1.1 研究背景及意义 1

1.2 国内外研究现状 2

1.3 课题研究内容 2

1.4 论文结构 3

第二章 系统相关技术 4

2.2 音频和视频编码技术 4

2.2.1 AAC音频编码标准 4

2.2.2 H.264视频编码标准 4

2.3 FLV封装格式 4

2.4 RTMP实时流传输协议 8

2.4.1总体介绍 8

2.4.2 握手 9

2.4.3 RTMP Chunk Stream 9

2.5 相关直播工具 11

2.5.1 VLC media player 11

2.5.2 Flash Media Live Encoder(简称FMLE) 11

2.5.3 obs-studio 11

2.5.4 potplayer 12

2.6 本章小结 12

第三章 FFMPEG源码分析 13

3.1 FFmpeg工具 13

3.2 FFmpeg核心开发库 13

3.3 FFmpeg中关键结构体分析 13

3.4 FFmpeg解码流程 14

3.5 FFmpeg编码流程 16

3.6 FFmpeg转码 18

3.6.1 传统转码原理 18

3.6.2 FFmpeg转码流程 18

3.6.3 视频分辨率转换 19

3.7 本章小结 20

第四章 MonaServer源码分析 21

4.1 MonaServer线程分析 21

4.2 MonaServer的消息处理机制 21

4.3 MonaServer数据包处理流程 22

4.4 本章小结 24

第五章 需求分析和转码器设计 25

5.1 视频服务器需求分析 25

5.1.1 功能需求 25

5.1.2 开发环境 25

5.2 转码器设计 25

5.2.1 方案选择 26

5.2.3 转码器工作流程 26

5.2.6 转码器模块设计 27

5.3 多线程并发模式—生产者消费者模式 27

5.4 本章小结 28

第六章 转码器的实现 29

6.1 ffmpeg内存读写 29

6.2 数据封装 30

6.3 线程保护 31

6.4 主要模块实现 31

6.4.1 解码模块 32

6.4.2 转码模块 33

6.4.3 编码模块 33

6.5 本章小结 34

第七章 系统演示 35

7.1 转码后保存为本地文件 35

7.2 转码后以实时流形式推出 36

7.3 本章小结 37

第八章 总结与展望 38

8.1 总结 38

8.2 展望 38

参考文献 40

致谢 41

第一章 绪论

本章简要概述论文的研究背景和研究意义以及本课题在国内外的研究现状,并阐述本文研究的主要内容以及论文的结构。

1.1 研究背景及意义

随着社会经济的发展,世界各国的医疗水平得到了很大的提升,但目前国内医疗事业在稳步发展的同时,其医疗管理体系仍存在着诸多问题。现如今,老百姓都信赖去医疗技术高的大医院看病,社区医疗中心相比而言却比较惨淡,而医院的患者越多显露出来的问题也越多,如看病手续复杂、医疗费用高、看病渠道少、医保涉及领域窄等,老百姓们叫苦,这些都反映着现今国内医疗体系的医疗信息不畅、资源严重两极化、监督体制不完善等严重弊端。

请支付后下载全文,论文总字数:27586字

您需要先支付 50元 才能查看全部内容!立即支付

微信号:bysjorg

Copyright © 2010-2022 毕业论文网 站点地图