提示

VLC media player 从入门到藏宝:一个播放器能做的远不止播放

提到 VLC,很多人觉得就是个“什么都能播”的播放器。但用了十年后我发现,它还能当网络流媒体服务器、视频格式转换器、屏幕录制工具,甚至还能修复损坏的视频文件。这篇文章不讲 GUI 点来点去的基本操作,而是把 VLC 那些藏起来的硬核功能、命令行玩法。

一、为什么电脑里至少要装个 VLC

  • 格式兼容性天花板:MP4、MKV、AVI、MOV、FLV、RMVB…… 连没下完的 .part 文件都能硬着头皮播。
  • 自带解码器,不用额外装 codec pack(少了很多弹窗广告)。
  • 跨平台:Windows、macOS、Linux、Android、iOS 全支持。
  • 命令行和 HTTP 控制接口,适合做自动化播放、直播流转发。

官方下载:https://www.videolan.org/vlc/

二、安装(顺便说说我遇到的坑)

Windows

# 去官网下载 exe,一路下一步
# 或者用 winget
winget install VideoLAN.VLC

踩坑:安装时有个选项“添加 VLC 到右键菜单”,强烈建议勾上。遇到畸形视频文件右键 → 用 VLC 播放,比改默认播放器省事。

macOS

brew install --cask vlc
Linux
sudo apt install vlc
# 或 sudo dnf install vlc

装完后可以试试命令行启动:

vlc --version

三、那些你可能不知道的核心功能

3.1 播放网络流(直接开播)
最常用的隐藏技能:直接播放 HTTP、RTMP、UDP 流。

# 打开网络串流
vlc https://example.com/video.mp4

播放 YouTube 链接(需要 yt-dlp 配合)

vlc https://www.youtube.com/watch?v=xxx
也可以在 GUI 里按 Ctrl+N(媒体 → 打开网络串流),粘贴 URL 就行。

3.2 转换视频/音频(内置转码)
VLC 自带的“媒体 → 转换/保存”功能,可以当简易格式转换器。

命令行转码:

# MP4 转 MKV(不转码,直接复制流)
vlc input.mp4 --sout="#standard{access=file,mux=mkv,dst=output.mkv}" vlc://quit
# 更常用的方法:直接用 ffmpeg 的读者可以忽略,VLC 转码慢,但胜在不用装别的

踩坑:VLC 转码速度比 FFmpeg 慢很多,而且参数不太好记。建议批量转码还是用 FFmpeg。但单次转换不想装 FFmpeg 时,VLC 是个备胎。

3.3 录制屏幕(或摄像头)
菜单:媒体 → 打开捕获设备 → 选择“桌面”或“摄像头” → 播放后点“录制”按钮。

命令行录屏:

vlc screen:// --screen-fps=30 --sout="#transcode{vcodec=h264,vb=2048,fps=30,scale=1,acodec=mpga,ab=128,channels=2}:standard{access=file,mux=mp4,dst=record.mp4}" vlc://quit

踩坑:录屏文件体积巨大,建议控制码率或转成 H.264。

3.4 修复损坏的视频文件
有时候视频文件损坏(索引丢失、关键帧错乱),普通播放器打不开,VLC 经常能强行播。

更绝的是,VLC 可以尝试重建索引:

# 尝试修复(并不会改变原文件,只是临时的)
vlc --demux ffmpeg damaged_video.mp4

如果想长期保存修复效果,可以重新 remux:

vlc damaged.mp4 --sout="#standard{access=file,mux=mp4,dst=fixed.mp4}" vlc://quit

3.5 作为 RTSP/HTTP 流媒体服务器
把本地视频推到局域网,其他设备用 VLC 打开网络串流就能看。

菜单:媒体 → 流 → 添加文件 → 串流 → 选择 HTTP/RTSP → 添加端口(8080) → 转码可选。

命令行推流(HTTP):

vlc input.mp4 --sout="#http{access=http,mux=ts,dst=:8080/stream}" --sout-keep

其他设备上打开 http://服务器IP:8080/stream 即可观看。

四、常用命令行参数(我实际工作中用过)

参数  含义  例子
--play-and-exit 播完自动退出  用于脚本播放
--fullscreen    全屏  vlc --fullscreen video.mp4
--loop  循环播放    做电子相框
--random    随机播放    播放列表乱序
--intf  指定界面    --intf rc 远程控制
--extraintf 额外界面    --extraintf http 开启网页控制
--http-port HTTP 控制端口   --http-port 8080
--no-video-title-show   不显示视频标题 录屏或转码时清爽点
vlc://quit  退出 VLC  加在命令最后,执行完自动关

五、实战:几个我每天都在用的场景

  1. 边下载边预览(BT 或未完成文件)
vlc downloading.part
  1. 把手机当作 VLC 遥控器
    在电脑上开启 Web 接口:
vlc --extraintf http --http-port 8080 --http-password 123456

手机浏览器访问 电脑IP:8080,输入密码,就能遥控播放、暂停、调音量。

  1. 批量给文件夹里的视频加音量增益
for f in *.mp4; do
  vlc "$f" --audio-filter=normvol --sout="#standard{access=file,mux=mp4,dst=normalized_$f}" vlc://quit
done
  1. 把摄像头 RTSP 流保存成 24 小时循环录像
vlc rtsp://192.168.1.100/stream --sout="#file{mux=mp4,dst=record_$(date +%Y%m%d).mp4}" --run-time=86400 vlc://quit

六、问题汇总(都是我真实遇到的)

  1. VLC 播放 MKV 没声音(只有视频)
    原因:可能是 MKV 里的音频编码(如 DTS)未在 VLC 设置里启用直通。
    解决:工具 → 偏好设置 → 音频 → 勾选“启用音频直通”并选择合适的输出模块。

  2. 用 VLC 转码后文件反而变大了
    原因:默认转码码率很高,没做压缩。
    解决:在 --sout 里指定 vb=1024 等参数控制视频码率。

  3. 网络流经常缓冲卡顿
    原因:可能是缓存太小。
    解决:工具 → 偏好设置 → 输入/编解码器 → 文件缓存(增加毫秒数,如 5000)。

命令行加 --network-caching=5000。

  1. VLC 无法打开某些加密的 RTSP 流
    原因:需要用户名密码。
    解决:URL 里带上 rtsp://username:password@ip/stream。

  2. 播放时画面黑屏但有声音
    原因:视频输出模块不兼容(比如 Windows 下用了 Direct3D9,但显卡驱动问题)。
    解决:工具 → 偏好设置 → 视频 → 输出 → 改成“OpenGL”或“Direct3D11”。

  3. 开启 Web 接口后报 http access output missing
    原因:编译时没有包含 sout 相关模块。
    解决:换官方完整版 VLC,不用第三方精简包。

  4. vlc://quit 不生效,VLC 一直在后台
    原因:某些编码任务无法被中断,或者 --play-and-exit 没加。
    解决:加上 --play-and-exit 试试,或者用 --sout-keep 配合 vlc://quit。

七、一点小建议

VLC 的配置文件(Windows 下在 %APPDATA%\vlc\vlcrc)可以手工改,熟悉后比 GUI 设置快很多。

如果你的主要需求是格式转换或直播推流,建议学 FFmpeg。VLC 的优势在播放和简易串流。

遇到播放问题,先重置 VLC 的偏好设置(工具 → 偏好设置 → 左下角“重置”),能解决 80% 的玄学问题。

想用 VLC 做自动化,可以学习 Lua 脚本扩展。VLC 支持事件监听和自定义快捷键。

最后,VLC 的图标是一个交通锥(cone),因为最初版本的作者收集了一堆交通锥……

写这篇的时候我现场翻车:想在 Windows 上用 VLC 把桌面录屏并直接推流到 RTMP 服务器,结果折腾了一小时,发现需要先点击“串流”而不是“录制”。VLC 的功能藏得深,但一旦找到,就很香。

最后给出一个我个人最常用的 alias(Windows 批处理或 Linux bash):

# Linux / macOS
alias vlc-stream='vlc --extraintf http --http-port 8080 --http-password vlc'

手机扫码连接,躺床上关电脑屏幕,用手机遥控播放 NAS 里的电影,幸福感提升。

顶部
×
🔖
收藏本站
将本站添加到浏览器书签,方便下次访问
Ctrl + D (Windows/Linux)
+ D (Mac)