前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SkeyePlayer rtsp播放器源码解析之64位编译方案

SkeyePlayer rtsp播放器源码解析之64位编译方案

原创
作者头像
Openskeye
发布2023-04-20 10:42:30
5480
发布2023-04-20 10:42:30
举报
文章被收录于专栏:国标视频云平台

SkeyePlayer支持多路拉流播放,而拉流解码的过程需要占用系统资源,而我们都知道32位程序最多只能利用4G的内存,而现在动则8G,16G的内存空间是完全不能被利用的;所以,为了充分利用内存资源,我们准备将SkeyePlayer改成64位版本。

  1. 新建64位编译平台
  1. 所有依赖库编译成64位 1> gpac库编译64位 官网下载gpac源码,通过cmake生成对应的VS版本,然后编译64位平台即可; 2> libSkeyeAACEncoder库编译64位 3> ffmpeg编译64位 ffmpeg可从官网下载源码,通过交叉编译或者cmake编译64位; 4> IntelHardCodec编译64位 5> SaveJPGDll库编译64位 6> FFDecoder编译64位 7> D3DRender编译64位 这里郑重感谢Gavin大神百忙之中抽出时间帮忙编译64位版本库; 8> SkeyeRTSPClient编译64位
  2. 程序编译64位并兼容32位调试 程序编译很简单,指定编译平台,然后附加对应平台的依赖项的头文件和库文件即可; 通过本次编译64位版本,遇到的几个问题及注意事项: (1)程序依赖的DLL库编译64位的通过要注意其所依赖的库(系统的或者第三方的)都要编译的64位支持; (2)如果没有源码,由第三方提供的库,如果需要兼容编译,可以通过宏定义的方式解决,如:
代码语言:txt
复制
#ifdef _WIN64
#include "D3DRender\include\x64\D3DRenderAPI.h"

#pragma comment(lib, "SkeyeRTSPClient/lib/x64/libSkeyeRTSPClient.lib")
#pragma comment(lib, "FFDecoder/lib/x64/SkeyeDecoder.lib")
#pragma comment(lib, "./D3DRender/lib/x64/D3DRender.lib")
#pragma comment(lib, "IntelHardCodec/lib/x64/IntelHardCodec.lib")
#pragma comment(lib, "libSkeyeAACEncoder/lib/x64/libSkeyeAACEncoder.lib")
// 增加MP4box和SaveJPG库的支持 [9/20/2016 dingshuai]
// JPGSave
#pragma comment(lib, "SaveJPGDll/lib/x64/SaveJpgDll.lib")

#else
#include "D3DRender\include\x86\D3DRenderAPI.h"

#pragma comment(lib, "SkeyeRTSPClient/lib/x86/libSkeyeRTSPClient.lib")
#pragma comment(lib, "FFDecoder/lib/x86/SkeyeDecoder.lib")
#pragma comment(lib, "D3DRender/lib/x86/D3DRender.lib")
#pragma comment(lib, "IntelHardCodec/lib/x86/IntelHardCodec.lib")
#pragma comment(lib, "libSkeyeAACEncoder/lib/x86/libSkeyeAACEncoder.lib")
// 增加MP4box和SaveJPG库的支持 [9/20/2016 dingshuai]
// JPGSave
#pragma comment(lib, "SaveJPGDll/lib/x86/SaveJpgDll.lib")
#endif

目前x64的系统已广泛使用,未来主流程序都应该是64位的,为了充分利用内存资源,也建议大家都将目前的32位程序升级成64位;最新兼容64和32位的SkeyePlayer将在近期发布。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档