文档章节

MPV播放器的跨平台编译

几点人
 几点人
发布于 2017/09/04 11:18
字数 510
阅读 54
收藏 0

环境准备

操作系统安装

安装Debian 9.1.0

创建系统用户

创建用户mpv

useradd -m -s /bin/bash mpv

安装系统工具包

运行以下命令

apt-get install build-essential checkinstall bison flex gettext git mercurial subversion ninja-build gyp cmake yasm nasm automake pkg-config libtool libtool-bin gcc-multilib g++-multilib libgmp-dev libmpfr-dev libmpc-dev libgcrypt-dev gperf ragel texinfo autopoint re2c asciidoc python-docutils rst2pdf docbook2x unzip p7zip-full

 

升级nasm到2.13

检测nasm版本

运行以下命令

nasm –version

如果版本低于2.13,就运行下一步,否则跳过以下步骤,直接调到修改hosts文件

修改/etc/apt/sources.list文件

在文件末尾添加下面一行

deb http://www.deb-multimedia.org stretch main

然后运行以下命令

更新包索引

apt-get  update

安装deb-multimedia的GPG key

apt-get install deb-multimedia-keyring

安装nasm

apt-get install nasm

编译阶段

这个阶段是以用户mpv操作运行的。

配置git相关变量

git init

git config --global user.name mpv

git config –global user.email mpv@216.com

编译脚本下载及修改

git clone https://github.com/shinchiro/mpv-winbuild-cmake mpv

cd mpv

修改脚本

修改脚本packages/angle-0002-install.patch中的

+       $(INSTALL) -d $(INCLUDEDIR)/{EGL,GLES{2,3},GLSLANG,KHR,platform}

为以下六行:

+       $(INSTALL) -d $(INCLUDEDIR)/EGL

+       $(INSTALL) -d $(INCLUDEDIR)/GLES2

+       $(INSTALL) -d $(INCLUDEDIR)/GLES3

+       $(INSTALL) -d $(INCLUDEDIR)/GLSLANG

+       $(INSTALL) -d $(INCLUDEDIR)/KHR

+       $(INSTALL) -d $(INCLUDEDIR)/platform

   然后运行

mkdir build-64

cd build-64

cmake -DTARGET_ARCH=x86_64-w64-mingw32 -G Ninja ..

构建编译mpv所用工具

ninja gcc

编译mpv

ninja mpv

补充说明

编译完成后,可在/home/mpv/mpv/build-64目录下生成了以mpv-x86_64-xxxxxxxx-git-和mpv-dev-x86_64-xxxxxxxx-git-开头的两个子目录(其中xxxxxxx代表的是当前日期,比如20170904,我们在windows下通过远程工具winscp把mpv-x86_64-xxxxxxxx-git-开头的目录整体下载到windows下就可以了。

如果在windows通过运行mpv来进行流媒体播放时,出现有声音,但图像时,可通过以下URL

http://mpv.srsfckn.biz/d3dcompiler.7z

下载d3dcompiler_43.dll,把这个文件拷贝到mpv.exe所在目录,然后运行就可以出图像了。

© 著作权归作者所有

共有 人打赏支持
几点人
粉丝 18
博文 1
码字总数 510
作品 0
广州
私信 提问
MPV 播放器:Linux 下的极简视频播放器

MPV 是一个开源的,跨平台视频播放器,带有极简的 GUI 界面以及丰富的命令行控制。 VLC 可能是 Linux 或者其他平台下最好的视频播放器。我已经使用 VLC 很多年了,它现在仍是我最喜欢的播放器...

17%
09/05
0
0
视频播放器 MPV 0.23.0 发布

局长
2016/12/27
2.8K
5
跨平台音乐管理中心--Kreogist Mu

Kreogist Mu 是一个使用Qt 5实现的一个跨平台音乐管理中心。在Windows和Mac OS X下以bass为播放后端,通过bass的插件支持多种类型的音乐格式播放。在Linux下以 MPV 作为播放后端,用户需自行...

東條・スペンサー・咲
2014/12/08
3.1K
12
如何在mac下安装MPV播放器?

前言: 为什么在mac os下安装的MPV 我就不解释了[自己看看(http://www.zhihu.com/question/19552878)。 mac系统下,常用的播放器有哪些?如果你看过这篇测评,就知道了mac 下有什么好用的视...

colorchen
2016/10/20
410
0
QtAV 1.4.2 发布,跨平台高性能音视频播放库

- 提高seek速度。要感谢wm4(mpv主力开发者)的指点 优化音视频同步逻辑,软解播放高分辨率高帧率视频完胜其他播放器。其他播放器几乎不能看,包括硬解,除了mpv+vaapi。以后将有更好的优化。...

LucasWang
2014/12/29
2.5K
4

没有更多内容

加载失败,请刷新页面

加载更多

RabbitMQ+PHP 教程三(Publish/Subscribe)用yii2测试通过

介绍 在前面的教程中,我们创建了一个工作队列。工作队列背后的假设是每个任务都交付给一个工作人员处理。在这一部分中,我们将做一些完全不同的事情——我们将向多个消费者发送消息。此模式...

hansonwong
22分钟前
2
0
关于JAVA你必须知道的那些事(四):单例模式和多态

好吧,今天一定要把面向对象的最后一个特性:多态,给说完。不过我们先来聊一聊设计模式,因为它很重要。 设计模式 官方的解释是,设计模式是:一套被反复使用,多数人知晓的,经过分类编目,...

拾光TM
22分钟前
1
0
ES6 系列之 Babel 是如何编译 Class 的(下)

摘要: ## 前言 在上一篇 [《 ES6 系列 Babel 是如何编译 Class 的(上)》](https://github.com/mqyqingfeng/Blog/issues/105),我们知道了 Babel 是如何编译 Class 的,这篇我们学习 Babel ...

阿里云官方博客
23分钟前
1
0
附实例!实现iframe父窗体与子窗体的通信

欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由前端林子发表于云+社区专栏 本文主要会介绍如何基于MessengerJS,实现iframe父窗体与子窗体间的通信,传递数据信息。同时本...

腾讯云加社区
29分钟前
1
0
JSP页面传List集合到Action中

1:JSP页面(前端用的是H-UI框架) <div class="codeView docs-example"> <table class="table table-border table-bordered table-striped"> <thead> ......

uug
32分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部