视频点播系统设计与实现.docx
- 文档编号:6108500
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:24
- 大小:676.89KB
视频点播系统设计与实现.docx
《视频点播系统设计与实现.docx》由会员分享,可在线阅读,更多相关《视频点播系统设计与实现.docx(24页珍藏版)》请在冰豆网上搜索。
视频点播系统设计与实现
长沙理工大学
《网络工程课程设计》论文
视频点播系统设计与实现
吴一凡
学院计算机与通信学院专业网络工程
班级085810702 学号200758080210
学生姓名吴一凡 指导教师 易建勋
课程成绩完成日期2010年12月30日
课程设计任务书
学院:
计通学院专业:
网络工程专业
课程名称
网络工程课程设计
时间
20010~2011学年第一学期18~19周
学生姓名
吴一凡
指导老师
易建勋
题目
视频点播系统设计与实现
主要内容:
(1)课题背景
(2)系统的开发工具
(3)视频点播系统系统设计
要求:
(1)综合运用。
NET,C#,计算机网络基本理论设计本系统。
(2)学会文献检索的基本方法和综合运用文献的能力。
(3)通过课程设计培养严谨的科学态度,认真的工作作风和团队协作精神。
应当提交的文件:
(1)课程设计学年论文。
(2)课程设计附件(相关图纸、设备配置清单、报告等)。
课程论文成绩评定
学院计算机与通信学院专业 网络工程
班级085810702 学号200758080210
学生姓名吴一凡 指导教师易建勋
课程成绩完成日期2010。
12.30
指导教师对学生在课程设计中的评价
评分项目
优
良
中
及格
不及格
课程论文中的创造性成果
学生掌握课程内容的程度
课程论文完成情况
课程论文动手能力
文字表达
学习态度
规范要求
课程论文的质量
指导教师对课程论文的评定意见
综合成绩指导教师签字2010年12月30日
网络中心接地系统设计与实现
摘要随着计算机技术和Internet的日新月异,宽带VOD视频点播技术因其良好的人机交互性和流媒体传输技术倍受教育、娱乐等行业青睐。
本文阐述了基于WEB的交互式视频点播系统的协议原理、软件结构和设计实现。
本视频点播系统根据流媒体传输原理,在校园局域网的基础上模拟基于Web的视频点播系统,实现用户信息管理、视频文件的添加、删除、修改及在线播放和搜索功能。
本系统是一个小型系统,我们采用基本的SQLServer数据库.具体实现中将HTML、ASP.net及C#相结合,力求界面美观、操作流畅。
关键词流媒体;ASP。
net;视频点播
1引言
随着计算机网络和多媒体技术的发展,近年来对视频点播系统的需求逐渐增加。
视频点播系统是一个包含硬件和软件的网络化系统,主要特征是实时和按需求地从视频服务器向客户设备传送多路、并发的视频数据流。
视频点播系统可以提供不同程度的终端用户交互性.视频点播技术是随着计算机技术(特别是多媒体数据压缩解压缩技术)、网络通信技术特别是流媒体技术和电视技术而迅速兴起的一门综合性技术。
本设计在VisualStudio。
NET环境下构建了B/S模式的视频点播系统.系统由前台、后台管理两部分组成。
不仅实现了视频点播功能,而且支持文件类别的动态管理、文件的分布式存储和播放多种格式文件等功能.
1.1课题背景
随着宽带网络系统的建成和发展,视频点播(VideoOnDemand,简称V0D)系统被广泛应用于在线电影点播、多媒体课件点播、图书馆视频资料查询等用途。
视频点播是综合了计算机技术、通讯技术、电视技术而迅速兴起的一门综合性技术。
它涉及到信息量巨大的音频和视频在网上传播的问题,网络是硬件条件,而流媒体技术则解决了如何在网络上传输动态的音视频节目的难题。
1.2流媒体简介
流媒体是指传输及播放的流媒体文件,经过特殊的压缩方式分成一个个压缩包,由视频服务器向用户计算机连接、实时地传送,用户机不必等到整个文件全部下载完毕,仅需将起始几秒的数据先下载到本地的缓冲区中就可以开始播放,采用一边播放、一边下载、一边丢弃的方式,客户端的缓冲区建在内存中,不占用硬盘空间,不会在用户端留下任何拷贝,保护了知识产权,同时提高带宽利用率。
流媒体技术是一个综合的技术,它包括采集、编码、传输、储存、解码等多技术。
2视频点播系统系统分析
2.1系统需求分析
需求分析是指:
需求分析人员将客户描述的需求用一种计算机语言描述出来,分析用户的要求是否能实现,是否还可以提供更多的功能.要开发一个软件产品,首要也是最重要的就是需求分析,它是决定一个系统成功与否的关键。
本系统的目的是让用户通过本系统点播视频及相互交流看法。
2.1.1用户身份级别要求
即根据身份的不同对系统的使用权限有所不同。
从权限大小大致可以分为:
系统管理员、注册用户、发布员、未注册用户。
系统提供灵活的角色设定和权限的分配功能。
1)系统管理员:
是权限最大的用户,拥有视频点播系统的所有权限,主要负责对系统平台的日常网络维护管理,可以对系统进行修改,排除故障。
2)发布员:
拥有注册用户的权限并可以上传视频文件.
3)注册用户:
权限包括查看系统中视频的信息、点播及下载视频、发表言论、投票等。
4)未注册用户:
是权限最小的用户,只能查看系统中视频的信息。
2.1.2系统功能需求与划分
1)用户管理:
对使用本系统注册用户信息的操作。
包括删除用户、修改密码、权限的设置等操作。
1.操作对象:
系统管理员。
2.浏览对象:
系统管理员.
2)用户注册:
未注册用户可以注册新的帐号,在注册页面填写相关的注册信息,添加注册信息到系统的数据库中,以后就能用该账户登录到系统中.
1.操作对象:
未注册用户。
2.浏览对象:
未注册用户。
3)用户登录:
注册用户填写登录信息经过系统验证之后就能浏览该账户的权限所能访问的页面。
1。
操作对象:
注册用户。
2.浏览对象:
注册用户。
3.具体操作:
在登录表中填入相关信息,系统验证信息是否正确,如果正确就允许用户登录到系统中,用户可以访问该账户所允许访问的页面。
没有注册的用户需先注册。
4.需要模块:
用户注册模块,用户验证模块。
4)用户权限验证:
验证用户的权限是否能够访问用户要求访问的页面。
1。
操作对象:
所有合法用户。
2。
浏览对象:
所有合法用户。
3.具体操作:
用户登录时验证用户输入的登录信息是否正确,如果正确就读取数据库中该账户的权限字段并储存到系统中,当用户要求访问某个页面时就验证该用户的权限是否能访问该页面.
4。
需要模块:
用户注册模块、用户登录模块.
5)视频点播和下载模块:
点播和下载视频文件.
1.操作对象:
所有合法用户.
2。
浏览对象:
所有合法用户。
6)用户留言:
用户发表自己的意见。
1。
操作对象:
所有合法用户。
2。
浏览对象:
所有合法用户。
7)视频文件管理:
系统管理员根据用户需求添加或删除视频文件,发布员根据用户需求上传视频文件。
1。
操作对象:
系统管理员,发布员。
2。
浏览对象:
系统管理员,发布员.
3。
具体操作:
对视频文件参数的基本设置。
包括添加、删除、修改等.
4.需要模块:
用户权限验证模块,用户登录模块。
8)注销:
所有的系统合法用户登录完成操作后退出系统都要进行“注销”操作、或者进行用户转换也需要进行“注销”操作。
1.操作对象:
所有合法用户.
2.2系统设计目标
研制视频点播系统的总体目标是将网络技术、信息技术、现代管理技术相结合,建立视频点播和信息交流平台。
视频点播系统采用流媒体技术,充分利用了网络资源,为广大用户提供在线点播服务,用户可以根据自己的需求自主选择。
本系统采用一边播放、一边下载、一边丢弃的方式,大大节省用户的时间,不会在用户端留下任何拷贝,保护了知识产权,同时提高带宽利用率。
本系统首先要实现动态性。
所谓的动态性就是能动态更新内容,如更新用户信息、视频文件信息、用户留言等。
这要求与数据库有良好的连接。
系统操作方便、操作界面美观。
2.3系统的开发工具
2.3.1开发环境
(一)MicrosoftVisualStudio2005介绍
VisualStudio是微软公司出品的一款大型应用软件,是一套完整的开发工具集,它主要用于生成ASP.NETWeb应用程序、XMLWebServices、桌面应用程序和移动应用程序。
(二)MicrosoftSQLServer2000介绍
MicrosoftSQLServer2000是目前使用最广泛的数据库之一。
2.3.2。
NET介绍
对于。
NET,Microsoft公司自己也没有一个详细确切的定义.但是我们可以这样认为:
.NET是Microsoft公司提供的一系列产品的总称.具体来说,.NET由下面几个部分组成:
.NETFramework、。
NET企业服务器和.NET开发工具。
。
NETFramework是一个高性能的程序运行环境,它提供了具体的服务和技术,支持统一的类库,方便开发人员建立相应的应用程序。
。
NET企业服务器是指SQLServer2000之类的由.NETFramework应用程序使用的服务器端产品。
2.3.3C#介绍
C#编程语言C#是一种新的编程语言,它从C和C++演变而来,是一种简单、现代、类型安全和面向对象的语言。
C#是为在.NET平台上生成企业级应用程序而设计的。
用C#编写的代码被编译为访问CLR服务的托管代码。
VisualStudio环境和向导完全支持C#。
C#编程所用的类库是Framework。
2.4编程运行环境
硬件环境:
CPU:
Intelcore2cupt5500
内存:
2G
硬盘:
160G
软件环境:
操作系统:
MicrosoftWindowsXPServicePack2
应用软件:
SQLServer2000+MicrosoftVisualStudio2005+AdobePhotoshopCS8.0
3视频点播系统系统设计
3.1数据库设计
数据库设计是系统设计中非常重要的一个环节,因为数据库设计就像在建设高楼大厦的根基一样,如果设计不好,在后来的系统维护,变更和功能扩充时,甚至于在系统开发过程中,将会引起比较大的问题,有时大量的工作将会重新进行。
因此,设计出合理的数据库成为本系统设计一个十分关键的步骤。
用户的需求具体体现在各种信息的提供,保存,更新和查询,这就要求数据库结构能充分满足各类信息的输入和输出。
收集基本数据,数据结构以及数据处理的流程而制作一份详细的数据库需求分析表,为合理的数据库结构设计打下坚实的基础。
根据视频点播系统的一般要求,通过对整个系统运行过程和数据流程分析,得出本系统的实体表:
用户信息表:
tableuser、影片信息表:
movielist、影片文件路径表:
movieurl、用户留言表:
msg、投票统计表:
toupiao.
根据对数据项和数据结构的分析以及对实际的数据库实体的设计,设计出数据表以及数据表之间的逻辑关系,如图3-1:
图3—1数据表与数据表之间的逻辑关系
经过前面的数据库分析与设计得到数据库的逻辑结构。
本系统使用MicrosoftSQLServer2000作为数据库开发工具;创建名为movie的数据库根据各种功能的实现以及考虑到将来系统功能上的扩展,设计如下数据项和数据结构:
表3-1用户信息表:
TableUser
简称
字段名
类型
长度
允许空
备注
ID
iUserID
int
4
notnull
PK
用户名
vUserName
varchar
20
notnull
密码
vPassWord
varchar
20
notnull
vEmail
varchar
20
notnull
密码保护问题
vQuestion
varchar
20
notnull
密码保护答案
vAnswer
varchar
20
notnull
权限
cQuanxian
char
8
notnull
表3-2影片信息表:
movielist
简称
字段名
类型
长度
允许空
备注
ID
iMovieID
int
4
notnull
PK
影片名
vMovieName
varchar
20
notnull
集数
iCount
int
4
notnull
上传用户
vUser
varchar
20
notnull
上传时间
dtUpTime
datetime
8
notnull
截图路径
vImgUrl
varchar
50
得票数
iPlay
int
4
notnull
影片信息
vInfo
text
16
影片分类
cType
char
8
notnull
影片格式
cGeshi
char
8
notnull
表3-3影片文件路径表:
movieurl
简称
字段名
类型
长度
允许空
备注
ID
iUrlID
int
4
notnull
PK
影片名称
vMovieName
varchar
20
notnull
第几集
iCounts
int
4
notnull
文件路径
vFileUrl
varchar
20
notnull
格式
cGeshi
char
4
notnull
表3-4用户留言表:
msg
简称
字段名
类型
长度
允许空
备注
ID
iMsgID
int
4
notnull
PK
用户名
vUserName
varchar
20
notnull
留言内容
vInfo
varchar
100
notnull
留言时间
dtDateTime
datetime
8
notnull
相关影片
vMovieName
varchar
20
notnull
表3-5投票统计表:
toupiao
简称
字段名
类型
长度
允许空
备注
投票用户
vUser
varchar
20
notnull
PK
得票影票
vMovieName
varchar
20
notnull
PK
3.2系统模块分析与设计
1)系统管理:
包括帐号管理、系统信息管理和视频文件管理。
1.帐号管理:
包括普通用户和发布员的基本信息和权限的管理都在“用户管理”模块中,系统管理员有权添加、删除、查看和修改所有普通用户和发布员的信息。
2。
视频文件管理:
系统管理员和发布员可以添加视频文件,系统管理员可以修改、删除视频文件。
3。
系统信息管理:
设置系统的信息。
2)视频播放与下载:
合法用户能够点播或下载视频。
3)用户功能:
用户功能包括注册新帐号、用已有的帐户登录、修改密码、通过密码保护找回密码、用户留言、查询、注销。
1。
注册新账号:
用户输入注册信息,输入的信息合法就能注册新帐号。
2.用户登录:
用户登录模块采用与SQL数据库连接通过比较用户输入的信息与数据库中的数据判断用户的身份。
登录身份分为三种:
系统管理员、普通用户、发布员.
3。
修改密码:
普通用户和发布员可以修改自己的登陆密码.
4.密码保护:
用户如果忘记密码或密码被修改,可以通过密码保护找回密码.通过回答注册用户时填写的密码保护答案,如果回答正确就能取得密码.
5。
用户留言:
用户可以发表对影片的看法,以及提出意见和建议。
6。
查询:
系统的所有合法用户都能使用“查询"模块的功能。
“查询”模块提供视频文件的查询。
只能进行精确查询,不支持模糊查询。
7。
注销:
所有的系统合法用户登录完成操作后退出系统都要进行“注销"操作、或者进行用户转换也需要进行“注销”操作。
系统功能模块分析与设计层次图,如图3-2:
图3—2视频点播系统功能模块层次图
3.3Web界面设计
Web界面设计使用母版页,此方法可以使整个系统更加符合信息空间的信息存储,运行速度更快,信息层次更加清晰,用户操作则更方便,更有条理。
示意图,如图3—3:
图3-3页面设计的框架
3.4系统流程图
用户进入系统主页面后,输入用户名和密码,点击提交后,系统将根据用户输入的用户名和密码判断该用户是否为合法用户;如果用户输入的用户名和密码出错,系统将提示出错,并返回到登录界面;如果用户输入的用户名和密码正确,系统将根据用户的身份选择相应的功能;所有合法用户在处理完业务后,都需要进行注销工作,以免被他人窃取信息.注销后,将返回到注销前的页面或网站首页。
系统流程图如图3-4:
图3-4系统流程图
4视频点播系统系统功能模块具体实现
4.1系统实现的关键技术
4.1.1数据库的连接
本系统与数据库的连接都封装到数据库连接类里面,使用时调用类的对象就可完成建立连接、执行一种操作、关闭连接。
数据库连接类的代码如下:
usingSystem;
usingSystem。
Data;
usingSystem.Configuration;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web。
UI;
usingSystem。
Web.UI。
WebControls;
usingSystem。
Web。
UI。
WebControls。
WebParts;
usingSystem.Web.UI。
HtmlControls;
usingSystem.Data.SqlClient;
publicclassconnClass
{
publicstringque;
publicconnClass(){}
publicstaticboolrd(stringque)//对数据库执行查询,返回查询是否成功
{
SqlConnectionconn=newSqlConnection(”DataSource=.;InitialCatalog=movie;UserID=sa;PersistSecurityInfo=True”);//建立数据库连接
conn.Open();//打开数据库连接
SqlCommandcmd=newSqlCommand(que,conn);
SqlDataReadersqlrd=cmd.ExecuteReader();//执行sql语句
returnsqlrd.Read();//返回执行结果
sqlrd。
Close();
conn。
Close();//关闭数据库连接
}
publicstaticboolExecute(stringque)//对数据库执行一次操作,返回操作是否成功
{
SqlConnectionconn=newSqlConnection(”DataSource=。
;InitialCatalog=movie;UserID=sa;PersistSecurityInfo=True”);
conn.Open();
SqlCommandcmd=newSqlCommand(que,conn);
intcount=Convert.ToInt32(cmd。
ExecuteNonQuery());
if(count〉0)returntrue;
elsereturnfalse;
conn.Close();
}
publicstaticDataTableds(stringque)//从数据库中获得数据储存到内存中
{
SqlConnectionconn=newSqlConnection(”DataSource=。
;InitialCatalog=movie;UserID=sa;PersistSecurityInfo=True”);
conn.Open();
SqlDataAdapteradap=newSqlDataAdapter(que,conn);
DataSetds=newDataSet();
adap.Fill(ds,”table”);
returnds。
Tables["table”];
conn.Close();
}
publicstaticSqlDataReaderread(stringque)//执行一次数据库查询返回查询结果
{
SqlConnectionconn=newSqlConnection(”DataSource=.;InitialCatalog=movie;UserID=sa;PersistSecurityInfo=True”);
conn.Open();
SqlCommandcmd=newSqlCommand(que,conn);
SqlDataReadersqlrd=cmd.ExecuteReader();
sqlrd。
Read();
returnsqlrd;
sqlrd.Close();
conn。
Close();
}
}
4.1.2嵌入试视频播放
本系统通过ActiveX控件方式在Web页面中嵌入播放对象,并通过DHTML为内嵌对象动态指定视频流URL,从而为视频播放提供了一个统一的友好界面。
用户点播视频时,系统根据视频文件的格式选择合适的播放页面。
嵌入式视频播放代码如下:
RM视频格式代码,如下:
CFCDAA03—8BE4—11cf—B84B—0020AFBBCCFA”width="800"height="600"> 〈paramname=_ExtentXvalue=11986〉 〈paramname=SHUFFLEvalue=0〉 〈paramname=PREFETCHvalue=0> 〈paramname=NOLABELSvalue=0〉 〈asp: LabelID=”Label1”runat=”server"Text=”Label”> Label〉 〈paramname=NUMLOOPvalue=0〉 〈paramname=CENTERvalue=1〉;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 视频点播 系统 设计 实现