技术 一个高性能的 DASH MPD 文件代理与转发服务

iptv_320 · 2025年10月09日 · 180 次阅读

简介

mytv-v1 是一个高性能的 DASH MPD 文件代理与转发服务,使用 FastAPI 编写,专为 IPTV/CDN 场景设计。
支持自动跟随重定向,原始 MPD 路径安全代理,适合多种流媒体聚合、转发、鉴权和内容分发场景。
开箱即用,Docker 支持多平台架构,无需复杂环境配置。


镜像地址: https://hub.docker.com/r/instituteiptv/mytv-v1

主要特性

  • 支持 DASH MPD 文件安全代理与重定向
  • 自动处理 HTTP 302/301 跳转
  • 简单接口,部署易用
  • 支持 amd64/arm64 多平台镜像
  • 依赖极少,轻量高效
  • 一键 Docker 部署

快速开始

1. 拉取镜像

docker pull instituteiptv/mytv-v1:latest
  1. 运行容器 bash docker run -d -p 5060:5060 --name mytv --restart=always instituteiptv/mytv-v1:latest 服务启动后,访问接口示例: bash http://<你的服务器IP>:5060/jump?url=https://dash.akamaized.net/envivio/EnvivioDash3/manifest.mpd 请将 <你的服务器IP> 替换为你的实际服务器地址。 容器管理常用命令 bash docker stop mytv docker start mytv docker restart mytv docker rm mytv docker logs -f mytv ## 📑 接口说明:/jump

功能描述
🔄 重定向并代理原始 MPD 资源,适合 DASH 流媒体聚合、分发等场景。


📝 请求方式

GET /jump?url=<完整的 mpd 文件 URL>


🧩 请求参数

参数名 类型 必填 说明 示例
url string mpd 文件的完整链接,必须以 http://https:// 开头 https://dash.akamaized.net/envivio/EnvivioDash3/manifest.mpd

🔍 示例请求

GET /jump?url=https://dash.akamaized.net/envivio/EnvivioDash3/manifest.mpd

常见问题 FAQ


Q1: 访问 /jump?url=xxx 报 500?

A:
请确保 url 参数以 http://https:// 开头,不能只填“xxx”或局部路径。


Q2: 根路径 404 或 favicon.ico 404?

A:
这是正常现象,未设置首页或 favicon 路由,无需处理。


Q3: 如何查看容器日志?

A:
用如下命令实时查看日志输出:

docker logs -f mytv

🛠️ 依赖环境

本镜像已集成全部运行依赖,无需单独安装:

  • Python 3.11
  • FastAPI
  • Uvicorn
  • httpx

🐳 镜像开箱即用,无需再额外 pip 安装依赖。

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请 注册新账号