当前位置: 首页 > news >正文

CentOS下安装vlc

一、引言

  vlc是一跨多媒体播放器,可以播放本地媒体文件和网络串流,帮助我们排查音视频开发过程中遇到的问题。大部分情况下,我们只需要在Windows系统下安装vlc就可以了。但有一种情况是需要在Linux下安装vlc的:我们的音视频拉流软件(比如推流端)运行在Linux系统下,只能通过该Linux系统访问网络串流(比如摄像机的rtsp流),无法通过Windows系统访问这些网络串流。这个时候为了能判断该网络流的视频是否正常,我们就必须在Linux系统下安装vlc。

二、安装vlc

首先根据文章《MobaXterm无法调出图形界面》设置通过X11 Forwarding实现远程显示服务器的图形化程序。设置完后才能在远程连接上的Linux系统中启动vlc,本地Windows系统远程显示该vlc的界面。

根据vlc官网 https://www.videolan.org/vlc/download-redhat.html 所介绍的方法安装vlc软件本体

su -
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
yum install vlc
yum install vlc-core
yum install python-vlc npapi-vlc

安装后用root用户执行vlc命令, 可能会报错:VLC is not supposed to be run as root.Sorry.

修改 VLC 二进制可执行文件(每次VLC升级后,需要重新这两条命令修改可执行文件,并且如果 VLC 程序源码发生调整,该方法可能失效):

cp /usr/bin/vlc /usr/bin/vlc.backup
sed -i 's/geteuid/getppid/' /usr/bin/vlc

修改后就可以用root用户执行vlc命令了,但有时候vlc界面上的文字可能会乱码:

可以参考《CentOS gui 图形界面显示文字乱码》解决。

继续在控制台执行vlc命令,打开该Linux系统下的媒体文件:

可能还会报错:failed to open swrast和shaders not supported。然后播放界面黑屏,无法显示视频画面:

这时候得安装OpenGL:

yum install -y mesa-libGLES-devel.x86_64 mesa-dri-drivers
yum install mesa-libGL mesa-libGL-devel
yum install mesa-libGLU mesa-libGLU-devel
yum install freeglut freeglut-devel
yum install mesa-libGL-devel mesa-libGLU-devel freeglut-devel

安装完OpenGL后继续打开媒体文件,发现有视频了,但报错:alsa audio output error: cannot open ALSA device "default": 拒绝连接

这时候得在CentOS中安装或者升级alsa声卡,但这个过程非常麻烦,所以建议直接在vlc中把音频设置不启用:“偏好设置” -> “音频”,将"启用音频"的勾去掉,“保存”。

重新在vlc中打开媒体文件,就可以看到正常播放视频了:

http://www.lryc.cn/news/293157.html

相关文章:

  • 概率论中的全概率公式、贝叶斯公式解析
  • 亿赛通-数据泄露防护(DLP)UploadFileList;login接口存在任意文件读取漏洞 附POC软件
  • 如何使用 Google 搜索引擎保姆级教程(附链接)
  • SpringBoot实现轻量级接口反向代理、转发
  • 算法训练营day21,回溯1
  • 延伸与应用(三)婚姻与经济、运动、宗教、科技与经济
  • mac上,配置bundletool,将aab转为apk
  • wangEditor v4的简单使用
  • 简单实践 java spring boot 自动配置模拟
  • BeanDefinition学习
  • ASP.NET的GridView控件中,实现同列内容合并
  • 【文本到上下文 #8】NLP中的变形金刚:解码游戏规则改变者
  • mysql主流版本5.5/5.6/5.7/8.0重置修改密码方法
  • 设计模式——备忘录模式
  • 深入理解Django与Redis的集成实践
  • Java设计模式 – 四大类型
  • 查看阿里云maven仓中某个库有哪些版本
  • 【通信系统】MIMO阵列信号来向DOA估计实现~含FOCUSS、OMP、贝叶斯学习(SBL)等稀疏重构法和常规、子空间法、空间平滑滤波法
  • 高级变量赋值和变量的间接引用
  • vue动态修改侧边菜单栏宽度
  • 【C++入门到精通】C++的IO流(输入输出流) [ C++入门 ]
  • 【Spark系列5】Dataframe下常用算子API
  • 【大数据】Flink SQL 语法篇(二):WITH、SELECT WHERE、SELECT DISTINCT
  • leetcode-链表专题
  • Vue打包Webpack源码及物理路径泄漏问题解决
  • MySQL学习记录——일 MySQL 安装、配置
  • 获取真实 IP 地址(二):绕过 CDN(附链接)
  • 正则表达式补充以及sed
  • LLM智能体开发指南
  • 基于springboot校园二手书交易管理系统源码和论文