跳到主要内容

LibreTV

项目主页

https://github.com/LibreSpark/LibreTV

介绍

LibreTV 是一个轻量级、免费的在线视频搜索与观看平台,提供来自多个视频源的内容搜索与播放服务。它采用现代化设计,操作简便直观,无需注册,即开即用,支持从手机到电视的多种设备访问。项目结合了优雅的前端交互体验和高效的后端代理功能,可部署在各类支持服务端功能的网站托管服务上。

LibreTV 相比传统视频平台的优势在于其轻量性、无广告干扰以及开放架构,用户可以自行部署私人实例,享受个性化的观影体验。本项目基于 bestK/tv 进行了全面重构与功能增强,提供了更稳定的视频源和更流畅的播放体验。

技术原理

LibreTV 采用了一系列现代 Web 技术构建:

  • 前端技术栈

    • HTML5 + CSS3 + JavaScript (ES6+)
    • Tailwind CSS(通过 CDN 引入,实现轻量级响应式设计)
    • HLS.js(处理 HTTP Live Streaming 协议的视频流)
    • DPlayer(核心视频播放器,提供高度自定义的播放体验)
  • 后端功能

    • Cloudflare/Vercel/Netlify Serverless Functions(处理 API 请求和代理)
    • 服务端 HLS 代理和处理技术(解决跨域和流媒体优化问题)
    • localStorage(本地存储播放历史和用户偏好)

LibreTV 的核心工作流程是:通过整合多个视频源 API,提供统一的搜索接口,然后对视频流进行必要的处理和代理,最终呈现给用户一个流畅的播放体验。系统设计注重性能优化和用户体验,即使在网络条件不佳的情况下也能提供较好的观看体验。

部署

LibreTV 提供多种部署方式,从自托管到云服务,满足不同用户的需求:

方法一:Docker 部署

使用 Docker 一行命令即可完成部署:

docker run -d --name libretv -p 8899:80 -e PASSWORD=your_password_here bestzwei/libretv:latest

部署完成后,可通过 http://your-ip:8899 访问站点。

对于熟悉 Docker Compose 的用户,也可以使用以下配置文件:

services:
libretv:
image: bestzwei/libretv:latest
container_name: libretv
ports:
- "8899:80"
environment:
- PASSWORD=yourpassword # 设置访问密码,增强安全性
restart: unless-stopped

方法二:Serverless 部署

LibreTV 完美支持 Cloudflare Pages、Vercel 和 Netlify 等主流 Serverless 平台部署:

Cloudflare Pages 部署步骤

  1. Fork 或克隆 LibreTV 仓库到你的 GitHub 账户
  2. 登录 Cloudflare Dashboard,进入 Pages 服务
  3. 点击"创建项目",连接你的 GitHub 仓库
  4. 配置部署设置:
    • 构建命令:留空(无需构建)
    • 输出目录:留空(默认为根目录)
  5. 点击"保存并部署"
  6. 可选:在"设置" > "环境变量"中配置密码保护

Vercel 部署步骤

  1. Fork 或克隆仓库到你的 GitHub/GitLab 账户
  2. 登录 Vercel,点击"New Project"
  3. 导入你的仓库,使用默认设置
  4. 点击"Deploy"
  5. 可选:在"Settings" > "Environment Variables"中配置密码保护

Netlify 部署步骤

  1. Fork 或克隆仓库到你的 GitHub 账户
  2. 登录 Netlify
  3. 点击"New site from Git",选择你的仓库
  4. 构建设置保持默认
  5. 点击"Deploy site"
  6. 可选:在"Site settings" > "Build & deploy" > "Environment"中配置密码保护

使用指南

LibreTV 的界面设计直观友好,打开页面即可轻松上手。

基本功能

  1. 视频搜索

    • 在首页搜索框中输入影视剧名称
    • 支持模糊搜索和精确搜索
    • 可按类型筛选(电影、电视剧、动漫等)
  2. 视频播放

    • 点击搜索结果中的影片进入详情页
    • 选择集数(如适用)和清晰度
    • 支持全屏、画中画、快进快退等标准播放控制
  3. 历史记录

    • 自动记录观看历史
    • 支持继续上次播放位置
    • 可手动清除历史记录

高级功能

  1. 自定义视频源

    • 在设置中添加或修改视频源 API
    • 支持多源切换,提高资源查找成功率
  2. 界面定制

    • 支持明/暗主题切换
    • 可调整播放器参数和界面布局
  3. 设备适配

    • 响应式设计,适配手机、平板和电脑
    • 针对智能电视和大屏设备优化的操作界面

键盘快捷键

为提高操作效率,LibreTV 提供了丰富的键盘快捷键:

  • 空格键:播放/暂停
  • 方向键左/右:快退/快进
  • 方向键上/下:音量增/减
  • F 键:全屏切换
  • M 键:静音切换
  • Esc 键:退出全屏

构建示例

为了避免滥用,这里就不贴出构建示例了。如有需要可以按照文档自行部署。