Skip to content

AnacondaKC/dsh-douyin

30Last commit Aug 13, 2026

dsh-douyin DSH plugin

This plugin aggregates video sources from the api.yujn.cn classification interface and uses host resolver to fetch the real MP4 direct link for native <video> playback. It offers two modes: auto-registering a sidebar tab when dsh-better-sidebar is installed, or a floating dock without extra dependencies. Features include auto-play, scroll/gesture switching, keyboard controls, and failure recovery.

How to install the dsh-douyin DSH plugin

dsh plugin --profile web add /path/to/DSH-douyin

Copying does not run this command. Review the repository and version before installing the dsh-douyin DSH plugin.

dsh-douyin DSH plugin data source

dsh-douyin DSH plugin snapshot date: Aug 16, 2026

discovered

What the dsh-douyin DSH plugin can do

  • Native video player with direct link resolution from 302 redirects
  • 21 built-in series (e.g., 学姐, 甜妹, COS, 舞蹈) with horizontal scroll navigation
  • Auto-play with precise history replay (returns to the exact same video on scroll up)
  • Gesture navigation: swipe up/down on mobile, scroll wheel on desktop
  • Keyboard shortcuts: Space/K play/pause, M mute, arrows for seek and video switching
  • Failure resilience: exponential backoff auto-skip, stop after 3 consecutive failures
  • Dual mode: dsh-better-sidebar tab or standalone floating dock with on-demand loading
  • Volume slider with icon segmentation (mute/low/high)
  • Adaptive panel width: 9:16 aspect ratio, clamped between 380px and 700px
  • Three source types: feed (random), direct (single file), web (iframe embed)

Where the dsh-douyin DSH plugin fits

  • Watch short videos in the DSH WebUI sidebar during work breaks
  • Use as a background video player while coding or chatting
  • Quickly browse curated entertainment content across 21 categories
  • Replay a specific video precisely using history stack (no random re-fetch)
  • Integrate as a lightweight media player in a DSH workspace without extra plugins

Who the dsh-douyin DSH plugin is for

  • DSH WebUI users who enjoy short-form video content
  • Developers wanting a quick entertainment break within their development environment
  • Users who prefer sidebar-integrated media players over separate browser tabs

dsh-douyin DSH plugin limitations

  • Feed sources depend on third-party API availability; playback stops after 3 consecutive failures
  • Content is random general entertainment short videos, not user-curated
  • Video object-fit: cover crops horizontal/16:9 content on the left and right sides
  • Headless automation environments (e.g., agent-browser) may encounter format errors for some videos (real browsers unaffected)
  • Only works in DSH WebUI mode (browser environment required)

dsh-douyin DSH plugin: from the repository README

Quoted from the AnacondaKC/dsh-douyin README, the upstream source of the dsh-douyin DSH plugin. Copyright remains with the original authors.

DSH WebUI 侧栏短视频插件:**原生播放器直接解析视频直链播放**。顶部可选择学姐、甜妹、COS、舞蹈等 21 个系列,支持自动连播、滚轮切换与精确历史回放。 ![dsh-douyin 在 DSH WebUI 中的短视频侧栏效果](docs/images/dsh-douyin-preview.png) ## 原理 聚合视频源来自 `api.yujn.cn` 的分类接口。每次请求会 302 到随机 mp4 直链;插件通过 host resolver 读取 `Location`,再交给原生 `<video>` 播放。历史栈保存真实直链,因此向上滚动能回到同一段视频。 ## 安装 ```sh dsh plugin --profile web add /path/to/DSH-douyin # 重启 dsh web 后生效 ``` ## 使用 ### 模式一:dsh-better-sidebar(装了它时自动生效) 自动注册侧栏 tab「刷视频」(单实例),在侧栏 + 菜单打开。 ### 模式二:自带浮动 dock(未装 better-sidebar 时) 页面右侧边缘播放按钮可展开/收起全黑沉浸式播放面板。零额外插件依赖。 ### 播放操作 - **点击暂停**:点击视频画面暂停,再点画面或中央播放按钮继续;暂停时中央按钮常驻显示 - **播放进度**:底部显示当前时间 / 总时长,拖动进度条可定位;固定视频播完后可从头重播 - **音量调节**:点击右下角音量按钮弹出滑块(0–100%),拖动实时调节并自动取消静音;图标按音量分档(静音 / 低 / 高) - **短视频手势**:手机视频区上滑 → 下一段,下滑 → 上一段;滑动后不会误触暂停 - **视频滚轮**:桌面视频区向下滚 → 下一段,向上滚 → 上一段(400ms 防抖;顶部悬浮栏空白处滚轮同样切视频) - **键盘控制**:空格 / `K` 播放暂停,`M` 静音,左右方向键快退/快进 5 秒,上下方向键切换视频 - **系列导航**:在顶部轨道滚轮或触控横滑,也可使用左右箭头、键盘方向键和点击切换系列 - **精确回放**:每段先经 host 路由(`/dsh-douyin/resolve`)用 Node fetch 解析出 302 后的**真实 mp4 直链**再播放——历史栈存的是直链,上滚回放的**就是刚才那段**(同一 URL),而非接口重新随机 - **自动连播**:feed 源每段播完自动前进(优先走历史,末尾才请求新段) - **失败自愈**:单段加载/解码失败会递增退避并自动跳过;连续失败 3 次后停止请求并显示错误界面 ### 界面 视频上方是抖音式横向系列导航轨道。当前系列固定居中,采用白字与红/青双侧强调;相邻项随距离逐渐淡化。轨道支持滚动

Read the full READMERepository license: BSD-3-Clause

dsh-douyin DSH plugin questions

How do I install dsh-douyin?

Run `dsh plugin --profile web add /path/to/DSH-douyin` in your terminal, then restart the DSH web service. The plugin will be automatically activated. If you have dsh-better-sidebar installed, it will appear as a sidebar tab; otherwise, a floating play button will appear on the right edge of the page.

Can I add my own video sources?

Yes, the plugin supports three source types: feed (random video API), direct (a single video file URL), and web (an embeddable webpage). You can add custom sources through the source management interface. However, the feed resolver only accepts the built-in HTTPS endpoints and will not proxy arbitrary URLs.

Why does the video sometimes fail to load?

The feed source relies on a third-party API. If a single video fails to load, the plugin will automatically retry with exponential backoff. After 3 consecutive failures, playback stops and an error message is displayed. This is a built-in resilience mechanism to avoid infinite loading loops.

What keyboard shortcuts are supported?

Space or K toggles play/pause, M toggles mute, left/right arrows seek 5 seconds, and up/down arrows switch to the previous/next video. These shortcuts work when the video panel is focused. You can also use the scroll wheel over the video area or the series navigation bar to switch videos.

Does the plugin work on mobile devices?

Yes, the plugin is designed with mobile support in mind. You can swipe up/down on the video area to switch to the next/previous video. The panel width adapts to the viewport, and on narrow screens it automatically fills the width. The floating dock collapses to a small button on mobile.