【网学提醒】:本文主要为网上学习者提供基于RDP的声音传输服务程序设计,希望对需要基于RDP的声音传输服务程序设计网友有所帮助,学习一下吧!
资料包括: 论文(8页3629字) 图纸
说明:摘 要 本文是作者为 SEL System公司开发基于RDP的声音服务终端程序(Terminal Server)的总结,这个程序是建立在Microsoft 未公开的RDP协议之上的。文中描述了程序设计中遇到的各个方面,特别是针对声音数据数据量大的特点提出了我们的解决方法,这些方法也适用于其他的类似场合,具有一定的普遍意义。
关键字 RDP , 声音, DirectX,DirectSound COM , 环缓冲(ring buffer)
1 Remote Desktop Protocol (RDP)
RDP (Remote Desktop Protocol) 是微软根据ITU (International Telecommunications Union) 的T.120协议族制订的一套未公开发表的数据传输协议,是终端服务器 (Terminal Server) 和客户端之间的通信协议,它使得远程用户可以使用键盘和鼠标通过网络在应用程序之间进行通信。RDP的目的是把NT/2000终端服务器上的显示等数据信息平滑地传送到客户端。这里的客户端可以是使用各种系统的不同结构的PC或non-PC设备,如运行UNIX 、Linux 、DOS等各种不同OS平台的计算机。通过RDP协议客户端的计算机可以与远程服务器上正在运行的服务程序进行交互以获得相应的服务。
RDP的体系结构支持多点数据传输,能够实时地将数据从终端服务程序传送到各个客户点。RDP的数据传送使用的是一种栈(stack),和通用的OSI七层模型相似。从服务方发送的数据顺序通过各层协议栈,形成网络包,最终通过网络送达终端客户;从终端客户发来的数据则以相反的顺序送达服务程序端。
值得一提的是,RDP没有为实时声音数据传输制订标准,它目前只支持简单的系统喇叭鸣叫(system beeps),我们的工作就是为了弥补这一不足,为终端服务程序添加上实时的声音传输功能。
目录:1 Remote Desktop Protocol (RDP)
2 基于RDP 的应用
3 协议的定义及简单描述
4 声音服务
5 服务器端驻留
程序的设计
6 结 语
参考文献: Maricia Alforque, Remote Desktop Protocol in Windows CE, Microsoft Corporation, December 2000
Frank Kim, Run Your Applications on a Variety of Desktop Platforms with Terminal Server, Microsoft System Journal
White papers on DirectX and Related technologies:
http://www.microsoft.com/hwdev/devdes/ (hardware-related information)
http://www.microsoft.com/mediadev/ (API-related information)
http://www.microsoft.com/win32dev/ (Win32 API information)
Windows Hardware Quality Labs (driver teset and logo qualification) Internet: http://www.microsoft.com/hwtest/
Microsoft Corporation, Microsoft Windows NT 4.0, Terminal Server Edition: An Architectural Overview, June 1998
Microsoft Corporation, MSDN library, 2000
作者点评:RDP协议提供了一种在各种低端PC或non-PC设备上运行基于Windows的32位应用的标准,它在企业内部的应用升级以及网络会议(NetMeeting)等方面都有广阔的应用前景。本公司基于RDP的这套应用尽管还有不少待改进之处,但它的设计和实现的思想及方法都有一定的可值得借鉴的地方。
我们所作的关于声音传输服务的部分是针对RDP(Version 1.0) 协议中未给出声音传输标准而作的一种间接性的补偿。它要处理的数据的量是相当大的,为了尽可能地保证实时性,减少声音的延迟停顿,我们在软件方面作了种种努力。实际结果表明,这些措施还是有效的,但是声音的延迟停顿还不能有效消除,代码还有相当的改进的余地,这些工作将在以后的维护和使用中逐步加以解决。