本篇文章介绍客户端的初步实现。
客户端由两个项目工程组成,分别为SharpStreamingClient(用于客户端UI处理)和SharpStreamingClient.Core(用于客户端核心类处理)。
通过构建RtspClient类作为客户端的核心类,其功能包括连接服务器、断开连接、打开流、播放流、暂停流、停止流等。其中连接服务器与断开连接的代码片段如下:
因客户端为主动请求端,且每一次的请求都要求服务器响应,故采用通过方式来发送请求和接收响应,这一点是有别于服务器的发送和接收方式的。发送请求和接收响应的代码片段如下:
在界面设计方面,由一些常规的Windows Form控件组成,同时采用了一个开源控件ColorSlider作为播放进度条。初步的界面设计截图如下:
最后,需要提及的一点就是服务器和客户端均采用了开源代码LogThis用于日志记录。