自己手动编译mpc-hc播放器
Part A: 准备Visual Studio开发环境
-------Visual Studio 2019 (or 2017)
1.安装 Visual Studio. 至少包括以下组件:
- C++ core features
- IntelliCode
- Windows Universal C Runtime
- Windows Universal CRT SDK
- C++ build tools (x86 & x64)
- C++ ATL
- C++ MFC
- Windows 10 SDK (10.0.17763.0 or 其他任何版本)
2.安装Windows 8.1 SDK → https://go.microsoft.com/fwlink/p/?LinkId=323507
- 在选择要安装哪些功能时,只需要选择"Windows Software Development Kit".
- 或者,可以使用Windows10SDK,但是生成的二进制文件至少需要Windows7SP1,因此将失去与Vista和7RTM的兼容性。
Part B: 安装 Python 3 (可选择性)
这是创建 translation DLL (翻译)文件所必需的
1.安装 Python 3.8.7 版本从https://www.python.org/downloads/release/python-387/
(可以使用 Python 3.6 或 更新版本)
2. 运行以下指令安装所需库
C:\Program Files\Python38\Scripts\pip install --upgrade polib
(个人Python环境下安装)
Part C: 准备MSYS 和 GCC 环境(可选择)
这是构建 LAV Filters(LAV滤波器)所必需的,它被MPC-HC用作内部编解码器。
通过选择“ReleaseLite”/“DebugLite”构建配置,可以跳过LAV过滤器的编译。在MPC-HC项目文件中。这对在开发过程中进行快速构建非常有用。 生成的二进制文件将缺少内部过滤器功能。所以不要使用这个配置发布版本。
1.下载 MSYS2 从 http://www.msys2.org/。
如果使用的是64位的操作系统,请获取下载64位的版本。
2.将其安装到例如**C:\MSYS64\
路径。应在稍后将创建build.user.bat**配置脚本中指定安装路径。
3.运行 msys2_shell.bat
4. 通过运行以下命令来安装一些其他必需的工具:
pacman -S make pkg-config diffutils
- 然后,通过运行以下命令来更新所有软件包:
pacman -Syu
当被要求重新启动MSYS时,点击yes。再次启动MSYS,然后重复上述命令。一切更新完毕后,关闭MSYS。
6.http://files.1f0.de/mingw/将其放入文件夹C:\MSYS64\mingw64
(覆盖已有文件)。 - 建议添加
C:\MSYS64\mingw64\bin
和C:\MSYS64\usr\bin
到 %PATH% 环境变量
这允许从Windows命令行运行GCC和所有其他MSYS工具。
配置环境变量:窗口控制面板>系统>高级系统设置>环境变量。
在Windows10上,您可以通过单击Windows开始菜单并键入control.exe
来访问传统控制面板。
Part D: Yasm
下载YASM并且以 yasm.exe 命名保存在(举例: C:\Windows
or C:\MSYS64\usr\bin
(参见part C)。设置环境变量在 %PATH%.中。
- 对于 64-bit Windows: http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win64.exe
(Recommended) - 对于 32-bit Windows: http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win32.exe
Part E: 配置路径文件
在MPC-HC的源代码文件夹中创建一个名为build.user.bat的文件(请参见第F部分)。它应该包含以下内容:(需要是自己电脑安装路径)
举例:
@ECHO OFF
REM [Required for LAVFilters] MSYS2/MinGW paths:
SET "MPCHC_MSYS=C:\MSYS64"
SET "MPCHC_MINGW32=C:\MSYS64\mingw64"
SET "MPCHC_MINGW64=C:\MSYS64\mingw64"
SET "MSYSTEM=MINGW32"
SET "MSYS2_PATH_TYPE=inherit"
REM [Optional] Specify GIT location if it is not already set in %PATH%
SET "MPCHC_GIT=C:\Program Files\Git"
REM [Optional] If you plan to modify the translations, install Python 3.8 and set the variable to its path
SET "MPCHC_PYTHON=C:\Program Files\Python38"
REM [Optional] If you want to customize the Windows SDK version used, set this variable
SET "MPCHC_WINSDK_VER=8.1"
注:
对于VisualStudio,将尝试自动检测VS安装路径。如果失败,需要自己指定安装路径。例如:
SET "MPCHC_VS_PATH=%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\"
如果在另一个目录中安装了MSYS软件包,则请确保在build.user.bat文件中设置了正确的路径。
*如果没有安装Git,生成版本将不准确,版本号将硬编码为0。
Part F: 下载MPC-HC源代码
需要Git来下载源代码。
安装 Git 在 Windows 从 https://git-for-windows.github.io/ 还有Git Extensions 从http://gitextensions.github.io/.
选择 Use Git from the Windows command prompt
. 这不是强制性的,所以如果你选择
Use Git from Git Bash only
并且确保设置了 MPCHC_GIT
变量在build.user.bat.
使用Git将MPC-HC的存储库克隆到C:\mpc-hc(或任何其他地方)。
安装Git
运行以下命令:
git clone --recursive https://github.com/clsid2/mpc-hc.git
或者
git clone https://github.com/clsid2/mpc-hc.git git submodule update --init --recursive
如果子模块更新失败,请尝试运行:
git submodule foreach --recursive git fetch --tags
然后再次运行更新
git submodule update --init --recursive
备注:
可能出现下载错误:
fatal: unable to access‘https://github.com/clsid2/mpc-hc.git : ’Failed to connect to 127.0.0.1 port 1080:错误
解决方法:借助代理git config --global http.proxy 127.0.0.1:10809
中断下载
git config --global http.postBuffer 5242880000
远程便捷HTTP传输请求数据时最大的缓存字节数,默认时1M字节,默认能满足大多数请求。大文件可设置git缓存值为5G。
Part G: 编译MPC-HC源代码
- 打开该解决方案文件 C:\mpc-hc\mpc-hc.sln。
将解决方案的配置更改为 Release (在工具栏中)。
2.按 F7 去生成解决方案。
3.则将获得 mpc-hc.exe 文件在路径 C:\mpc-hc\bin\mpc-hc_x86下。 - 打开该解决方案文件C:\mpc-hc\mpciconlib.sln。
- 按 F7 去生成解决方案。
- 则将获得mpciconlib.dll文件在路径 C:\mpc-hc\bin\mpc-hc_x86下。
- 打开该解决方案文件 C:\mpc-hc\mpcresources.sln。
- 执行 BuildAll 项目。
- 则将获得mpcresources.XX.dll 文件在路径C:\mpc-hc\bin\mpc-hc_x86\Lang下。
或者,可以使用build.bat来运行所有(运行:build.bat帮助
以获取更多信息)。
Part H: Building the installer
下载 Inno Setup Unicode v5.5.9 或 更新版本http://www.jrsoftware.org/isdl.php.
安装所有内容,然后转到* C:\mpc-hc\distrib,使用Inno Setup打开mpc-hc_setup.iss 。
阅读脚本中的第一批注释并编译它。
备注
- build.bat 可以通过使用安装 installer 或者 packages 交换
- 如果想编辑iss文件,并且不要更改其编码,请使用Inno安装程序的内置IDE,因为它会很容易地中断。
自己手动编译mpc-hc播放器相关推荐
- Mark几款优秀的基于MPC开源播放器的源码供参考.
SEP 11TH, 2016 2:00 PM MPC(Media Player Classic)是一款基于DirectShow由一名匈牙利大佬Gabest开发的一款开源播放器. 由于该项目基于GPL源 ...
- WPF 个人音乐播放器
1 播放器 项目地址:https://github.com/ChrisLeeGit/wpf-music-player 1.1 说明 一款简单的个人音乐播放器,基于WPF C# .Net Framewo ...
- 如何用FFmpeg编写一个简单播放器详细步骤介绍
如何用FFmpeg编写一个简单播放器详细步骤介绍(转载) FFMPEG是一个很好的库,可以用来创建视频应用或者生成特定的工具.FFMPEG几乎为你把所有的繁重工作都做了,比如解码.编码.复用和解复用. ...
- JW PLAYER 是一个界面简洁、功能齐全的在线flv flash播放器
JW PLAYER 是一个界面简洁.功能齐全的在线flv flash播放器.有着很多可选控制参数. 多个参数可以混合使用,下面选择几个作简要说明: file (FLV文件的地址,如果不设置则默认为jw ...
- ffmpeg播放器快进快退(七)
指导7:快进快退 处理快进快退命令 现在我们来为我们的播放器加入一些快进和快退的功能,因为如果你不能全局搜索一部电影是很让人讨厌的.同时,这将告诉你av_seek_frame函数是多么容易使用. 我们 ...
- 【原创】Unity3D WebPlayer 网页版播放器插件离线配置方案
如何能隐秘地在没有连接外网的机器上安装Unity3D的WebPlayer播放器插件? Unity发布成网页版后,需要安装WebPlayer播放器才能加载显示文件内容. 一般情况下,只需要从官网下载完整 ...
- 安装MPlayer播放器(号称Linux中的万能播放器)
来源: ChinaUnix博客 日期: 2008.09.18 18:48 (共有条评论) 我要评论 ...
- jquery 音频播放_10个jQuery HTML5音频播放器
jquery 音频播放 根据Buzz Angle Music的数据 ,仅在美国,2017年第一季度就消费了830亿个音频流.这比上一季度增长了61.2%. 同时,音乐销量下降了23.8%. 2017年 ...
- TCPMP超级播放器Windows CE5.0(ARMV4)编译方法
本文主要讲解TCPMP播放器到WINDOWS CE平台的移植编译过程,硬件平台以ARMV4为主,结束部分会讲解到ARMV4I编译中需要注意的问题 这几天为公司一个项目做准备,准备编译移植来自linux ...
- 迷你播放器--第一阶段(7)--安全攻防第一战--对抗反编译,代码混淆和对抗动态调试
迷你播放器--第一阶段(7) 安全攻防第一战--对抗反编译,代码混淆和对抗动态调试; 本文章为CSDN作者原创,转载请保留出处:http://blog.csdn.net/lrs0304/article ...
最新文章
- PHP 读取Excel数据
- PowerDesigner的逆向工程.
- redux异步action_【第1586期】基于Redux/Vuex/MobX等库的通用化状态OOP
- Git 修改commit 相关操作
- 存储过程和存储函数和触发器示例
- 物联网工程课程设计论文
- C++norm函数的用法
- 全网最全Selenium自动化测试相关资源汇总
- 攻防世界逆向入门题之logmein
- matlab的omega0是什么,ABO设定中,A具体是怎么标记O的?
- android svg图片使用
- 沉病孩子留遗嘱 父疏申请接济劫持红十字员农
- 哪种手机便签软件可以打印,支持打印的手机便签软件
- Python实现网络聊天
- miceforest插补
- 脚本显示服务器超时,服务器诡异的请求超时问题
- 云原生爱好者周刊:为 DevOps 流水线准备的 macOS 虚拟化工具
- 棋牌游戏运营框架思路
- java模板引擎 jade_Jade 模板引擎使用
- 计算机中级职称什么时候出成绩,2021年上半年网络工程师成绩查询时间公布(7月12日),查询入口已开通!...