https://github.com/kevin-shanghai/Strong_RTSP_Player/archive/master.zip
这几天学习了下QT,QT核心的东西就是其信号与槽,其他的就是界面的设计,一个程序所有的逻辑部分都是利用信号和槽串起来的。一个widget发送信号,另外一个widget根据这个信号绑定的槽执行相应的函数,这样就实现了界面和程序逻辑的 交互操作。为了练习QT,结合前段时间对VLC播放器的分析,知道VLC播放器的界面也是QT写的,而且Videolan还提供了libvlc核心库给其他程序员做二次开发,再次佩服这样的开源组织,废话少说,下面是我用libvlc和QT写的RTSP播放器的效果,当然还支持本地视频的播放,你也可以输入RTSP地址来播放对应的流媒体,说明一下该播放器是跨平台的哦,支持Windows和Linux平台,我的开发平台是windows7.0和Ubuntu10.04
windows平台效果图:
Linux平台效果图:
下面我将从分别从两个平台(windows和Linux)来谈下利用QT和libvlc写该播放器的大概步骤,很多童鞋知道QT是跨平台的而libvlc是c写的,应该也是跨平台的,为什么还要从两个平台来讲。呵呵,因为libvlc虽然是c写的,但是他是基于模块结构的,这也是VLC的一大亮点,根据视频文件的编码格式不同动态的加载所需要的模块。而这些动态的模块都是一些动态库,在linux下是.so的东西,在windows下是.dll的东西,当然这些动态库不可能是跨平台的,所以需要区别对待这两个平台。
1. 首先去videolan的官方网站下载windows版本的vlc安装包安装,这个安装是傻瓜式的,很简单。这里之所以需要安装vlc主要是因为我们需要vlc所有的一些库文件,当然你也可以下载源代码编译windows平台所需要的库,不过这样比较麻烦,安装完了vlc就可以获得其所有需要的动态库,多简单啊。安装完后的安装目录是类似下面这样的目录结构:
