cocos2d-x 3.x + FFmpeg如何播放视频

 cocos2d-x 3.x + FFmpeg(或者是别的第三方库)如何播放流媒体视频?
 cocos2d-x 3.x + FFmpeg(或者是别的第三方库)如何播放流媒体视频?

在网上找了一礼拜的博客和教程,还是不会。论坛里求教这个问题的人也挺多的。
如果解决了,我会把这几天遇到的坑详细的写出来,让后来的人少入坑。

很简单,编译完成so后,看他的那个播放例子,照抄到你的代码里(就是那些c的函数形式,不要费力搞成类),它的例子是用sdl来输出画面的,你在那个地方改一下,指定画面成sprite的格式,然后加载到sprite里显示,接下来还能控制翻滚放大缩小呢,对了,它的声音也是sdl输出的,你需要把sdl也编译到你的工程里,因为我不会原生比如oc编码,所以我只能把sdl也编译进去,也是在一个回调声音输出的函数里

谢谢回复。有没有例子发个看看,对这方面不熟悉。或是博客的链接也可以

公司代码,不方便全给你
1、继承一个sprite,假设类名叫CCVideo.cpp,增加一个成员变量Texture2D *m_pFrameData;
2、把ffplay里的代码全拷贝到这个类里
3、把对refresh_loop_wait_event的调用放到CCVideo的update函数里
4、在video_display函数里替掉原来的内容,在这里给m_pFrameData赋值
5、然后用setTexture给这个CCVideo显示就完事了,声音本来就是SDL播放的,只要SDL库有,就不用你处理,但是缺点是同时间不能播放两个视频,因为SDL播放声音的关系,后一个播放的视频有声音,前一个没声音。。。

我都是自己弄的,很取巧,给公司做Demo用的,但是效率未必何够,自己玩玩你可以照我的来,商业使用自己估量吧

你好,ffplay是在哪个文件夹,在FFmpeg-iOS里找过了,没找到。你也是用FFmpeg库的吗??我是自己玩玩的哦,不是商业使用。之前在这篇博客上看到,所以就想试试,结果没达到预期效果。http://blog.csdn.net/langresser_king/article/details/14516879 而且这上边也是3.x之前的了

人工置顶!!!版主大人进来看看呐:13:

来来来,人工置顶。问题还没解决(为什么首页这么多垃圾信息:12:

去下源代码啊。。。那个自己写我觉得不大可能吧,你打算就一张白纸,然后开干么。。。。那得研究ffmpeg多深啊,我全是抄的,真正自己写的不过10%吧,主要是控制释放和加载其他mp4等等

现在ffmpeg库加到项目里了,还少RTSP流媒体播放器,网上源码也找过了,比如这个http://blog.csdn.net/lvwx369/article/details/41484905。但是这是Windows编程,我太菜了,不会移植到cocos2d项目里。被这个问题困扰很多天了,能否有例子看看

源代码链接能否给一个啊,我可以自己摸索的

好像不需要你说的那个,你直接把http连接当文件名传递过去就可以播,但是它不会缓冲,效果很差,我本来正打算加缓冲这部分的,后来失业了,去了别的公司没再折腾了,哪有什么源代码连接,垃圾项目,demo而已

没试过你说的那个,我是用vcl第三方库实现的

Http当参数传过去不行吧,是播放流媒体哦。。。。http的话用VideoPlayer类就可以播放

恩恩,谢谢了。能具体说说实现步骤吗??:6:

vlc第三方库能分享一下吗,谢谢了

cocos2d-x流媒体视频播放摸索很多天了,到现在还是没有结果。为什么没有自带的流媒体控件??!:6:
论坛里哪位走过路过进来看看的朋友,接触过cocos2d流媒体播放的,快来江湖救急啊啊啊,多谢了:3:

第一种:之前想过ffmpeg库,然后找到一个博客写rtsp播放器的。但是windows编程的,里边有些数据类型和c++不同。

第二种:想用vlc库来解决流媒体播放,但是在把vlc库添加到cocos2d项目里时就遇到问题了。对了,我的vlc库是在官网上下载解压后,找到include和lib,然后添加到项目目录下(这样是不是不行啊,想想就知道应该是不行的。问题来了,该怎么编译成lib和include,然后能加到项目里)。

第三种,就是OC和c++混编了,目前还在这种方法上尝试。把MobileVLCKit.framework加到cocos2d-x项目下,一直报错。我是这样加的:把MobileVLCKit.framework拖到项目文件目录,再拖到xcode的项目目录class里。在Framework Search Path 添加MobileVLCKit.framework的路径。。