论文部分内容阅读
0 引言
视频点播技术(Video On Demand,简称VOD)是近年来新兴的一种传媒方式,它彻底改变了长期以来广播式的单向视频传播方式,满足了人们对视频播放进行实时控制的愿望。作为互联网上的一种热门技术,它是结合了计算机技术、通讯技术、多媒体技术而迅速发展的一门综合性技术,已经应用在很多行业中,适合于远程教学、企业培训、媒体娱乐等领域。随着计算机网络的普及和网络视频技术的发展,通过校园网实现高质量的视频点播教学已成为现代教育技术的一个新的发展趋势。
1 流媒体技术
1.1 流媒体技术简介
流媒体(Streaming Media)就是指在Internet/Intranet网络中使用流式传输技术传输的连续时基媒体,如音频、视频或多媒体文件。在传输前需要经过特殊的压缩处理成多个压缩包,并附加上与其传输相关的信息,形成实时数据流。数据流最大的特点是允许播放器及时反应而不用等待整个文件的下载。
流媒体技术是指流媒体文件经过特殊的压缩方式分成一个个经过特殊的压缩方式分成一个个压缩包,由视频服务器向客户端连续、实时地传送,客户端不必等到整个文件全部下载完毕才播放,只需要将起始几秒的数据先下载到本地的缓冲区中就可以播放了,采用一边播放、一边下载、一边丢弃的方式,客户端的缓冲区建在内存中,不占用硬盘空间,不会在用户端留下任何拷贝,保护了知识产权,同时提高带宽利用率。流媒体技术是一个综合的技术,它包括采集、编码、传输、储存、解码等多技术。流媒体应用系统,一般分为编码端、服务器端和用户终端3部分。
1.2 流式传输方式
实现流式传输有两种方法:顺序流式传输(Progressive Streaming)
和实时流式传输(Realtime Streaming)。
顺序流式传输是顺序下载,在下载的同时用户可以观看在线媒体;在指定时刻,用户只能观看已下载的部分,不能直接观看还未下载的部分。这种方式下在播放前观看的部分是无损下载的,保证了电影播放的最终质量,但是播放前必须经历较长的延迟。
实时流式传输是指保证媒体信号带宽和网络连接匹配,使媒体可以被实时观看到。实时流式传输总是实时传送,用户可以快进或后退以观看前面或后面的内容。这种传输方式需要专用的流媒体服务器和传输协议。
1.3 流媒体传输相关的协议简介
常见的实时流传输协议主要有:RTP(Real-time Transport Protocol,
实时传输协议),RTCP (Realtime Transport Control Protoco1,实时传输控制协议),RTSP(Real-Time Streaming Protocol,实时流协议)。
RTP被定义为传输音频、视频以及模拟数据等实时数据的传输协议,它提供时间信息和实现流同步。RTCP被设计为和RTP一起使用的进行流量控制和拥塞控制的服务控制协议。RTSP协议定义了一对多的应用程序如何有效地通过IP网络传送多媒体数据,是一种客户端到服务器端的多媒体描述协议。
2 视频点播系统总体设计方案
2.1 系统总体功能
视频点播系统的总体功能分为服务器端功能和客户端功能。系统功能结构图如下:
各模块的作用:
1)视频服务器。视频服务器是视频点播系统的核心,可大量存储视频节目信息,充分利用实时技术向网络终端传输数字视频节目流,并处理用户的交互式命令信息,发送视频数据。形象地说,视频服务器就像是一个数字式视频播放器,向网络中的终端传送精彩的、高质量的音、视频节目,并且是高效、低耗、按需播放。
2)数据库服务器。用于存储管理节目信息,为用户检索查询节目提供服务。存储管理用户信息,提供登录、认证服务。存储管理日志记录,为查询统计和维护提供服务。
3)C/S模式应用程序。C/S模式应用程序包括一个Client程序和一个Server程序。Client程序位于客户端,主要任务是将用户的要求提交给Server程序,再将Server程序返回的结果以特定的形式显示给用户;Server程序位于服务器端,主要任务是接收客户程序提出的服务请求,进行相应的处理,再将结果返回给客户程序。
4)播放功能。播放功能的实现主要包括四个子模块:播放请求、网络数据接收、解码、回显。
用户要实现播放功能必须先要向服务器端发出播放请求,当服务器端响应客户端的播放请求并将流媒体数据传输给客户端时,客户端要能够接收到服务器端传来的流媒体数据,接收后经过正确的解码并回显。
5)网络数据接收。网络数据接收模块功能的实现主要依靠两个子模块:组包模块和数据格式模块。组包模块用于将服务器端发送来的一个个的数据包按照一定的协议重新组合。数据格式模块用于判断所接收到的流媒体数据的格式。
6)其他的功能模块如暂停播放、快进、快退、停止播放、全屏、播放进度条、播放时间、连接服务器等都是为了让用户能通过简单的界面操作对视频播放进行相应的控制。
2.2 系统硬件平台
服务器端的硬件平台采用的是普通PC机,配置一般即可。
客户端采用MagicARM2410教学实验开发平台。MagicARM2410教学实验开发平台是一款可使用μC/OS-II、Linux和WinCE操作系统、支持QT、MiniGUI图形系统、集众多功能于一身的ARM9教学实验开发平台。采用Samsung公司的ARM920T内核的S3C2410A微处理器,扩展有充足的存储资源和众多典型的嵌入式系统接口,是高校嵌入式系统创新实验室首选平台。
2.3 系统功能的实现方案
1)服务器端可以利用VC++6.0开发环境和SQL Server数据库开发。利用SQL Server数据库来实现对视频节目信息的管理。本系统的数据库表主要包括:
用户表:包括用户的编号、用户名、密码、邮件地址、用户类型等字段信息。
用户类型表:包括编号、用户类型名等字段信息。
用户权限表:包括用户类型、拥有权限等字段信息。
权限类型表:包括编号、权限类型名等字段信息。
视频信息表,包括视频编号、视频信息名、视频文件位置、视频作者、视频分类、视频大小、上传时间、内容简介、评论等字段信息。
评论表:包括资源编号、资源名、评论者、评论时间、评论内容、评论者IP等字段信息。
2)客户端/服务器端应用程序和客户端图形界面的开发可以采用Qt/E中实现。开发板端软件的构成主要包括:交叉工具链的安装,bootloader的构建和移植,内核的构建和移植,根文件系统的构建和移植,qt/embedded开发环境的建立,视频点播客户端界面的开发和移植等。
3)流媒体传输中视频的压缩采用MPEG-4视频压缩标准。流媒体的传输采用目前比较通用的RTP/RTCP协议及RTSP协议。
音视频等多媒体数据直接在网络上传输将占用相当大的带宽,容易造成网络拥塞。所以传输前必须先将多媒体数据经过特殊的压缩方式变成适于在网络上传输的流媒体数据。目前主要的视频压缩标准有H.26x,JPEG和MPEG等。MPEG标准是一种在高压缩比的情况下,仍能保证高质量画面的压缩算法,最适于视频VOD的存储、点播和网上传输。MPEG压缩技术,作为一种压缩标准,促进了多媒体相关技术的发展,对于视频点播系统这样的应用系统的产生和发展有重要作用。
RTSP和RTP/RTCP协议各提供相应的功能,来保证Internet上流媒体的有序传输和质量传输。RTP只保证实时数据的传输,RTCP管理控制信息,提供信息流的同步和服务质量的控制。RTSP是服务器端的远程控制,主要控制节目流的播放,暂停等。其中,视频数据由RTP传输;视频质量由RTCP控制;视频控制(播放、暂停等)由RTSP实现。图2表现了视频点播传输层次所用协议。
3 结束语
本文介绍了一种基于S3C2410芯片,以Linux为操作系统的视频点播的设计方案。对于嵌入式应用研究有一定具有一定的实用价值。
参考文献:
[1]飞思科技产品研发中心,主流ARM嵌入式系统设计技术与实例精解[M].北京:电子工业出版社,2006.
[2]于明、范书瑞、曾祥烨,ARM9嵌入式系统设计与开发教程[M].北京:电子工业出版社,2006.
作者简介:
周花梅(1984-),女,硕士研究生,研究方向:嵌入式方向;景红
(1958-),女,教授,硕士生导师。
注:“本文中所涉及到的图表、公式、注解等请以PDF格式阅读”
视频点播技术(Video On Demand,简称VOD)是近年来新兴的一种传媒方式,它彻底改变了长期以来广播式的单向视频传播方式,满足了人们对视频播放进行实时控制的愿望。作为互联网上的一种热门技术,它是结合了计算机技术、通讯技术、多媒体技术而迅速发展的一门综合性技术,已经应用在很多行业中,适合于远程教学、企业培训、媒体娱乐等领域。随着计算机网络的普及和网络视频技术的发展,通过校园网实现高质量的视频点播教学已成为现代教育技术的一个新的发展趋势。
1 流媒体技术
1.1 流媒体技术简介
流媒体(Streaming Media)就是指在Internet/Intranet网络中使用流式传输技术传输的连续时基媒体,如音频、视频或多媒体文件。在传输前需要经过特殊的压缩处理成多个压缩包,并附加上与其传输相关的信息,形成实时数据流。数据流最大的特点是允许播放器及时反应而不用等待整个文件的下载。
流媒体技术是指流媒体文件经过特殊的压缩方式分成一个个经过特殊的压缩方式分成一个个压缩包,由视频服务器向客户端连续、实时地传送,客户端不必等到整个文件全部下载完毕才播放,只需要将起始几秒的数据先下载到本地的缓冲区中就可以播放了,采用一边播放、一边下载、一边丢弃的方式,客户端的缓冲区建在内存中,不占用硬盘空间,不会在用户端留下任何拷贝,保护了知识产权,同时提高带宽利用率。流媒体技术是一个综合的技术,它包括采集、编码、传输、储存、解码等多技术。流媒体应用系统,一般分为编码端、服务器端和用户终端3部分。
1.2 流式传输方式
实现流式传输有两种方法:顺序流式传输(Progressive Streaming)
和实时流式传输(Realtime Streaming)。
顺序流式传输是顺序下载,在下载的同时用户可以观看在线媒体;在指定时刻,用户只能观看已下载的部分,不能直接观看还未下载的部分。这种方式下在播放前观看的部分是无损下载的,保证了电影播放的最终质量,但是播放前必须经历较长的延迟。
实时流式传输是指保证媒体信号带宽和网络连接匹配,使媒体可以被实时观看到。实时流式传输总是实时传送,用户可以快进或后退以观看前面或后面的内容。这种传输方式需要专用的流媒体服务器和传输协议。
1.3 流媒体传输相关的协议简介
常见的实时流传输协议主要有:RTP(Real-time Transport Protocol,
实时传输协议),RTCP (Realtime Transport Control Protoco1,实时传输控制协议),RTSP(Real-Time Streaming Protocol,实时流协议)。
RTP被定义为传输音频、视频以及模拟数据等实时数据的传输协议,它提供时间信息和实现流同步。RTCP被设计为和RTP一起使用的进行流量控制和拥塞控制的服务控制协议。RTSP协议定义了一对多的应用程序如何有效地通过IP网络传送多媒体数据,是一种客户端到服务器端的多媒体描述协议。
2 视频点播系统总体设计方案
2.1 系统总体功能
视频点播系统的总体功能分为服务器端功能和客户端功能。系统功能结构图如下:
各模块的作用:
1)视频服务器。视频服务器是视频点播系统的核心,可大量存储视频节目信息,充分利用实时技术向网络终端传输数字视频节目流,并处理用户的交互式命令信息,发送视频数据。形象地说,视频服务器就像是一个数字式视频播放器,向网络中的终端传送精彩的、高质量的音、视频节目,并且是高效、低耗、按需播放。
2)数据库服务器。用于存储管理节目信息,为用户检索查询节目提供服务。存储管理用户信息,提供登录、认证服务。存储管理日志记录,为查询统计和维护提供服务。
3)C/S模式应用程序。C/S模式应用程序包括一个Client程序和一个Server程序。Client程序位于客户端,主要任务是将用户的要求提交给Server程序,再将Server程序返回的结果以特定的形式显示给用户;Server程序位于服务器端,主要任务是接收客户程序提出的服务请求,进行相应的处理,再将结果返回给客户程序。
4)播放功能。播放功能的实现主要包括四个子模块:播放请求、网络数据接收、解码、回显。
用户要实现播放功能必须先要向服务器端发出播放请求,当服务器端响应客户端的播放请求并将流媒体数据传输给客户端时,客户端要能够接收到服务器端传来的流媒体数据,接收后经过正确的解码并回显。
5)网络数据接收。网络数据接收模块功能的实现主要依靠两个子模块:组包模块和数据格式模块。组包模块用于将服务器端发送来的一个个的数据包按照一定的协议重新组合。数据格式模块用于判断所接收到的流媒体数据的格式。
6)其他的功能模块如暂停播放、快进、快退、停止播放、全屏、播放进度条、播放时间、连接服务器等都是为了让用户能通过简单的界面操作对视频播放进行相应的控制。
2.2 系统硬件平台
服务器端的硬件平台采用的是普通PC机,配置一般即可。
客户端采用MagicARM2410教学实验开发平台。MagicARM2410教学实验开发平台是一款可使用μC/OS-II、Linux和WinCE操作系统、支持QT、MiniGUI图形系统、集众多功能于一身的ARM9教学实验开发平台。采用Samsung公司的ARM920T内核的S3C2410A微处理器,扩展有充足的存储资源和众多典型的嵌入式系统接口,是高校嵌入式系统创新实验室首选平台。
2.3 系统功能的实现方案
1)服务器端可以利用VC++6.0开发环境和SQL Server数据库开发。利用SQL Server数据库来实现对视频节目信息的管理。本系统的数据库表主要包括:
用户表:包括用户的编号、用户名、密码、邮件地址、用户类型等字段信息。
用户类型表:包括编号、用户类型名等字段信息。
用户权限表:包括用户类型、拥有权限等字段信息。
权限类型表:包括编号、权限类型名等字段信息。
视频信息表,包括视频编号、视频信息名、视频文件位置、视频作者、视频分类、视频大小、上传时间、内容简介、评论等字段信息。
评论表:包括资源编号、资源名、评论者、评论时间、评论内容、评论者IP等字段信息。
2)客户端/服务器端应用程序和客户端图形界面的开发可以采用Qt/E中实现。开发板端软件的构成主要包括:交叉工具链的安装,bootloader的构建和移植,内核的构建和移植,根文件系统的构建和移植,qt/embedded开发环境的建立,视频点播客户端界面的开发和移植等。
3)流媒体传输中视频的压缩采用MPEG-4视频压缩标准。流媒体的传输采用目前比较通用的RTP/RTCP协议及RTSP协议。
音视频等多媒体数据直接在网络上传输将占用相当大的带宽,容易造成网络拥塞。所以传输前必须先将多媒体数据经过特殊的压缩方式变成适于在网络上传输的流媒体数据。目前主要的视频压缩标准有H.26x,JPEG和MPEG等。MPEG标准是一种在高压缩比的情况下,仍能保证高质量画面的压缩算法,最适于视频VOD的存储、点播和网上传输。MPEG压缩技术,作为一种压缩标准,促进了多媒体相关技术的发展,对于视频点播系统这样的应用系统的产生和发展有重要作用。
RTSP和RTP/RTCP协议各提供相应的功能,来保证Internet上流媒体的有序传输和质量传输。RTP只保证实时数据的传输,RTCP管理控制信息,提供信息流的同步和服务质量的控制。RTSP是服务器端的远程控制,主要控制节目流的播放,暂停等。其中,视频数据由RTP传输;视频质量由RTCP控制;视频控制(播放、暂停等)由RTSP实现。图2表现了视频点播传输层次所用协议。
3 结束语
本文介绍了一种基于S3C2410芯片,以Linux为操作系统的视频点播的设计方案。对于嵌入式应用研究有一定具有一定的实用价值。
参考文献:
[1]飞思科技产品研发中心,主流ARM嵌入式系统设计技术与实例精解[M].北京:电子工业出版社,2006.
[2]于明、范书瑞、曾祥烨,ARM9嵌入式系统设计与开发教程[M].北京:电子工业出版社,2006.
作者简介:
周花梅(1984-),女,硕士研究生,研究方向:嵌入式方向;景红
(1958-),女,教授,硕士生导师。
注:“本文中所涉及到的图表、公式、注解等请以PDF格式阅读”