HTTP 视频播放

zxtool http video 用于在本地目录里快速启动一个 HTTP 视频播放页。它适合这样的场景:

  • 某个目录下有一个 mp4 文件
  • 你想直接在浏览器里访问并播放这个文件
  • 页面上需要提供 开始暂停截屏 按钮
  • 播放器前端资源必须本地打包,不依赖 CDN

该命令内置了本地静态资源和播放器页面,播放器基于字节系 xgplayer 本地集成实现。

基本用法

如果当前目录里只有一个 mp4 文件,直接运行:

zxtool http video

默认行为:

  • 服务目录为当前目录
  • 监听地址为 127.0.0.1
  • 监听端口为 8000
  • 自动选择当前目录下唯一的 mp4 文件

启动后可通过 http://127.0.0.1:8000 打开播放页面。

指定目录

zxtool http video ./videos

这会在 ./videos 目录内查找视频文件,并启动播放器页面。

指定视频文件

如果目录里有多个 mp4 文件,需要显式指定:

zxtool http video ./videos --file demo.mp4

也可以使用目录内相对路径:

zxtool http video . --file subdir/demo.mp4

注意:

  • --file 指定的文件必须在被服务的目录内部
  • 当前仅支持 mp4 文件

指定标题和端口

zxtool http video . --file lesson.mp4 --title "课程回放" --host 0.0.0.0 --port 9000

这适合:

  • 让局域网内其他设备访问播放器页面
  • 自定义页面标题
  • 避免端口冲突

页面功能

播放器页面提供:

  • 开始:调用播放器开始播放
  • 暂停:暂停当前视频
  • 截屏:通过浏览器端 JS 生成当前帧截图,使用 Ajax 上传并保存到视频所在目录,同时显示预览

常见行为

当前目录没有 mp4

命令会直接报错,不启动服务。

当前目录有多个 mp4

命令会列出文件名,并提示使用 --file 指定目标文件。

拖动播放进度

服务端对视频文件提供字节范围响应,浏览器可以按需请求视频片段,便于拖动和定位播放进度。