最近我导师让我编一个基于web的远程视频实时传输程序,但我不知该从哪入手,能不能推荐一些书或者视频,最好有源代码以及详细的解释过程,如果相近也行,很急,就剩一个月不到了,感激不尽。

解决方案 »

  1.   


    流媒体技术去了解下吧,这个肯定能解决你的问题,建议real的
      

  2.   

    VOD(VideoonDemand)即视频点播,也称交互式电视点播系统。传统的电视系统信息单向传送,用户只能被动接收。而VOD是以“用户自主”的崭新概念为基础的双向视音频信息系统,实现了按用户需要播放视音频节目的理想。VOD是未来信息高速公路构架的重要组成部分,是未来信息服务中宽带业务的灵魂。该技术是计算机技术、网络通信技术、多媒体技术、电视技术和数字压缩技术等多学科、多领域融合交叉结合的产物   国外九十年代末兴起的VOD服务已广泛应用于各大星级酒店和高档住宅小区等,成为其提高服务水准,增加竞争力的必备设施。通过VOD系统,人们足不出户便可观赏最流行的影视节目,查询众多服务信息,进行网上购物,了解最新财经动态,欣赏高品质多媒体视频节目……尽享全方位多功能的信息服务。  目前,文本、图像以及窄带视音频信号已经能被数字化,并可通过网络存储、传送和再现;但是,这些传统手段并不能充分满足当今社会对高质量、连续多媒体如高保真音频和电视质量视频的应用要求,包括对海量数据存储和连续播放的要求。它们要求大容量存储设备,要求宽带网络环境,最重要的是必须保证实时传输。传统的技术不能满足严格的实时性和大容量要求,其技术瓶颈特别反映在网络带宽、文件系统和存储设备I/O性能这三个方面。  实时高清晰度视频点播系统就是在这种背景下推出的,它包括客户、服务器端软件和机顶盒硬件。系统针对中文用户和中小规模网络对宽带信息服务的需求而设计,系统以Browser/ApplicationServer/DatabaseServer模型构架,采用Internet技术作为信息服务的基础,通过设计和实现实时数据流协议构成多媒体数据传输的控制层,通过支持分布式视频服务和分布式视频文件系统来保证系统对不同网络规模和特定用户要求的自适应性,因而为连续多媒体数据存储和实时传送提供了一种技术先进、经济有效的完整解决方案。  实时视频点播系统工作原理  系统利用先进且日益成熟的Browser/ApplicationServer/DatabaseServer三层应用开发技术及Internet技术实现,可使用普通PC机(或机顶盒)作为操作终端,用户终端的软件配置非常简单:操作系统(Windows95/98中文版)+Web浏览器(NetscapeNavigator)+视频播放器(客户端标准插件)。  三层应用的开发模式由于其先进的开发技术、优越的可管理性及可维护性以及简单方便的应用模式而成为目前最流行的开发方式,替代了传统的Client/Server的两层应用开发模式。它通过一种集中处理的模式将应用的客户端最小化到只需一个浏览器,大大降低了对客户端的软硬件需求、降低了维护量、减轻了程序修改与升级的难度。  国内外目前在Internet应用开发及三层应用的开发已经非常普遍,在技术上也已经非常成熟及先进,其中相关的技术包括安全机制、IC卡应用技术及网上交费技术都已比较成熟。在未来的几年内,这种模式将成为计算机服务信息系统的主流应用模式。  系统的基本工作方式为:  1、通过浏览器登录用户帐号、选择服务类型;
      2、检索、访问各种传统多媒体资源以及浏览视频节目管理网页。浏览器通过互联网服务(Web服务器、FTP服务器等)获得信息并将结果显示在客户窗口;
      3、当用户选择视频服务时,浏览器调用安装在Web服务器上的视频节目管理脚本;
      4、节目管理脚本调用IIS的数据库连接对象,将存储在节目数据库中的视频节目列表呈现给用户;
      5、用户选择播放视频节目,Web服务器上的播放脚本将被调用;
      6、脚本通过节目服务器选择一台或多台视频服务器,并将结果返回给浏览器;
      7、浏览器激活视频播放器;
      8、视频播放器请求视频服务器传输数据,并在解码、播放影片的同时调节传输速率和响应用户VCR控制,这些控制操作由播放器与视频服务器经过协商共同完成;
      9、在节目播放完毕或者在节目播放期间,用户都可以通过与浏览器界面和播放器界面的交互,跳转到其它的网页。  宽带视频服务要求  1、传统信息服务  系统将Web服务器作为信息管理平台,选择Web浏览器作为终端用户的操作界面,因而能够直接支持Internet中业已存在的各种服务。同时,系统遵循开放的协议、标准设计其服务软件、管理工具和客户端插件,实现了在统一的IP+Web框架中提供宽带视频信息服务。基于Web平台构架整个系统是极其关键的,其意义在于:  (1)用户能够在熟悉的Web浏览器环境中检索、浏览网络信息和实时点播视频节目;  (2)能够充分利用用户已有的软硬件技术和资源;  (3)能够保证系统具有良好的开放性和可扩展性;  (4)具有包容其它Web信息服务应用的能力,也能够以一种业务形式嵌入现有信息管理平台。  2、视频服务  在多媒体宽带接入业务中,大多数应用需要实时传输视音频数据,并要求以采样速率连续回放,因此必须严格控制数据传输的延时。由于网络拥塞将导致数据包丢失,而如果没有适当的措施,丢失包的重传将使这一情况更加恶化。同时,多媒体数据流通常具有突发性,仅仅增加带宽通常无法解决突发问题。此外,对于大部分多媒体应用,接收端有一个容量有限的缓存区,如果不采取措施平滑数据流,数据很可能会溢出缓冲区或导致缓冲区空闲。  系统采用的多媒体数据流传输控制协议(MultimediaTransmitProtocol,MTP)在其设计和实现过程中,参照了目前普遍使用的多种实时控制协议,其基本特征体现在以下方面:  (1)能够为要求实时特征的交互视音频内容提供端对端的数据传输和流量控制服务;  (2)使用URL表示数据传输源地址、目标地址和多媒体数据存储地址;  (3)有意地被设计为与HTTP具有相似的语法和操作,以便大多数HTTP扩展机制也能适用于MTP;  (4)为视音频流提供了VCR风格的远程控制命令,如暂停、前进、倒退和获取播放位置;  视频服务器以多媒体数据流传输控制服务层作为视频数据网络传输的基础,可以将任何符合工业标准的多媒体数据传输至用户终端,由此建立了实时播放的基础。  视频服务器对硬件没有特殊要求。服务器支持IDE或SCSI接口的硬盘,这意味着用户可以使用廉价的IDE接口硬盘来满足小规模视频点播系统的需求。 视频服务器的重要技术特征还体现在它具有多服务器支持、动态装卸、数据动态存储、代理服务的能力,在节目服务器的配合下,系统对网络规模的支持具有动态可伸缩性,并且能够充分利用网络资源、提高数据流并发处理能力和存储海量视频节目数据的能力。   例如:若有一个实时VOD系统设计为允许有500个用户同时访问,每个用户要求1.5Mbps的带宽,因此需要服务器具有750Mbps的I/O吞吐能力,这个速率使用多磁头磁盘阵列也无法达到。在这种情况下,系统允许通过在统一的系统中配置多个视频服务器。  系统的规模可伸缩性和分布式服务特征可以通过以下两个方面进一步体现: 
      (1)视频服务器、节目服务器既可单独安装、运行,也可与其它服务器,如:Web服务器、数据库管理系统存在于同一台NT服务器中;  (2)服务器管理工具允许系统管理员远程监视、开启和关闭网络中的每台视频服务器。   3、节目服务   视频点播业务的一大特点是大量用户可能突发地点播同一视频节目,一种解决方案是将视频数据制作多个备份,以供不同用户分别访问,另一种解决方案是将视频数据存储在多个磁盘的扇区中,由此增强系统同时播放节目的能力。我们充分研究了这两种技术,形成了与整个系统无缝融合的分布式视频文件系统。在系统中,一个视频服务器可同时服务于多个点播用户,而多个视频服务器也可为某个视频节目相继传播数据。   在系统中,不同视频节目通过唯一标识的信息来区分。节目信息包括数据类型、节目类型和节目名称,它们连同实际视频数据文件存放位置、节目介绍等信息集中存储在数据库中,而实际的海量视频文件数据既可以用分布方式存储在多个视频服务器的存储媒介中,也可以集中存储在磁盘阵列中被多个视频服务器共享。节目数据库不仅记录视频节目信息,而且动态维护着视频服务器名称、服务器运行状态、服务器硬件配置等数据。节目服务器具有实时VOD系统的节目播放控制程序,也是视频节目、视频服务器管理的中心。   视频数据传输   宽带信息服务技术的实质在于突破网络带宽、存储设备容量和I/O吞吐量的瓶颈;因此,对于视频服务来说,存取视频数据的方式是衡量系统性能优劣的基础;基于此,人们将视频点播系统划分为“文件共享方式”、“下载方式”和“流式”三种系统。   以“文件共享方式”为基础的视频点播系统又称为“最简单的视频点播系统,这种系统可以不配备额外的应用软件,也可设计专门的客户、服务器应用软件,以方便用户选择和点播节目。这种系统属于非流式系统,与流式视频点播系统有本质的区别,因为用户在进行视频播放时,实际上是通过操作系统的文件系统来直接访问服务器上的共享视频文件的。由于它没有任何特殊的机制保证视频数据传输的实时性,因此要求网络有足够的带宽、服务器磁盘有充分的I/O速率来保证视频数据传输。同时,由于这种点播系统以文件操作为基础,因而系统难以实现跨平台和扩大网络规模的目标;此外,由于要求服务器共享视频文件,增加了节目管理的难度、降低了系统的安全性。  真正的视频服务要求通过服务器把视频数据发送给客户端。目前,有两个通用的传输方案可供使用——“下载”和“流”。“下载”的意思是:通过网络传输整个视频文件,把数据存储到用户终端的存储设备中。由于在全部内容到达用户端以前,不能播放视频节目,因此它也属于非流式系统。“下载”机制能够较好地满足一些低质量和时间短的视频片段点播应用,但对于要求播放启动延迟短和视频质量高的应用,“下载”就不能很好地工作。例如,传送10分钟长、要求1.5Mbps网络带宽的MPEG-1视频片段,通过10Base-T以太网连接,启动延迟时间至少为1.5分钟,同时要求用户端大约有110MB的空余存储空间。在播放更高质量或更长时间的视频节目时,情况将变得更为严重。系统采用“流式”技术后,一旦用户端可利用的数据量足够大,就自动播放所选择的节目。播放延时通常在几秒到20秒之间,通过释放已经播放的数据,数据流可以重新利用空出的缓存空间,因而解决了“下载”机制带来的问题。现有的多种视频传输系统,如MicrosoftNetShow、RealPlayer都使用“流式”的技术,但他们主要应用于Internet的窄带传输,而不是用于高质量的宽带传输。 
      系统不仅支持将上百个高品质视频节目传送给网络客户,而且能够动态调整系统中众多用户终端和多个服务器的工作状态,以克服网络拥挤和存储设备的I/O瓶颈,以保证客户端平滑的视频输出。   宽带视频点播系统特点   系统的技术特点可以归结为以下几个方面。  1、开放的网络支持  系统完全基于IP网技术提供传统信息服务和视频服务,因此能够兼容任何支持TCP/IP协议的网络操作系统,可以无缝地应用于包括10M/100M以太网络、IP/ATM网络及HFC网络在内的网络基础设施,视频节目数据可经由ATM网络传送到远端,实现远程视频点播。   2、高性能数据流服务  视频服务器采用实时数据流技术将影视节目、教学以及其它视音频数据传输至用户终端,由此建立了节目顺畅播放的基础,并且能够满足无盘工作站和嵌入系统作为视频点播终端的需要。由于它实现在使用最普遍的WindowsNT(服务器)/Windows95/98(客户机)体系平台,因此用户的投资成本较低,而性能价格比则很高。   3、分布式视频服务  视频点播系统支持为系统配置多个视频服务器和对它们进行动态控制,控制功能包括:浏览服务状态、启动/关闭服务、登记/注销服务等等,因此系统不仅能够充分利用网络资源、提高数据流并发处理能力和存储海量视频数据的能力,而且对各种网络规模和不同用户要求具有自然的适应性。   4、分布式视频文件系统  具有结构开放、功能先进、管理方便、规模可伸缩的特点。   5、视频节目管理  系统为视频节目制作了专门的服务和管理工具。它设计提供的节目服务器、节目数据库、服务管理程序、Web服务器端脚本程序库,可使节目管理人员方便地查看已有节目、添加新节目和删除过时的节目,同时简化节目制作人员的工作,而且让点播用户能以最快的速度选择需要的节目。   6、支持远程管理  系统通过以下功能支持远程管理:  (1)支持使用视频服务管理器和NT系统服务控制器远程管理网络中的多个视频服务器;  (2)允许管理员在任一台机器上设置节目服务器地址和查询服务器运行状态;  (3)支持操作员在任一台视频服务器中管理视频节目。   7、标准用户操作界面  用户界面使用标准Web浏览器。意味着节目提供商可充分利用Web技术为用户制作内容丰富、界面友好、简洁漂亮的视频节目管理页面。梁景辉 周旭··信息与电脑
    摘自《中国有线网》 
     
     
     
      

  3.   

    我导师给了我ccp摄像头的源代码,要求我编写一个基于web的远程传输软件来实现远程监控,我不知道该怎么办,我的c++水平一般,网络编程方面更加欠缺,不知该怎么办,请哪位大虾帮帮忙。
      

  4.   

    不知你的问题是否解决了?如已解决请发一份代码给我,谢谢。
    [email protected]
      

  5.   

    编一个基于web的远程视频实时传输程序??
    YY:靠,你编了后,你老师想拿去卖!
    大学竟然要求人家做这些!怎么可能啊!
      

  6.   

    Mark   我也想搞个类似的 我知道流媒体  可是有没有别的呢?
      

  7.   

    用flash palyer,加一个视频解码器,就可以在网上进行视频播放了。
      

  8.   

    用flash技术简单的要死。red5+flash palyer.c++代码都不用几行。