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

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

本文由 VidDown 提供支持 —— 一个完全免费、无需登录、纯前端处理的在线工具集。除了技术博客,VidDown 还提供视频解析下载、JSON 格式化、PDF 合并、IP 子网分析、Cron 表达式生成等 20+ 实用功能。
🌐 主站:https://viddown.cn

提到 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,一路下一步# 或者用 wingetwingetinstallVideoLAN.VLC

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

macOS

brewinstall--caskvlc Linux
sudoaptinstallvlc# 或 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--demuxffmpeg 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--fullscreenvideo.mp4--loop循环播放 做电子相框--random随机播放 播放列表乱序--intf指定界面--intfrc 远程控制--extraintf额外界面--extraintfhttp 开启网页控制 --http-port HTTP 控制端口 --http-port8080--no-video-title-show 不显示视频标题 录屏或转码时清爽点 vlc://quit 退出 VLC 加在命令最后,执行完自动关

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

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

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

  1. 批量给文件夹里的视频加音量增益
forfin*.mp4;dovlc"$f"--audio-filter=normvol--sout="#standard{access=file,mux=mp4,dst=normalized_$f}"vlc://quitdone
  1. 把摄像头 RTSP 流保存成 24 小时循环录像
vlc rtsp://192.168.1.100/stream--sout="#file{mux=mp4,dst=record_$(date+%Y%m%d).mp4}"--run-time=86400vlc://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 / macOSaliasvlc-stream='vlc --extraintf http --http-port 8080 --http-password vlc'

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

http://www.rkmt.cn/news/1438500.html

相关文章:

  • 别再死记硬背74LS138真值表了!用这个实验箱实战一次,秒懂3-8译码器工作原理
  • 用Java手写一个Tomasulo算法模拟器(附完整源码解析)
  • USB3.0设备突然掉线?从三种Reset Events看懂链路状态恢复全流程
  • 告别CAD转GIS的碎面噩梦:用ArcGIS Pro的‘要素转面’和‘空间链接’搞定控规用地数据
  • 哈希算法与AI识别:科技巨头如何用技术对抗“复仇式色情”?
  • Cortex-M33中断优先级与IRQLATENCY机制解析
  • WarcraftHelper终极指南:3分钟解决魔兽争霸3所有现代电脑兼容性问题
  • AI智能体创业实战:从能力封装到五步落地框架
  • STM32F1系列指纹锁全套开发资源:含原理图、Keil工程、FPM10A驱动与开锁控制代码
  • 别再手动处理串口数据了!STM32CubeMX配置USART2的DMA+空闲中断,实现零阻塞自动接收(附蓝牙模块通信实例)
  • 别再被商家忽悠了!HDMI 1.4和2.0线到底差在哪?手把手教你算清带宽和分辨率
  • 用PSO/GA/DE等算法跑CEC2017?这份Matlab通用测试框架帮你省下80%的重复代码
  • 别再死记硬背了!用Java/Spring Boot实战案例,5分钟搞懂UML类图的6种关系
  • 别再手动配Path了!用这个脚本一键修复Windows下MsBuild.exe命令找不到的问题
  • 别再只盯着LSTM了!2024年时序分类实战:用tsai库5分钟跑通MultiRocket
  • 基于RNN的个性化语言风格模仿:从零构建AI文本生成模型
  • 别再瞎写抽奖了!从原神保底到洗牌算法,聊聊游戏里那些‘套路’背后的代码实现
  • 告别老古董SigmaStudio!手把手教你用SigmaStudio+ 2.1为ADSP-21569做图形化开发(附资源下载)
  • 告别定时器PSC/ARR!用STM32H7的DAC+DMA双缓冲做DDS信号源,实测波形更稳
  • AI意识工程化:从整合信息理论到全局工作空间的技术路径与挑战
  • 用Arduino IDE点亮ESP32-S2-MINI-1的WS2812B:新手也能搞定的炫彩LED教程
  • ExT框架:基于Transformer的自主挖掘机智能控制系统
  • 《数据库原理》精要解读(八、九、十)—— 事务、恢复与并发:数据库内核的三大支柱
  • 面试官最爱问的Python八股文,我用这18个知识点帮你一次性理清(附避坑指南)
  • 基于深度学习的yolov8仪器仪表识别 数字表压力表读数 温度计读数 电压表读数图像识别系统设计
  • 别再手动算时间差了!用Ant Design Vue的a-table组件,5分钟搞定表格日期列差值展示
  • 学生选课微信小程序全栈开发包(含SSM后台源码、MySQL建表脚本与部署说明)
  • AI驱动招聘自动化:四大核心场景与成本效益深度解析
  • 【读书笔记】《架构即未来》精华解读
  • 保姆级教程:用Python和nuscenes-devkit从零玩转nuScenes自动驾驶数据集(附完整代码)