dsh-vidi 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE.md ADDED
@@ -0,0 +1,77 @@
1
+ # PolyForm Noncommercial License 1.0.0
2
+
3
+ <https://polyformproject.org/licenses/noncommercial/1.0.0>
4
+
5
+ ## Acceptance
6
+
7
+ In order to get any license under these terms, you must agree to them as both strict obligations and conditions to all your licenses.
8
+
9
+ ## Copyright License
10
+
11
+ The licensor grants you a copyright license for the software to do everything you might do with the software that would otherwise infringe the licensor's copyright in it for any permitted purpose. However, you may only distribute the software according to [Distribution License](#distribution-license) and make changes or new works based on the software according to [Changes and New Works License](#changes-and-new-works-license).
12
+
13
+ ## Distribution License
14
+
15
+ The licensor grants you an additional copyright license to distribute copies of the software. Your license to distribute covers distributing the software with changes and new works permitted by [Changes and New Works License](#changes-and-new-works-license).
16
+
17
+ ## Notices
18
+
19
+ You must ensure that anyone who gets a copy of any part of the software from you also gets a copy of these terms or the URL for them above, as well as copies of any plain-text lines beginning with `Required Notice:` that the licensor provided with the software. For example:
20
+
21
+ > Required Notice: Copyright Yoyodyne, Inc. (http://example.com)
22
+
23
+ ## Changes and New Works License
24
+
25
+ The licensor grants you an additional copyright license to make changes and new works based on the software for any permitted purpose.
26
+
27
+ ## Patent License
28
+
29
+ The licensor grants you a patent license for the software that covers patent claims the licensor can license, or becomes able to license, that you would infringe by using the software.
30
+
31
+ ## Noncommercial Purposes
32
+
33
+ Any noncommercial purpose is a permitted purpose.
34
+
35
+ ## Personal Uses
36
+
37
+ Personal use for research, experiment, and testing for the benefit of public knowledge, personal study, private entertainment, hobby projects, amateur pursuits, or religious observance, without any anticipated commercial application, is use for a permitted purpose.
38
+
39
+ ## Noncommercial Organizations
40
+
41
+ Use by any charitable organization, educational institution, public research organization, public safety or health organization, environmental protection organization, or government institution is use for a permitted purpose regardless of the source of funding or obligations resulting from the funding.
42
+
43
+ ## Fair Use
44
+
45
+ You may have "fair use" rights for the software under the law. These terms do not limit them.
46
+
47
+ ## No Other Rights
48
+
49
+ These terms do not allow you to sublicense or transfer any of your licenses to anyone else, or prevent the licensor from granting licenses to anyone else. These terms do not imply any other licenses.
50
+
51
+ ## Patent Defense
52
+
53
+ If you make any written claim that the software infringes or contributes to infringement of any patent, your patent license for the software granted under these terms ends immediately. If your company makes such a claim, your patent license ends immediately for work on behalf of your company.
54
+
55
+ ## Violations
56
+
57
+ The first time you are notified in writing that you have violated any of these terms, or done anything with the software not covered by your licenses, your licenses can nonetheless continue if you come into full compliance with these terms, and take practical steps to correct past violations, within 32 days of receiving notice. Otherwise, all your licenses end immediately.
58
+
59
+ ## No Liability
60
+
61
+ ***As far as the law allows, the software comes as is, without any warranty or condition, and the licensor will not be liable to you for any damages arising out of these terms or the use or nature of the software, under any kind of legal claim.***
62
+
63
+ ## Definitions
64
+
65
+ The **licensor** is the individual or entity offering these terms, and the **software** is the software the licensor makes available under these terms.
66
+
67
+ **You** refers to the individual or entity agreeing to these terms.
68
+
69
+ **Your company** is any legal entity, sole proprietorship, or other kind of organization that you work for, plus all organizations that have control over, are under the control of, or are under common control with that organization. **Control** means ownership of substantially all the assets of an entity, or the power to direct its management and policies by vote, contract, or otherwise. Control can be direct or indirect.
70
+
71
+ **Your licenses** are all the licenses granted to you for the software under these terms.
72
+
73
+ **Use** means anything you do with the software requiring one of your licenses.
74
+
75
+ ## Required Notice
76
+
77
+ Required Notice: Copyright 2026 CocoSgt (https://github.com/CocoSgt/dsh-vidi)
package/README.md CHANGED
@@ -11,6 +11,7 @@ A video tool for DeepSeek Harness: watch live streams, videos and podcasts with
11
11
  - **Two paces**: real-time shows lines as they are heard; polished arrives a little later with misheard words fixed from context.
12
12
  - **The subtitle model looks at the video**: polishing uses the page's title, description and comments, and — when the chosen model reads images — a frame of that stretch. It also keeps a glossary of names and terms for the video.
13
13
  - **Chat with DeepSeek beside the video**: grab this moment, cut this part, summarise, download the original — all in one conversation, with files saved in the video's folder.
14
+ - **Restream**: push the video with its subtitles drawn into the picture to Bilibili, Douyin, Kuaishou, WeChat Channels, Douyu, Huya, YouTube, Twitch or any RTMP/SRT address — several at once; each platform connects and reconnects on its own.
14
15
  - **Export**: SRT / VTT subtitles, transcripts by line or paragraph, clips with subtitle tracks.
15
16
  - English and Chinese interface; works on phones.
16
17
 
@@ -37,15 +38,11 @@ Set separately under the gear:
37
38
  - **Transcription**: speech to text. Whisper on this computer by default; or OpenAI, Google Gemini, Groq, SiliconFlow, Zhipu GLM.
38
39
  - **Subtitle model**: polishing, translation, glossary. DeepSeek by default; the list shows every model configured in DSH and marks the ones that read images.
39
40
 
40
- Online services use the keys DSH already has (the ones entered on its Models page work as they are); a key entered on the video page is checked, then saved in DSH.
41
+ Online transcription uses the model providers you have set up in DSH (Models page) — OpenAI, Google, Groq, SiliconFlow, Zhipu GLM: their key and address work as they are, whatever the key is called. A service DSH doesn't have yet can get a key right on the video page; it is checked, then saved in DSH.
41
42
 
42
- | Transcription service | Key names read |
43
- |---|---|
44
- | OpenAI | `OPENAI_API_KEY` |
45
- | Google Gemini | `GEMINI_API_KEY` or `GOOGLE_API_KEY` |
46
- | Groq | `GROQ_API_KEY` |
47
- | SiliconFlow | `SILICONFLOW_API_KEY` |
48
- | Zhipu GLM | `GLM_API_KEY`, `ZHIPUAI_API_KEY` or `ZAI_API_KEY` |
43
+ ## Restreaming
44
+
45
+ In the player, open **Restream**, add a platform (paste the server address and stream key from the platform's own streaming tool — e.g. Bilibili 直播姬, Douyin 直播伴侣, WeChat Channels Assistant), tick the ones to use and start. It starts from where you are watching, with the subtitles you see; for a live stream that is a few seconds behind live, so the lines are ready. Stream keys stay on this computer.
49
46
 
50
47
  ## Streaming from OBS
51
48
 
@@ -62,4 +59,4 @@ Recordings, subtitles, frames and clips live in `~/.dsh/live/jobs/<id>/` (change
62
59
 
63
60
  ## License
64
61
 
65
- MIT
62
+ [PolyForm Noncommercial 1.0.0](LICENSE.md): use, change and share it freely for anything except commercial purposes. No copyleft: your own changes can stay under whatever terms you like, as long as the use is noncommercial.
package/README.zh-CN.md CHANGED
@@ -11,6 +11,7 @@ DeepSeek Harness 里的视频工具:看直播、视频和播客,同时出任
11
11
  - **两种节奏**:实时模式边播边出;精修模式晚一点出,但会结合上下文把听错的词改对。
12
12
  - **字幕模型会看画面**:精修时结合视频页面的标题、简介、评论,所选模型能看图时还会带上那一段的画面,顺便整理这期视频的词表(人名、术语)。
13
13
  - **在视频旁边和 DeepSeek 对话**:截取此刻、剪下这段、总结要点、下载原片,都在同一个会话里完成,文件存在视频目录下。
14
+ - **转播**:把视频连同画面里的字幕推到 B站、抖音、快手、视频号、斗鱼、虎牙、YouTube、Twitch 或任意 RTMP/SRT 地址,可以同时推多个平台;每个平台各自连接、断了各自重连。
14
15
  - **导出**:SRT / VTT 字幕,逐句或按段落的文字稿,带字幕轨的片段。
15
16
  - 中英文界面,手机上也能用。
16
17
 
@@ -37,15 +38,11 @@ DeepSeek Harness 里的视频工具:看直播、视频和播客,同时出任
37
38
  - **转写模型**:把语音转成文字。默认用本机 Whisper;也可以选 OpenAI、Google Gemini、Groq、硅基流动、智谱 GLM。
38
39
  - **字幕模型**:精修、翻译、整理词表。默认 DeepSeek,列表里是你在 DSH 里配置的所有模型,能看图的会标出来。
39
40
 
40
- 在线服务的密钥和 DSH 共用同一份(DSH 的模型设置里填过的直接能用);在视频页里填的新密钥会先验证,再存进 DSH。
41
+ 在线转写直接用你在 DSH 模型设置里配好的服务商(OpenAI、Google、Groq、硅基流动、智谱 GLM),它们的密钥和地址拿来就用,不管密钥叫什么名字。DSH 里还没配的服务,也可以在视频页里直接填密钥,验证后存进 DSH。
41
42
 
42
- | 转写服务 | 读取的密钥名 |
43
- |---|---|
44
- | OpenAI | `OPENAI_API_KEY` |
45
- | Google Gemini | `GEMINI_API_KEY` 或 `GOOGLE_API_KEY` |
46
- | Groq | `GROQ_API_KEY` |
47
- | 硅基流动 | `SILICONFLOW_API_KEY` |
48
- | 智谱 GLM | `GLM_API_KEY`、`ZHIPUAI_API_KEY` 或 `ZAI_API_KEY` |
43
+ ## 转播
44
+
45
+ 在播放器里打开 **转播**,添加平台(从平台自己的开播工具里复制服务器地址和推流码,比如 B站直播姬、抖音直播伴侣、视频号助手),勾选要推的平台,开始即可。从你正在看的位置开始,带着你看到的字幕;直播时会比直播进度晚几秒,等字幕跟上。推流码只存在这台电脑上。
49
46
 
50
47
  ## 用 OBS 推流
51
48
 
@@ -62,4 +59,4 @@ DeepSeek Harness 里的视频工具:看直播、视频和播客,同时出任
62
59
 
63
60
  ## 许可
64
61
 
65
- MIT
62
+ [PolyForm Noncommercial 1.0.0](LICENSE.md):除商业用途外,可以随意使用、修改和分享;没有传染性,你自己的改动用什么条款都行,只要不拿去商用。
package/icon.svg ADDED
@@ -0,0 +1,12 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256">
2
+ <defs>
3
+ <linearGradient id="g" x1="0" y1="0" x2="1" y2="1">
4
+ <stop offset="0" stop-color="#6E8DFF"/>
5
+ <stop offset="1" stop-color="#3552EC"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <rect x="30" y="38" width="196" height="138" rx="34" fill="none" stroke="url(#g)" stroke-width="20"/>
9
+ <path d="M110 80v54a6 6 0 0 0 9.1 5.1l44.5-27a6 6 0 0 0 0-10.2l-44.5-27A6 6 0 0 0 110 80z" fill="url(#g)"/>
10
+ <rect x="42" y="200" width="112" height="22" rx="11" fill="url(#g)"/>
11
+ <rect x="172" y="200" width="42" height="22" rx="11" fill="#FFC53D"/>
12
+ </svg>