diff --git a/Project/synthmind/项目需求.md b/Project/synthmind/项目需求.md index fc014da2..56ce5738 100644 --- a/Project/synthmind/项目需求.md +++ b/Project/synthmind/项目需求.md @@ -1,3 +1,5 @@ +请根据以下项目需求编写 音频提取和转录文字的脚本 + 项目目的: - 解析提供的视频文件,提取音频,转录成文字,利用AI分析文字及视频内容,总结归纳视频内容。生成脑图或其他格式文档。 @@ -12,7 +14,7 @@ - 执行相应命令时自动跳过已处理的文件,支持中断后重新运行继续,如 a.mp4已经标记提取了音频生成了a.mp3, 则提取音频操作不再执行此文件。 3. 在分析阶段如果视频文件过大,可先切分成更小尺寸的视频进行后续处理,manifest文件需要记录切分后的视频文件名 4. FFmpeg 音频提取 - - 将本地 .mp4 送入 FFmpeg,执行相应的命令提取音频轨道 + - 将本地 .mp4 送入 FFmpeg,执行相应的命令提取音频轨道,默认在当前ubuntu机器上已经安装了ffmpeg 命令集 - 转码参数:MP3 格式,64k 比特率,22050Hz 采样率,单声道(主要针对语音课程优化,体积小) - 不落地中间文件,pipe 直写输出 5. 保存mp3文件,和原文件名保持一致如原始视频文件为 test1.mp4, 则提取音频后的音频文件名为test1.mp3 @@ -29,7 +31,24 @@ - 执行相应命令时自动跳过已处理的文件,支持中断后重新运行继续,如 a.mp3已经标记已经转录了文字 生成了a.txt, 则转录文字操作不再执行此文件。 3. 在分析阶段如果预估通过mp3生成的txt文件过大,可先切分成更小尺寸的MP3进行后续处理,manifest文件需要记录切分后的音频文件名 - 显示文件大小、进度计数(当前/总数)、最终成功/失败统计,可重新执行未成功的音频转录 +- 转录音频用openai-whisper命令,默认在当前系统已经安装了whisper命令行 ## 内容归纳整理 -- 待定 \ No newline at end of file +- 待定 + + +请分析extract_audio.py 和transcribe_audio.py 这两个脚本,并用这两个脚本进行全面的测试。 +我已经准备了一个测试视频文件: /Users/weishen/MyFiles/03-SU软件的优化设置.mp4 + + /mnt/d/temp/03-SU软件的优化设置.mp4 +请用这个视频文件进行测试 提取音频, 转录文字。 + +所有测试通过之后,请写一份详细的文档README.md来说明这两个脚本的使用方法。 + + +我想修改openai-whisper的输入参数,可以让我自定义: +1. 语言: zh/en 这样可以提高转录文字的精度 +2. 模型选择 ,现在默认时tiny, 速度快但精度低, 我希望可以提供 tiny/base/small/medium这几种,请预先下载好模型。在必要时可以根据参数来调取。 +3. 请分别测试用不同的模型提取文字生成不同的txt,我来进行比较看哪个精度高 +4. 脚本修改完成后,根据修改同时更新README.md \ No newline at end of file diff --git a/Project/transcode_music/transcode_music.md b/Project/transcode_music/transcode_music.md index 692caa2d..d7e52621 100644 --- a/Project/transcode_music/transcode_music.md +++ b/Project/transcode_music/transcode_music.md @@ -1,3 +1,4 @@ +#transcode #music #readme #document #guide #mp3 #wav #flac #ffmpeg #cue # `transcode_music.py` 使用手册 批量将无损音乐(FLAC / WAV / DSF / DFF / APE)转码为 MP3 320k CBR 的 Python 脚本,支持断点续跑、错误恢复、CUE 整轨检测、DSD 转码。 diff --git a/knowledgebase/DeepSeek Harness 远程访问配置.md b/knowledgebase/DeepSeek Harness 远程访问配置.md new file mode 100644 index 00000000..b9143a7d --- /dev/null +++ b/knowledgebase/DeepSeek Harness 远程访问配置.md @@ -0,0 +1,70 @@ +#deepseek #dsh #deepseek-harness #web #profile #remote-access #Configuration +## 1. 配置局域网或公网访问 +修改配置文件:`~/.dsh/profiles/web/cordis.patch.yml` 添加或修改为 host: '0.0.0.0' 和 port: 3080。 + +``` YAML +- id: webserver + config: + host: '0.0.0.0' + port: 3080 +``` + +**如何查看当前的生效配置?** 官方 CLI 文档提供了一个非常实用的命令,如果你想验证自己对 `cordis.patch.yml` 的修改是否正确被系统合并,可以运行: + +``` bash +dsh --profile web --dump-config +``` + +这会在终端打印出合并所有 patch 补丁后的完整配置树,你可以直接在里面检查 `webserver` 节点下的 `host` 和 `port` 是否已经被成功改写为 `0.0.0.0` 和你想要的端口。 + + +## 2. 解决 crypto.randomUUID 报 +原因:浏览器在非安全上下文(非 127.0.0.1 的 HTTP 环境)下禁用了该 API。 + +### 方法一:改用 SSH 端口转发(最推荐、最简单) + +无需修改服务器任何配置,直接通过 SSH 将服务器的 3080 端口映射到你本地电脑。 在你的**本地电脑**终端运行: + +Bash + +``` +ssh -N -L 3080:127.0.0.1:3080 用户名@你的服务器IP +``` + +建立连接后,在本地浏览器访问 `[http://127.0.0.1:3080](http://127.0.0.1:3080)`。由于使用的是 `127.0.0.1`,浏览器会开放 `crypto` 权限,工作区将恢复正常。 + +### 方法二:强制浏览器信任该 IP(适合局域网测试) + + - 在浏览器地址栏输入并打开: + + - Chrome 浏览器: `chrome://flags/#unsafely-treat-insecure-origin-as-secure` + + - Edge 浏览器: `edge://flags/#unsafely-treat-insecure-origin-as-secure` + +- 找到 **Insecure origins treated as secure** 选项。 + +- 在下方的文本框中输入你远程访问的完整地址,例如:`http://192.168.3.189:3080`(请替换为实际 IP 和端口)。 + +- 将右侧的下拉菜单改为 **Enabled**。 + +- 点击右下角的 **Relaunch** 重启浏览器。重启后,该地址下的 `crypto.randomUUID` 就能正常使用了。 + +### 方法三:配置反向代理开启 HTTPS(适合长期/团队使用) + +如果你需要让多人通过外网稳定访问,最好的办法是不要让 DSH Web 直接暴露在 HTTP 环境,而是用 Nginx 或 Caddy 在它前面挡一层,并配置 SSL 证书。 + +以 **Caddy**(最简单的反向代理工具)为例: + +1. 在服务器上安装 Caddy。 + +2. 编写 `Caddyfile`: + + Plaintext + + ``` + 你的域名.com { + reverse_proxy 127.0.0.1:3080 + } + ``` + +3. 启动 Caddy,它会自动为你配置免费的 HTTPS 证书。通过 `[https://你的域名.com](https://你的域名.com)` 访问即可完美绕过该限制。