Centos7 安装MPlayer过程详解

使用自带的totem基本上都无法播放视频,各种格式都不支持,令人无语。想到了MPlayer,为了看片,决定编译安装,过程真的是折腾。如图是自带的Totem播放提示,安装了解码还是无法播放,反正要找其他播放器了,也没兴趣去管他是什么原因。

需要用到的东西在MPlayer官网上都有,就一个页面可以把所有东西都下载好http://mplayerhq.hu/design7/dload.html

0x01 准备工作

使用svn方式获取获取源码命令

svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer

会在当前目录生成mplayer目录,再进入mplayer执行svn update更新svn,更新成功后显示”At revision”,至此获得了源码

另外需要下载解码包(Binary Codec Packages),解压到指定目录,默认的就是/usr/local/lib/codecs,当然可以在编译选项里面更改。

tar -xaf essential-amd64-20071007.tar.bz2
mkdir /usr/local/lib/codecs
cp essential-amd64-20071007/* /usr/local/lib/codecs

mplayer源码安装的时候需要yasm编译器,我在pkgs.org找到的,也把它下载下来,安装后就几个文件而已。

至此,准备工作完成,源码、解码包、yasm编译器都有了,另外源码安装必须的编译工具就不多说了,yum grouplist中把Development那两个装上就好了

yum groupinstall "Development tools"

yum groupinstall "Development Libraries"

0x02 编译安装

./configure --[options]

常用选项:
--prefix=/usr/local/mplayer 是安装路径
--enable-gui 安装图形化用户界面
--enable-freetype 调节字体
--with-codecsdir=/usr/lib/codecs/
--with-win32libdir=/usr/lib/wincodecs 指定解码位置
--language=zh_CN 中文

这里我直接进入mplayer目录,执行./configure --enable-gui --language=zh_CN

这里需要等待一小段时间自动下载组件

0x03 问题来了

第一个问题出现:“The GUI requires X11”

检查上面的各种checking希望能看到蛛丝马迹,发现关于X11的两个checking都是显示”…no”

yum search X11 看看有什么能用的,抱着试试看的心态安装了libX11两个包

yum install libX11-devel libX11

然后再来./configure一次,发现其中一个变为了yes了

再来百度发现GUI可能和gtk有关,但是他们普遍的错误都是“Error: X11 support required for GUI compilation”,而不是我的“The GUI requires X11”

也是摸石头过河的心态,安装了再说,又装了gtk的两个包,终于有两个yes

[[email protected] mplayer]# yum install gtk+-devel gtk+



安装好了gtk之后就引发了第二个问题,需要gtk2,如图:

需要就安装呗,可是安装不成功,现存的软件包版本太低,主要就是mesa-private-llvm和libdrm这两个的问题,这里也就折腾了。还有个值得注意的是看看同一软件包不同的版本,一个是el7,一个是el6. ,也是好几回下来才发现的

安装libdrm的时候就有问题了,2.4.59.el6和旧版本2.4.50.el7的三个文件冲突,yum源下载到本地用rpm安装,rpm有个--force暴力选项。可以发现不用--force还是无法安装,不管怎样先把安装包弄上再说。

解决了上面两个包的问题之后再来yum install gtk2-devel

又发现装gtk2时为解决依赖附带安装的mesa-dri-drivers-10.4.3安装不上,因为和系统现存的mesa-libglapi包所拥有的libglapi.so.0.0.0冲突(下载包并查看rpm –qlp mesa-dri-drivers-10.4.3发现果然有一个同名的文件,蛋疼的是系统存在的mesa-dri-drivers-9.2.5版本却没有这个文件,看来是软件包版本升级新增的)。

那么现在怎么处理呢。再来手动安装看看什么情况,又依赖于mesa-dri-filesystem、mesa-dri1-drivers两个包。试下yum看能否一次性解决。

可惜的是其中一个依赖包又报错了,单独安装,说小于7.12的版本已被废弃。

真心感觉没完没了,直接强制安装。

rpm --nodeps -ih mesa-dri1-drivers-7.11-8.el6.x86_64.rpm

rpm --force -ih mesa-dri-drivers-10.4.3-1.el6.x86_64.rpm

然后惊奇地发现gtk2-devel可以安装成功了

乱起八糟的依赖看到都头晕了,画了个图来总结gtk2-devel的折腾过程

当然解决依赖问题的时候你的源要配置好,我的Centos7里面只配置了epel和光盘的本地源


0x04 编译安装成功

总算可以好好执行./configure --enable-gui --language=zh_CN

make install(卸载的话就make uninstall) 就看到各个目录和可执行文件的创建。

0x05 后续

好不容易安装好,在图形桌面左上角Application菜单打开提示,这是没有下载皮肤导致只能从命令行启动

官网上下载皮肤

wget http://www.mplayerhq.hu/MPlayer/skins/XXXXXXXXXXXX

解压tar -xf XXXXXXXXX

解压后的文件夹复制到默认皮肤目录

因为播放器默认是找default的,那就在当前目录创建个连接,命名为default。从图形界面打开后就可以自行切换皮肤。

cd /usr/local/share/mplayer/skins/
ln -s <皮肤目录>/ default

--------------------------------------------------------------------------------------------------------------

使用过程中出现无法通过图形界面打开没反应,gmplayer命令打开文件闪退问题,终端运行gmplayer出现如下错误
[[email protected]]# gmplayer <file>

Option equ_channel_1 needs a parameter at line 11
Option equ_channel_2 needs a parameter at line 12
Option equ_channel_3 needs a parameter at line 13
Option equ_channel_4 needs a parameter at line 14
Option equ_channel_5 needs a parameter at line 15
Option equ_channel_6 needs a parameter at line 16

解决方法:运行过mplayer后,会在~/.mplayer/下生成gui.conf,出错的原因是该配置文件的11~16行

可直接将gui.conf删除,再次运行mplayer就可以了,同时新的gui.conf会再次生成,而这次生成的文件中就没有这六行

--------------------------------------------------------------------------------------------------------------

因为我的centos7安装在移动硬盘里,编译好的mplayer拿到其它机器上使用会出现如下问题

------------------------------------------------------------ --------------------------------------------------

当然还有个问题就是没有声音[AO OSS] audio_setup: Can‘t open audio device /dev/dsp: No such device。

OSS全称是Open Sound System,即是linux下的声卡驱动架构,它提供了主要的一些api函数,音频进行操作的。早期的linux下声卡多是用这种架构的,但是它有一个缺点就是不支持混音,而且都不能同时操作声卡。ALSA全称是Advanced Linux Sound Architecture,在2.6系列内核中,ALSA已经成为默认的声音子系统,用来替换2.4系列内核中的OSS(Open Sound System,开放声音系统)

以下方法未经测试。

对于之前的Centos版本,一说是用# modprobe snd_pcm_oss(一次性临时生效)或者mknod /dev/dsp c 14 3之后chmod 666 /dev/dsp就可以了(持久生效),还发现一个将/etc/sysconfig/sound里面的no改成yes的方法

对于Centos7,安装alsa相关的包,因为rhel6和centos6以上的版本使用声卡配置都是alsa了,所以声音可能与缺这个相关的包有关.yum install -y *alsa*

时间: 2024-12-25 11:27:54

Centos7 安装MPlayer过程详解的相关文章

(转)CentOS7安装KVM虚拟机详解

原文:https://github.com/jaywcjlove/handbook/blob/master/CentOS/CentOS7%E5%AE%89%E8%A3%85KVM%E8%99%9A%E6%8B%9F%E6%9C%BA%E8%AF%A6%E8%A7%A3.md 基于 CentOS Linux release 7.2.1511 (Core) 的环境下命令行的方式安装KVM的详细过程. 目录 检测是否支持KVM 安装 KVM 环境 安装虚拟机 命令行配置系统 连接虚拟机 虚拟机其它管理

OpenVPN CentOS7 安装部署配置详解

一 .概念相关 1.vpn 介绍 vpn 虚拟专用网络,是依靠isp和其他的nsp,在公共网络中建立专用的数据通信网络的技术.在vpn中任意两点之间的链接并没有传统的专网所需的端到端的物理链路,而是利用公共网络资源动态组成的,可以理解为通过私有的隧道技术在公共数据网络上模拟出来的和专网有相同功能的点到点的专线技术,所谓虚拟是指不需要去拉实际的长途物理线路,而是借用公共的Internet网络实现. 2.vpn 作用 vpn可以帮助公司用的远程用户(出差,家里)公司的分之机构.商业合作伙伴及供应商等

Linux——CentOS7安装gcc编译器详解

使用yum安装gcc 使用yum命令安装还是非常easy的. yum -y install gcc gcc-c++ kernel-devel //安装gcc.c++编译器以及内核文件 手动安装gcc 从CentOS7的系统安装镜像中取出需要的rpm包(也可以通过别的方式获取):解压镜像文件,进入"Packages"目录,里面很多rpm包,取出如下几个: mpfr-3.1.1-4.el7.x86_64.rpm libmpc-1.0.1-3.el7.x86_64.rpm kernel-he

基于CentOS6.7的DRBD安装配置过程详解

一.DRBD简介 DRBD的全称为:Distributed ReplicatedBlock Device(DRBD)分布式块设备复制,DRBD是由内核模块和相关脚本而构成,用以构建高可用性的集群.其实现方式是通过网络来镜像整个设备.你可以把它看作是一种网络RAID.它允许用户在远程机器上建立一个本地块设备的实时镜像. 二.DRBD是如何工作的呢? (DRBD Primary)负责接收数据,把数据写到本地磁盘并发送给另一台主机(DRBD Secondary).另一个主机再将数据存到自己的磁盘中.目

安装hadoop过程详解

wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-1.2.1/hadoop-1.2.1.tar.gz  hadoop的下载文件 安装jdk http://www.linuxidc.com/Linux/2014-08/105906.htm 安装hadoop 进入 /root/zby/hadoop/hadoop-1.2.1/conf 配置hadoop,主要是配置core-site.xml,hdfs-site.xml,mapred-si

Android的学习之路(三)项目的启动过程和安装过程详解

应用的安装和启动过程: 安装:第一步:java的编译器会把这个.java文件编译成.class文件 第二部:Android的SDK提供了一个dx工具,这个工具把.class文件转义成.dex文件 第三部:打包操作,把.dex文件和资源文件进行打包,打包成一个压缩文件,然后进行签名.最后就打包成为了.apk文件 第四部:调用adb指令:adb install c:/x.apk安装到模拟器 具体过程:.JAVA---->.class--.dx-->.dex--->打包签名--->.ap

CentOS7/RHEL7安装Redis步骤详解

CentOS7/RHEL7安装Redis步骤详解 CentOS7/RHEL7安装Redis还是头一次测试安装了,因为centos7升级之后与centos6有比较大的区别了,下面我们就一起来看看CentOS7/RHEL7安装Redis步骤详解 方法一:使用命令安装(前提是已经安装了EPEL). 安装redis: yum -y install redis 启动/停止/重启 Redis启动服务:1systemctl start redis.service停止服务: systemctl stop red

centos7.0 安装日志--图文详解-python开发环境配置

centos7.0发布之后,就下载了everthing的DVD镜像,今天有时间,所以决定在vbox底下体验一番--- 上图: 默认是体验安装,作为一个忠实粉丝,我决定选择直接安装! 这个界面是这次新版本更新后改的,它把以前要下一步.上一步可以修改的操作全部集中到一个页面来,默认选择是下图这样,比如你想修改软件安装选项只要点击相应选项就可以了. 每次你更改安装选项之后,它都会自动从新计算安装源,如果你的选择的资源本地没有,还可以通过网络来安装,默认网络是不启用的,所以我们需要自己手工设置一下网络.

win7配置免安装mysql5.6.19过程详解

本文主要介绍免安装配置mysql5.6.19的过程,整个过程中自己出现很多次失误,经过整理,现将一次可成功的过程记录下来,供大家参考. 准备 在mysq官网 http://dev.mysql.com/downloads/mysql/,下载最新稳定版本. 本文使用的mysql版本为5.6.19,因下载免安装版本,在页面选择"Windows (x86, 64-bit), ZIP Archive"[吐槽一下,越来越大了:217.2M] 解压 将下载的mysql.zip解压到E:\Develo