SkeyePlayer rtsp、rtmp低延迟播放器源码解析之64位编译方案
SkeyePlayer支持多路拉流播放,而拉流解码的过程需要占用系统资源,而我们都知道32位程序最多只能利用4G的内存,而现在动则8G,16G的内存空间是完全不能被利用的;所以,为了充分利用内存资源,我们准备将SkeyePlayer改成64位版本。
新建64位编译平台
所有依赖库编译成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位程序编译64位并兼容32位调试
程序编译很简单,指定编译平台,然后附加对应平台的依赖项的头文件和库文件即可;
通过本次编译64位版本,遇到的几个问题及注意事项:
(1)程序依赖的DLL库编译64位的通过要注意其所依赖的库(系统的或者第三方的)都要编译的64位支持;
(2)如果没有源码,由第三方提供的库,如果需要兼容编译,可以通过宏定义的方式解决,如:
#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将在近期发布。
SkeyePlayer rtsp、rtmp低延迟播放器源码解析之64位编译方案相关推荐
- SkeyePlayer RTSP/RTMP流媒体超低延迟播放器源码解析系列之H264一帧多NAL写MP4录像花屏问题解决方案
接上一篇[SkeyePlayer源码解析系列之录像写MP4]之续篇,我们来讲解一下关于H264编码格式中的一帧多nal(Network Abstract Layer, 即网络抽象层),关于H264和N ...
- 超美响应式自适应引导页带音乐播放器源码
介绍: 超美响应式自适应引导页带音乐播放器源码,纯html源码,右键记事本修改即可~自带音乐播放器,自带自动打字特效,自带网站存活时间,自带随机ACG背景,自适应响应式网页 网盘下载地址: http: ...
- html5 mp3播放器源码,HTML5自定义mp3播放器源码
audio对象 src兼容.ogg .wav .mp3 width autoplay loop muted静音 播放play() var myAudio = new Audio(); myAudio. ...
- 最新哔哩哔哩视频弹幕播放器源码+带后台/亲测无错误
正文: 最新哔哩哔哩视频弹幕播放器源码+带后台/亲测无错误,此款播放器源码添加及修复了很多功能,且所有源码均本地化,不存在外链的情况,测试环境:PHP7.0+MySQL5.6 安装教程: 1,访问/d ...
- 一步步实现windows版ijkplayer系列文章之三——Ijkplayer播放器源码分析之音视频输出——音频篇
https://www.cnblogs.com/harlanc/p/9693983.html 目录 OpenSL ES & AudioTrack 源码分析 创建播放器音频输出对象 配置并创建音 ...
- Discuz论坛web网页mp3音频播放器源码下载
最近在做一个DZ论坛的搭建,在前几天的时候遇到Flash+Js的幻灯片的问题,特写了一篇<JS+Flash焦点图轮播源代码(2屏,3屏,多屏)>来记录论坛搭建过程遇到的一些技术性问题,以便 ...
- 321影音代码(万能播放器)源码
321影音代码(万能播放器)源码已经分享,点击链接进入直接可以下载: http://www.atguigu.com/online.shtml#online12 转载于:https://www.cnbl ...
- 【Qt 开源音视频框架模块QtAV】03:QTAV主要接口展示以及播放器源码分享
介绍 QtAV 是一个基于 Qt 和 FFmpeg 的跨平台.高性能多媒体播放框架,能够帮助你轻而易举地编写出一个播放器. [Qt 开源音视频框架模块QtAV]01:介绍.编译以及简单使用 因为网上使 ...
- android swf 播放器代码,Android Flash swf播放器源码(2016),技术稳定可以商用—— BY softboy...
Android Flash swf播放器源码(2016) 为什么说标题加上2016? 其实不是什么新技术,因为android4.1之后的android 浏览器内核版本发生了变化导致 Adobe 的Fl ...
- android swf 播放器代码,Android Flash swf播放器源码(2019)
Android Flash swf播放器源码(2019) 为什么说标题加上2019? 其实不是什么新技术,因为android4.1之后的android 浏览器内核版本发生了变化导致 Adobe 的Fl ...
最新文章
- 除了工作怎么交朋友_《隐秘的角落》该如何看待孩子在学校交朋友?
- FPGA之道(62)时空变换之空间换时间
- [SinGuLaRiTy] 2017 百度之星程序设计大赛 初赛A
- vivo分屏_vivo分屏+Jovi语音助手!让你找到解题新思路
- R运行大数据的过程中遇到的问题:不能有负长度矢量
- 环境部署(九):linux下安装python+chrome+Xvfb
- VNCserver在Fedora上配置过程
- [剑指offer]面试题第[38]题[JAVA][字符串的排列][回溯法]
- js如何处理后台传递过来的Map
- python LIST学习
- 牌组资源英语_「桌游推荐」如果当年有这种能背单词的桌游,我早就成英语学霸了...
- mysql8.0 安装_MySQL8.0安装步骤
- win10壁纸不能幻灯片放映_教你巧妙解决雨林木风Win10系统中背景桌面无法自动播放幻灯片...
- Ubuntu下改变键盘映射
- 彻底关闭win10自动更新
- linux查看u盘的分区格式化,linux U盘格式化ext3
- 62个大数据可视化工具
- matlab---之imcrop
- Office2013办公软件简体中文专业增强版
- PCB板材的基础知识