24/4毕业设计小记

来源:互联网 发布:mac怎么打印 编辑:程序博客网 时间:2024/05/27 02:33

折腾了很久了,关于我的毕业设计,一直就没有时间来写博客,今天感冒了,趁着思路不太好的时候就写一篇博客吧!写什么好呢,就写基于vlc sdk的播放器开发吧!

我的项目是关于windows和linux两个平台的网络通信,题目本身的范围很广,我的想法是进行远程的实时视频传输,包括摄像头视频,本地视频或者屏幕录像的传输,再配合一些文件的传输操作。当然可以通俗易懂的说类似于扣扣的网络聊天,只不过严格意义上并不是。

废话不多说了,我此刻的目标就是开发一款播放器,如果要靠自己完全去写,那也不现实,毕竟要了解的东西太多了,视频的编解码,打包,封装,音频的编解码,视音频的同步等等。我之前考虑过用微软的direct show来进行开发,它封装了很多功能的filter,步骤也不算特别难,但是整个项目中最难的部分其实不是这里,而是视频的编码发送,和接收解码。查了很多资料,最后决定用ffmpeg来进行编解码,当然后来无意中搜到关于vlc的一些东西,原谅我第一次听说vlc,它能进行网络流的解码播放,支持http,httpd,rtsp,rtmp等协议,所以火速下载了vlc fow windows,安装,体验了这款播放器,我主要在乎的是它的网络流的解码播放功能如何,于是找了几个公开的rtsp地址进行播放,实验成成功。我为什么要说这个呢?因为ffmpeg,对,因为ffmpeg可以实时采集摄像头或者录屏进行rtp流的发布,那么严格来说我就不用去关心中间的编码发送接收解码等细节,这也行?为什么不行呢,我把vlc嵌入自己的应用中,关心更多的用户体验方面的设计,或者其他的一些东西,提高开发的效率,有何不可?

当然别看我说起来好像我的毕业设计就此搞定,但是远远不是我想的那么容易。

那么一直说不说废话了还说了这么多废话的情况下,有必要真的不说废话了。那么就来点干货。百度一搜”vlc 播放器开发”第一个跳出来的是点我。大神的源码下载之后,进行研究,发现关于播放器的那些还真不难,比如播放,快进,快退,暂停,抓图,停止等,vlc 的sdk完全封装好了,只需要调用即可。

整个工程的源码很容易理解,在此我就不细说了,各位看官自行研究。我对MFC的接触很早,但仅仅是接触,所以,为了修改成自己的播放器,包括界面,背景,快捷键等,需要进行自己的创造。接下来几篇博客,我会就某一个小小的问题或者功能进行详述。我再次声明,我几乎是小白,理解的有不对的地方望海涵,当然接收拍砖,不拍砖怎么成长,对不?

就到这吧,写得一点逻辑都没有,看来感冒真的把脑子烧坏了!本来说4月底尽量搞完,看来又得延长几天了!

0 0
原创粉丝点击