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软件本体

bash 复制代码
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 程序源码发生调整,该方法可能失效):

bash 复制代码
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:

bash 复制代码
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中打开媒体文件,就可以看到正常播放视频了:

相关推荐
C_心欲无痕6 小时前
ts - tsconfig.json配置讲解
linux·前端·ubuntu·typescript·json
冰西瓜6007 小时前
国科大2025操作系统高级教程期末回忆版
linux
HIT_Weston7 小时前
93、【Ubuntu】【Hugo】搭建私人博客:面包屑(一)
linux·运维·ubuntu
cuijiecheng20188 小时前
Linux下Beyond Compare过期
linux·运维·服务器
HIT_Weston8 小时前
92、【Ubuntu】【Hugo】搭建私人博客:侧边导航栏(六)
linux·运维·ubuntu
CodeAllen嵌入式8 小时前
Windows 11 本地安装 WSL 支持 Ubuntu 24.04 完整指南
linux·运维·ubuntu
码农小韩10 小时前
基于Linux的C++学习——指针
linux·开发语言·c++·学习·算法
wdfk_prog10 小时前
[Linux]学习笔记系列 -- [fs]seq_file
linux·笔记·学习
Jay Chou why did10 小时前
wsl安装完无法进入wsl
linux
行业探路者11 小时前
二维码标签是什么?主要有线上生成二维码和文件生成二维码功能吗?
学习·音视频·语音识别·二维码·设备巡检