再谈fedora下的音乐和视频播放器的安装
rpm包就相当于windows下的exe,已经是编译后的二进制代码,可以使用rpm命令或dnf install ???.rpm来安装
lnux下软件的安装跟windows不同, 后者要到处去找, 要做一大堆操作. 而linux的软件安装是用yum来管理的: 是从repo源上安装的, 当dnf install a.package时, 会去搜索, 查找/etc/yum.repos.d/下的repo文件中的源仓库, 如果找到了就自动为你安装, 否则就报错说没有安装包.
dnf makecache : 是将创建 仓库的metadata数据文件.
dnf clean all: 是清除metadata缓存信息.
注意, 这两个所谓的缓存信息, 并不是将仓库中的packages(包实体)全部下载到本地来(真要那么做, 就叫做制作一个本地 镜像了), 不能够做到, 也没有必要. 它只是创建的仓库源的 元数据(关于仓库源的一些 "登记" 信息等),便于查找/索引.
实际上, 仓库源中的所有安装包, 在 repo文件的 baseurl或 mirrorlist所描述的地址里 就有, 就保存在那里.如: .../version(23)/Everything/i386/Os 可以给baseurl或mirrorlist写多个地址.
实际上win下也可以做成软件仓库, 只是没有社区去做去维护(因为有太多的comp靠win软件挣钱的了)
epel仓库是由fedora社区维护的; forge和fusion源都是由centos社区维护的.
dnf --help列出的是Main commands, 只是主要命令, 像localinstall都没有列出来.
在linux下可以使用 .d 作为目录的后缀, 表示这是一个目录.
在 http://download1.rpmfusion.org/free/fedora/releases/23/Everything/i386/os/Packages/m/ 中就有mplayer这个rpm安装包:

先把 rpmfusion-free-release-23.noarch.rpm从网站上下载下来, 或用curl, 或用wget获得:

然后安装这个rpm, 就会在/etc/yum.repos.d目录下增加 rpmfusion-free.repo等仓库文件.
然后 用 dnf makecache 创建/生成 本地的 metadata缓存 文件信息, 共dnf /yum查询, 安装使用.

不要随便使用 dnf clean all, 这个命令会把以前创建生成的 所有的 cache都删除掉, 再次生成所有的 metadata 缓存时, 如果网络不好, 会耽搁很长时间.
安装了rpmfusion后, 不管是free.repo, 还是nonfree.repo,这两个 "software repositories" "软件仓库" 里面都有 mplayer和ffmpeg.
注意, 这些列出来的包名称 , 其实都是 *.rpm的, 只是.rpm的后缀是省略了的.


softname.rpm和softname.lib 的关系, 前者就像是一个门店, 后者就像是这个店铺的 仓库一样. 通常门店和仓库是分离的, 分开的, 不会放在一起, 所以 softname.rpm 和softname.lib 要分开存放. 不放在一起, 以免softname.rpm 太庞杂, 而且将rpm和lib绑在一起, 不符合linux的哲学, 不符合最小组件软件的法则, 但是rpm又离不开lib, 对lib有dependency的依赖关系, 如同门店门市离不开仓库一样. 实际上, 很多软件都是rpm, 都要依赖于其 "后台的" lib库. 而rpm前端 调用的函数, 基本上都是由后台的lib库来提供的.
有那么多的mplayer(multi-player) 多媒体播放器, 它们的关系是怎样的?
所有的音频/视频播放器, 都是ffmpeg项目的子孙. mplayer成员也是ffmpeg的成员. 所以 mplayer可以认为约等于 ffmpeg, mplayer也是所有播放器的祖先.
mplayer主要是一个命令行的播放器, (通常没有gui界面), 因此, 用qt开发的smplayer和用gtk开发的 gnome-mplayer等就成了 mplayer的gui界面, 那么 实际上 smplayer和gnome-mplayer就只是mplayer的 "外包装" "一件衣服"而已. 它们在播放的时候, 其实还是在 调用 mplayer. 就像外面那些 "串串"一样, 它们一天在外面拉客, 跑项目, 而实际回来完成生产的, 还是厂里的工人. 这里 厂里生产的工人, 就是mplayer, 而在外面跑业务跑销售的就是smplayer.
mplayer自己带的前端界面是 mplayer-gui, 其他界面有qt的smplayer, 和gnome-mplayer.
====================
安装mplayer到底需要安装哪些东西?
- 可以显示的指明, 到底要安装哪些软件, 如
使用 dnf install mplayer smplayer, 就只是安装mplayer, 和它的前端界面smplayer, 而不会安装其他播放界面, 如gnome-mplyaer, mplayer-gui等. 当然(会自动包含所有依赖的音频/视频 编码/解码库, 如ffmpeg-libs, x264-libs, x265-libs, xvidcore, 还有其他音频解码器, 以及一些qt库等. - 也可以 使用 通配符, 安装根mplayer有关的一切软件, 使用
dnf install *mplayer*
实际上, 只要安装mplayer和smplayer后, 基本上就可以播放 任何 音频和视频了, 包括常见的 mp3音频, flv视频文件. 而且不必另外, 额外的去下载其他什么解码器了!
mplayer和smplayer的音频/视频解码器, 很多是从 rpmfusion-free-updates 仓库中获得的!
当然除了smplayer界面外, 还可以安装gnome-mplayer, 和mplayer-gui, 但是后面这两者都没有smplayer的界面 "好看".
再谈fedora下的音乐和视频播放器的安装的更多相关文章
- linux 常见音乐、视频播放器简介
2007-1-15 10:00:22 常见音乐播放器 xmms一族 xmms全称是X Multimedia System,这个经典的播放器可能是每个linux的使用者或多或少都 ...
- Centos7下修复 视频播放器(先 安装VLC视频播放器)
用最新的CentOS7发现没有视频播放器,于是在http://pkgs.org/上查找,发现了nux dextop仓库上有, 于是到他的官网上http://li.nux.ro/repos.html查了 ...
- 再谈fedora23下Virutalbox的安装. --问题的关键在于 安装kernel-devel包
首先, 要使用 virutalbox的 rpm 安装包 进行安装. 在安装的过程中, 如果提示 有一些包, 没有, dependencies not resolved, 比如libQt..libvpx ...
- 再谈fedora 23中的flash的安装
安装下载, flash插件的地址是 https://get.adobe.com/flashplayer/ ls 的显示, 记住两个很常用的选项: 指定 "假设的屏幕的宽度" , - ...
- 再谈应用环境下的TIME_WAIT和CLOSE_WAIT
昨天解决了一个HttpClient调用错误导致的服务器异常,具体过程如下: http://blog.csdn.net/shootyou/article/details/6615051 里头的分析过程有 ...
- 再谈应用环境下的 TIME_WAIT 和 CLOSE_WAIT
转自:http://blog.csdn.net/shootyou/article/details/6622226 昨天解决了一个 HttpClient 调用错误导致的服务器异常,具体过程如下: htt ...
- 再谈Retina下1px的解决方案
https://www.w3cplus.com/css/fix-1px-for-retina.html
- android 调用系统的音乐和视频播放器
package com.eboy.testsystemaudiovideo; import android.app.Activity;import android.content.Intent;imp ...
- 《shader入门精要》13.2再谈运动模糊中片元着色器的世界坐标的计算
具体在书p275页 这里为啥需要除D.w呢. 首先我们得到的NDC的坐标是已经归一化的,但是CurrenViewProjectionMatrix的作用,是把世界空间转化为尚未归一化的裁剪空间. 这里看 ...
随机推荐
- oracle中实现自增id
在一些数据库(例如mysql)中,实现自增id只要在建表的时候指定一下即可, 但是在oracle中要借助sequence来实现自增id, 要用上自增id,有几种方式: 1.直接在insert语句中使用 ...
- HDU 6298
Problem Description Given an integer n, Chiaki would like to find three positive integers x, y and z ...
- 05 enumerate index使用
# enumerate 自动生成一列, 默认0开始,每次自增+1li = ["电脑","鼠标垫","U盘","游艇"]f ...
- html5-文件的基本格式
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
- hdu5290树形dp
题意 给了n个点的数 每个点有一个w[i]权值,如果你选择了i这个点那么距离i这个点距离为w[i]的点将被除去,最后问 选则尽量少的点把这n个点全部删除 1<=n<=100000, 0&l ...
- Java集合-----List详解
List中的元素是有序排列的而且可重复 1.LinkedList LinkedList是非线程安全的,底层是基于双向链表实现的 LinkedList常用方法: toArray() ...
- html div重叠问题,原因分析和处理
1.现象 <!DOCTYPE html > <html> <head> <meta http-equiv="Content-Type" c ...
- python 爬虫基础知识一
网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 网络爬虫必备知识点 1. Python基础知识2. P ...
- [转载]ORA-01502错误成因和解决方法
检查一下索引状态,我们会注意到索引已经是“UNUSABLE”了.SQL> select index_name,index_type,tablespace_name,table_type,stat ...
- Step3 SQL Server 通过备份文件初始化复制
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 搭建过程(Process) 注意事项(Attention) 疑问(Questions) 参考文 ...