1 Star 4 Fork 0

frontier666/Cocos2dx-FFMpeg

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 937 Bytes
一键复制 编辑 原始数据 按行查看 历史
frontier666 提交于 2022-05-27 22:18 . 添加演示视频链接

cocos2dx引擎中的VideoPlayer调用的是Android和iOS平台自己的播放器,这就导致视频播放永远在cocos2dx的图层上方,并且无法对视频做各种效果,所以需要引入FFMpegSDL2,使用FFMpeg解析音频流和视频流,将视频流转换成CCTexture2D,使用Sprite显示出来,音频流则使用SDL2播放出来,具体的实现在:

cocos2d/cocos/ui/BetterVideoPlayer.cpp

使用也非常简单:

BetterVideoPlayer *player = BetterVideoPlayer::create();
player->setFileName("视频或者音频文件路径");
addChild(player);
player->addEventListener([](Ref *player, BetterVideoPlayer::EventType eventType){
	// coding with eventType
});
player->play();
player->setVolume(0.2);

受限于FFMpeg的问题,Android系统中,FFMpeg无法正确解析apk包体中的媒体文件

演示视频:

https://www.bilibili.com/video/BV1U34y1j7Wy?share_source=copy_web

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/frontier666/cocos2dx-ffmpeg.git
git@gitee.com:frontier666/cocos2dx-ffmpeg.git
frontier666
cocos2dx-ffmpeg
Cocos2dx-FFMpeg
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891