mfc做rtmp流播放器

前段时间有个项目要求用mfc播放rtmp直播流,想当然的想到第一套方案->在mfc上使用shockwave flash控件,因为之前的项目有使用flash播放器播放rtmp流,所以一直以为adobe的flash控件播red5出来的rtmp流没问题,没想到的是,找了一些资料,也把控件调试通了,但是播放rtmp失败。。。这让人有些伤怀。然后搜索以前用过的ckplayer和jwplayer播放器,没发现有可以在mfc上使用的控件,悲催的抛弃了。又使用方案2,使用vlc的插件,vlc被广泛用来播放网络直播,不过它的延迟真让人蛋疼,这都不算啥,比起来插件的扩展性,那都叫蛋碎啊,现在vlc官网的版本已经到了2.3多,但是安装完你会发现,mfc上添加的vlc插件没有属性列表,无法使用其接口,在网上找了好久发现很多大婶都有用vlc插件,无奈找了其它版本,从0.8.。。。。。到了2.1.0,哥是用心良苦的下了一个有一个,主要有两个注意的地方,一个是能否在mfc上使用其插件,另一个是能否播放rtmp流。当这两个地方都吻合的时候,我发现,版本是2.1.0,好再坑的快结束了,也能播放了,但是问题又来了,添加上插件,关闭窗口的时候直接崩溃,跟了一下栈,说是线程中变量的问题,这让老子如何是好,哥只好不调用他们的析构函数,只要一有程序的ONCLOSE事件,我就执行exit(0),强行退出。也罢,还得继续,nnd对比了一下流,延迟一分多钟,这有多大的buffer???肯定不仅仅是buffer的问题了,本来vlc就不好做事实流,这客户肯定会跳起来骂的,无奈抛弃。接下来我都想自己去写一个播放器了,不要求什么功能,只要能播放就行了,后来想想,不行就使用webrowser控件把,在里面嵌入一个可以播放rtmp的flash播放器就好了,又找了各种文档,我想通过mfc调用这个插件里面的js函数,相当于调用接口了,想法不错,但是找了半天发现没成功,哥善于绕着走啊,就想反正是给里面的播放器传url,我用网页地址带参数的形式传参数,里面解析一下就ok了。m_WebBrowser.Navigate(CFileOcr::_FilePath + "videoPlayer\\videoplayer.html?url="+ url,NULL,NULL,NULL,NULL); 这样。播放器里面js响应onload事件,直接解析url进行播放,搞定。

写了半天,觉得跑题了,不像是技术文档,像是吐槽的,哈哈。

---------------------------------------------------------------------------

       自己的公司,朋友们关注一下

        公司网址:www.icss.cc

        中海岸建站:www.cseashore.asia

        企业建站交流群:1507219085
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值