在线视频播放器YT-DLP Web Player

在线视频播放器YT-DLP Web Player

简介

什么是 YT-DLP Web Player ?

YT-DLP Web Player 是一个开源的在线视频播放器,基于强大的 yt-dlp 引擎。它可以帮助用户直接在浏览器中播放来自各种视频网站的内容,无需下载即可在线观看。

主要特点

  • 多平台支持:基于 yt-dlp,支持 YouTubeBilibili 等众多视频平台
  • 画质选择:支持视频分辨率选择、字幕选择和宽高比调整
  • 视频下载:提供视频下载功能,方便离线观看
  • PWA 支持:支持 Progressive Web App,可安装到手机桌面,Android 支持"分享到"功能
  • 视频搜索:内置视频搜索功能,无需离开界面即可查找内容
  • 主题定制:支持自定义主题颜色和 AMOLED 深色背景
  • SponsorBlock 集成:自动跳过 YouTube 视频中的赞助商片段
  • 每日自动更新yt-dlp 每日自动更新,及时支持新的视频网站和编码
  • 开源免费:基于 GPL-2.0 协议开源,可免费使用和修改

应用场景

  • 个人视频中心:搭建个人视频播放平台,统一管理和观看各平台视频
  • 家庭媒体服务:家庭成员共享视频播放服务,支持多设备访问
  • 嵌入式播放器:通过 /iframe 端点将播放器嵌入到其他网页中
  • 视频归档:下载并保存喜欢的视频内容,建立个人视频库
  • 无广告观看:绕过视频网站的广告,获得更纯净的观看体验
在这里插入图片描述

总的来说,YT-DLP Web Player 是一个功能强大且易于部署的在线视频播放解决方案,让你摆脱平台限制,自由观看网络视频。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 matszwe02,不太好找,下拉找到 matszwe02/ytdlp_web_player,只有一个 latest 版本,双击直接下载

docker 文件夹中,创建一个新文件夹 ytdlp_web_player,并在其中建一个子文件夹 download

文件夹装载路径说明
docker/ytdlp_web_player/data/app/download存放下载的视频

端口

本地端口使用 5038,不冲突就行,不确定的话可以用命令查一下

# 查看端口占用netstat-tunlp|grep5038
本地端口容器端口
50385000

环境

可变说明
APP_TITLEYT-DLP Player应用标题
THEME_COLOR#ff7300主题颜色
GENERATE_SPRITE_BELOW1800视频长度低于此值(秒)时生成缩略图
AMOLED_BGfalseAMOLED 深色背景
MAX_VIDEO_AGE3600视频缓存过期时间(秒)
MAX_VIDEO_DURATION36000最大视频时长(秒)
DEFAULT_QUALITY720默认视频质量
LOAD_DEFAULT_QUALITYtrue加载默认画质
PLAYLIST_SUPPORTfalse播放列表支持
DOWNLOAD_PATH./download下载路径

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 ytdlp_web_player 和 子目录mkdir-p /volume1/docker/ytdlp_web_player/data # 进入 ytdlp_web_player 目录cd /volume1/docker/ytdlp_web_player # 一键启动docker run -d\--name ytdlp_web_player \--restart unless-stopped \-p5038:5000 \-v$(pwd)/data:/app/download \-eAPP_TITLE="YT-DLP Player"\-eTHEME_COLOR="#ff7300"\-eGENERATE_SPRITE_BELOW="1800"\-eAMOLED_BG="false"\-eMAX_VIDEO_AGE="3600"\-eMAX_VIDEO_DURATION="36000"\-eDEFAULT_QUALITY="720"\-eLOAD_DEFAULT_QUALITY="true"\-ePLAYLIST_SUPPORT="false"\-eDOWNLOAD_PATH="./download"\ matszwe02/ytdlp_web_player 

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version:'3.8'services:ytdlp_web_player:image: matszwe02/ytdlp_web_player container_name: ytdlp_web_player restart: unless-stopped ports:-"5038:5000"volumes:- ./data:/app/download environment:- APP_TITLE=YT-DLP Player - THEME_COLOR=#ff7300- GENERATE_SPRITE_BELOW=1800 - AMOLED_BG=false - MAX_VIDEO_AGE=3600 - MAX_VIDEO_DURATION=36000 - DEFAULT_QUALITY=720 - LOAD_DEFAULT_QUALITY=true - PLAYLIST_SUPPORT=false - DOWNLOAD_PATH=./download 

然后通过 SSH 登录到您的群晖,执行下面的命令:

# 新建文件夹 ytdlp_web_player 和 子目录mkdir-p /volume1/docker/ytdlp_web_player/data # 进入 ytdlp_web_player 目录cd /volume1/docker/ytdlp_web_player # 将 docker-compose.yml 放入当前目录# 一键启动docker-compose up -d

运行

在浏览器中访问 http://<群晖IP>:5038 即可进入 Web 界面

以老苏之前发的 https://www.bilibili.com/video/BV1LSwQzZEPi 为例,加载中会看到界面预览

加载成功后,就可以播放了

在这里插入图片描述

注意事项

  1. PWA 和 iframe 嵌入需要 HTTPS:如需使用 PWA 安装或 iframe 嵌入功能,需要配置反向代理启用 HTTPS
  2. 视频平台限制:部分视频网站有反爬虫机制,可能无法正常播放,可查看 yt-dlp 支持的网站列表
  3. 存储空间:视频缓存会占用磁盘空间,建议定期清理或调整 MAX_VIDEO_AGE 参数
  4. 网络要求:播放高清视频需要较好的网络带宽,建议根据网络情况调整 DEFAULT_QUALITY
  5. 安全建议:如公网访问,建议添加认证机制或限制访问 IP

参考文档

Matszwe02/ytdlp_web_player: Arbitraty internet video player powered by yt-dlp
地址:https://github.com/Matszwe02/ytdlp_web_player
yt-dlp/yt-dlp: A feature-rich command-line audio/video downloader
地址:https://github.com/yt-dlp/yt-dlp

Read more

Web CNC控制工具零基础配置指南:从安装到多场景应用

Web CNC控制工具零基础配置指南:从安装到多场景应用 【免费下载链接】cncjsA web-based interface for CNC milling controller running Grbl, Marlin, Smoothieware, or TinyG. 项目地址: https://gitcode.com/gh_mirrors/cn/cncjs CNCjs作为一款开源CNC控制器,提供了强大的Web界面操控能力,支持Grbl、Marlin等多种控制系统,帮助用户轻松实现CNC设备的远程管理与精准控制。本文将从核心功能解析、场景化部署到进阶应用拓展,全方位带您掌握这款轻量化Web CNC解决方案。 一、核心功能解析:重新认识CNCjs的强大之处 1.1 多控制器兼容系统:如何解决不同CNC设备的适配难题? CNCjs实现了与主流数控系统的深度整合,包括Grbl、Marlin、Smoothieware和TinyG控制器。这种兼容性架构允许用户在同一界面下管理不同品牌的CNC设备,无需为每种控制器单独配置软件环境。 1.2 3D工具路径可视化:

Clawdbot Web网关部署Qwen3-32B:免编译、免依赖、一键拉起的开源AI平台方案

Clawdbot Web网关部署Qwen3-32B:免编译、免依赖、一键拉起的开源AI平台方案 1. 为什么你需要这个方案——告别复杂部署,直接开聊 你是不是也经历过这些时刻? 想试试最新发布的 Qwen3-32B,却发现光是环境配置就卡在第一步:CUDA 版本不匹配、PyTorch 编译失败、模型权重下载中断、API 服务启动报错……更别说还要配前端、调 CORS、写代理规则、处理跨域和会话保持。 Clawdbot + Qwen3-32B 的 Web 网关方案,就是为解决这个问题而生的。 它不是又一个需要你“先装 Python、再 pip install、接着改 config、最后 debug 两小时”的项目。它是一套真正意义上的开箱即用型本地 AI 对话平台: * 不需要编译任何代码 * 不依赖系统级 Python 或

IIS 部署 .NET 6 WebApi 实战指南(附优缺点分析)

IIS 部署 .NET 6 WebApi 实战指南(附优缺点分析)

在 .NET 开发体系里,IIS 一直是部署 WebApi 的主力工具。 很多人接口写得很熟练,但真正涉及部署时,却容易卡在环境、权限、证书这些细节上。 今天我们从 0 到 1,把 .NET 6 WebApi 部署到 IIS 上跑起来,同时聊聊它适合做什么、不适合做什么。 一、环境准备 部署前,先确认三件事: 1️⃣ 已安装 IIS 控制面板 → 启用或关闭 Windows 功能 → 勾选: * Internet Information Services * Web 管理工具 * 万维网服务 * 应用程序开发功能 安装完成后访问: http://localhost 能看到默认页面说明成功。 2️⃣ 安装

RAG进化史:从“幻觉”到“可信”,及前端流式渲染实战

RAG进化史:从“幻觉”到“可信”,及前端流式渲染实战

前言: 1. 什么是 RAG(检索增强生成) RAG(Retrieval-Augmented Generation)是一种将信息检索(Retrieval)与大语言模型生成(Generation)相结合的技术架构。它的核心逻辑是“先查后答”,旨在解决大模型因训练数据滞后或知识盲区而产生的“幻觉”(一本正经胡说八道)问题。 工作流程拆解 1. 检索(Retrieval):当用户提出问题时,系统不会直接扔给大模型。而是先将问题转化为向量,在私有知识库(如文档、数据库)中进行语义搜索,找出最相关的几段原文。 2. 增强(Augment):将检索到的原文片段作为上下文(Context),与用户问题一起拼接成提示词(Prompt),喂给大模型。 3. 生成(Generation):大模型基于“用户问题 + 权威原文”进行回答,确保答案有据可依。 简单比喻:大模型是一个博学但记忆模糊的专家,RAG