MoreRSS

site iconNoise修改

开发者,开发了Rss-Translation(众多RSS翻译项目之一)。
请复制 RSS 到你的阅读器,或快速订阅到 :

Inoreader Feedly Follow Feedbin Local Reader

Noise的 RSS 预览

AutoClip AI视频切片器封装包问题答疑

2025-08-15 10:00:00

111

Auto clip桌面版,基于原项目编译封装,我没有过多改动,封装了Win、Mac版,原项目请查看剪辑神器-AutoClip智能视频切片器
编译包网盘下载:https://pan.quark.cn/s/b9b8928c311b
包含dmg、exe、zip绿色包,使用mac封装并编译了前后端为可执行文件,加入了自动创建uploads文件夹的逻辑。
以下为你可能遇到的问题及解答。

问题1:出现加载项目失败,无法保存key

说明后端未运行,检查是否有杀毒软件或自己不小心删除了后端文件,win端在resources文件夹内,可手动启动检查。

问题2:无法下载视频切片或用api剪辑处理视频

检查安装包根目录是否缺少ffmpeg或电脑本地有没有安装ffmpeg,下载安装-https://ffmpeg.org/download.html

问题3:MAC选哪个版本?

提供了arm-m1芯片版本和通用版本,如果是英特尔芯片选通用

问题4:后端运行后依然报错加载项目失败

检查是否有遗留的下载视频文件记录,删除记录。

问题5:使用自定义模型切片失败

能满足切片处理及字幕提示词处理的大模型少,如果你自定义的满足不了,你需要切换回默认可以使用的模型

问题6:封装包内python版本和本地的python版本有冲突

使用命令python –version查看本地版本,我使用Python 3.13.5进行的编译,所以如果有冲突,原则上你需要下载不低于该版本的python

1755236563484

最后,声明虽然封装包是我编译的,但原项目作者不是我,关于源码及后续项目进展等的一些问题,你需要到github仓库去提

AI Movie Clip - 基于python的智能视频剪辑系统

2025-08-10 10:00:00

1754825674517

一个基于人工智能的自动视频剪辑系统,能够自动分析视频内容并根据用户需求生成编辑后的视频。该项目为视频剪辑mcp提供了一个新的研究方向,它使用python脚本来分析和处理视频,同时你可以编辑自己设定的模版进行一键创作。

开源:https://github.com/LumingMelody/Ai-movie-clip

功能特性

  • 🎬 视频自动分析:使用CV和ML模型分析视频内容
  • 🎨 多样化模板:支持多种视频风格模板(社交媒体、商业、教育等)
  • 🤖 AI内容生成:集成文本生成、图像生成和语音合成
  • 🎭 特效和转场:丰富的视频效果和转场动画
  • 🚀 API服务:提供FastAPI接口,支持批处理
  • 🔌 MCP集成:支持Model Context Protocol扩展

快速开始

环境要求

  • Python 3.8+
  • FFmpeg(用于视频处理)
  • CUDA(可选,用于GPU加速)

安装步骤

  1. 克隆项目
1
2
git clone https://github.com/LumingMelody/Ai-movie-clip.git
cd Ai-movie-clip
  1. 安装依赖
1
pip install -r requirements.txt
  1. 配置环境变量

复制环境变量模板并填写您的配置:

1
cp .env.example .env

编辑 .env 文件,填入您的API密钥:

1
2
3
4
5
6
7
8
# AI Model API Keys
DASHSCOPE_API_KEY=your_dashscope_api_key_here
OPENAI_API_KEY=your_openai_api_key_here

# OSS Configuration (Alibaba Cloud)
OSS_ACCESS_KEY_ID=your_oss_access_key_id_here
OSS_ACCESS_KEY_SECRET=your_oss_access_key_secret_here
OSS_BUCKET_NAME=your_bucket_name_here

1754825890851

获取API密钥

使用方法

命令行工具

1
2
3
4
5
6
7
8
# 分析视频
python main.py analyze video.mp4 --output analysis.json

# 自动剪辑视频
python main.py edit video.mp4 --duration 30 --style "抖音风"

# 查看更多选项
python main.py --help

Web API服务

1
2
3
4
5
6
7
# 启动FastAPI服务器
python app.py
# 或
uvicorn app:app --reload

# 访问API文档
# http://localhost:8000/docs

API示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import requests

# 分析视频
response = requests.post(
"http://localhost:8000/analyze",
files={"file": open("video.mp4", "rb")},
data={"duration": 30}
)

# 生成编辑视频
response = requests.post(
"http://localhost:8000/edit",
json={
"video_path": "path/to/video.mp4",
"template": "douyin",
"duration": 30
}
)

项目结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Ai-movie-clip/
├── core/ # 核心功能模块
│ ├── orchestrator/ # 工作流编排
│ ├── analyzer/ # 视频分析
│ ├── ai/ # AI模型集成
│ ├── clipeffects/ # 视频特效
│ ├── cliptransition/ # 转场效果
│ ├── clipgenerate/ # AI内容生成
│ └── cliptemplate/ # 视频模板
├── templates/ # Jinja2模板文件
├── config/ # 配置文件
├── main.py # CLI入口
├── app.py # API服务器
└── requirements.txt # 依赖列表

高级功能

自定义模板

templates/ 目录下创建新的模板文件:

1
2
3
4
# templates/custom/my_template.j2
产品名称:{{ product_name }}
特点:{{ features }}
价格:{{ price }}

扩展AI模型

core/ai/ai_model_caller.py 中添加新的模型:

1
2
3
def call_custom_model(prompt):
# 实现您的模型调用逻辑
pass

其它

该项目属于新的,还有很多不完善的地方,但提供的思路是好的,如将提示词精炼后给到大模型时ai执行指令调用工具剪辑的流程

示例提示词模板(给大模型的prompt):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
你是一个智能视频剪辑助手。现在我给你以下信息:

视频内容类型:{content_type}
视频片段数量:{num_videos}
视频分析结果:
- 场景切换频繁程度:{scene_change_freq}
- 是否包含人声:{has_speech}
- 是否包含人脸:{face_present}
- 主要对象:{main_objects}

请根据以上信息,生成一个适合该类型视频的剪辑策略,并输出具体的函数调用指令。

你的输出格式如下:
{
"thought_process": [
"第一步:识别出视频高潮部分在第10-15秒。",
"第二步:裁剪冗余开头和结尾。",
...
],
"actions": [
{"function": "cut", "start": 0, "end": 5},
{"function": "add_transition", "type": "fade", "start": 5, "duration": 1},
...
]
}

调用工具执行剪辑(使用 FFmpeg + Python)

支持的函数示例:

函数名 参数 功能
cut(start, end) 开始时间、结束时间 裁剪片段
add_transition(type, start, duration) 类型、开始时间、持续时间 添加转场
speedup(start, end, factor) 区间、加速倍数 加速播放
apply_filter(filter_name, start, end) 滤镜名称、区间 应用滤镜
concatenate(clips) 片段列表 合并多个片段

示例调用(使用 subprocess 调用 FFmpeg):

1
2
3
4
5
import subprocess

def cut_video(input_path, output_path, start, end):
cmd = f"ffmpeg -i {input_path} -ss {start} -to {end} -c copy {output_path}"
subprocess.run(cmd, shell=True)

通过完善不同的工作流就有了初步的mcp化功能,你可以拿这个项目作进一步的完善和研究

Memory-不负时光摄影相册程序

2025-08-10 10:00:00

不负时光摄影相册

简介

一个瀑布流摄影图库,也是专为摄影师做的独立网络相册程序,它是基于Moment二次开发的,提供前后端分离、docker部署方式,支持云端一键部署,加入了丰富个性化的一些功能,你可以本地使用或上传至oss存储,同样支持添加视频及一键备份等

演示:https://memory.noisework.cn

开源:https://github.com/rcy1314/Memory

桌面端下载:https://github.com/rcy1314/Memory/releases

网盘下载:https://pan.quark.cn/s/6477646cfa30

注意:我只有mac,m1芯片下运行正常,如果如果你运行后首页显示Network eroor的情况属于后端未运行,在最新版本的软件包内实际有后端文件,如果未自动运行,可手动运行解决报错,或者下载源码后执行后端命令,后端:python3 run.py

1754074172331

1754089150106

特征

  • 支持 linux/amd64 和 linux/arm64 两个平台
  • 支持本地、S3/R2三种oss存储上传方式
  • 支持多种数据库的选择连接,支持一键迁移,一键备份本地数据库
  • 自适应瀑布流布局,参考pinterest
  • 支持首页多张封面大图的自定义设置
  • 支持相册合集,首页会有合集中图片数显示
  • 支持添加B站、YouTube、直链视频,可自动识别B站、YouTube链接并解析相关视频信息
  • 支持后台批量上传不同存储渠道
  • 支持上传图片前的压缩和一键转换为webp格式的功能

加载特性

缩略图后缀优化

  • 系统支持配置 thumbnail_suffix 参数,会自动在原图URL后添加缩略图后缀
  • 如果配置了缩略图后缀,封面会使用 image.image_url + thumbnail_suffix 的优化版本
  • 如果没有配置后缀,则直接使用原图URL

响应式尺寸优化

封面图片会根据设备类型和网络状况动态调整参数:

移动端优化:

  • 尺寸:180×250像素

  • 质量:慢网络30%,正常网络40%

  • URL参数: w=180&h=250&fit=crop&auto=compress,format&q=30-40
    平板端优化:

  • 尺寸:250×350像素

  • 质量:慢网络35%,正常网络45%

  • URL参数: w=250&h=350&fit=crop&auto=compress,format&q=35-45
    桌面端优化:

  • 尺寸:200×280像素

  • 质量:慢网络35%,正常网络45%

  • URL参数: w=200&h=280&fit=crop&auto=compress,format&q=35-45

智能加载策略

  • 懒加载 :使用 IntersectionObserver 实现视口内才加载
  • 并发控制 :限制同时加载的图片数量,避免网络拥塞
  • 预加载 :优先加载前4-6张封面图片
  • 错误处理 :加载失败时自动回退到原图
  • 格式优化 :自动转换为WebP等现代格式

性能优化特性

  • 硬件加速 :使用 transform: translateZ(0) 启用GPU加速
  • 渐进式加载 :显示加载动画和进度提示
  • 缓存机制 :避免重复加载相同图片
  • 网络检测 :根据3G/4G/WiFi调整加载策略

1754074193119

前后端运行

前端:web目录下npm run dev

后端:python run.py

docker运行

1
2
3
4
5
6
7
8
9
docker run -d \
--name memory \
--platform linux/amd64 \
-p 4314:9999 \
--add-host host.docker.internal:host-gateway \
-e DB_HOST=host.docker.internal \
-e EXTERNAL_DB_HOST=host.docker.internal \
-e TZ=Asia/Shanghai \
noise233/memory:latest

如果你想挂载本地数据库文件,比如:

1
2
3
4
5
6
7
8
9
10
docker run -d \
--name memory \
--platform linux/amd64 \
-p 4314:9999 \
-v /www/wwwroot/memory.noisework.cn/data:/app/data \
--add-host host.docker.internal:host-gateway \
-e DB_HOST=host.docker.internal \
-e EXTERNAL_DB_HOST=host.docker.internal \
-e TZ=Asia/Shanghai \
noise233/memory:latest

连接 Neon 免费数据库的 Docker 运行命令

1
2
3
4
5
6
7
docker run -d \
--name memory \
--platform linux/amd64 \
-p 4314:9999 \
-e DATABASE_URL="postgresql://username:[email protected]/dbname?sslmode=require" \
-e TZ=Asia/Shanghai \
noise233/memory:latest

docker-compose

由于桌面版和docker后端api有冲突,docker请使用/api/v1,如果你想自己构建docker:

web/.env.productuon请修改为

1
2
3
4
5
6
7
8
# 资源公共路径,需要以 /开头和结尾
VITE_PUBLIC_PATH = '/'

# 是否启用代理
VITE_USE_PROXY = true

# base api
VITE_BASE_API = '/api/v1'

web/.env.development请修改为

1
2
3
4
5
6
7
8
9
# Docker环境下的前端配置
# 资源公共路径,需要以 /开头和结尾
VITE_PUBLIC_PATH = '/'

# 是否启用代理 - Docker环境下不需要代理
VITE_USE_PROXY = false

# base api - Docker环境下使用相对路径
VITE_BASE_API = '/api/v1'

然后运行

1
docker-compose up -d

构建跨平台桌面端时

web/.env.productuon请修改为

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# Tauri桌面端环境配置
# 资源公共路径,需要以 /开头和结尾
VITE_PUBLIC_PATH = '/'

# 桌面端API配置 - 指向本地后端服务
VITE_BASE_API = 'http://127.0.0.1:9999/api/v1'

# 桌面端不使用代理
VITE_USE_PROXY = false

# 是否启用压缩
VITE_USE_COMPRESS = true

# 压缩类型
VITE_COMPRESS_TYPE = gzip

web/.env.development请修改为

1
2
3
4
5
6
7
8
9
# Docker环境下的前端配置
# 资源公共路径,需要以 /开头和结尾
VITE_PUBLIC_PATH = '/'

# 是否启用代理
VITE_USE_PROXY = true

# base api
VITE_BASE_API = 'http://127.0.0.1:9999/api/v1'

🚀 一键部署

本地快速部署

1
2
# 使用一键部署脚本
./deploy.sh

云平台部署

我们支持多种云平台的一键部署,详细说明请查看:

📖 完整部署指南

支持的平台:

  • Zeabur - 使用 zeabur.json
  • Fly.io - 使用 fly.toml
  • Railway - 使用 railway.json
  • Render - 使用 render.yaml
  • Docker / Docker Compose - 本地部署

双平台构建发布

1
docker buildx build --platform linux/amd64,linux/arm64 -t noise233/memory:latest --push --no-cache .

Podman(替代Docker)

1
2
3
4
podman manifest create noise233/memory:latest
podman build --platform linux/amd64 --manifest noise233/memory:latest .
podman build --platform linux/arm64 --manifest noise233/memory:latest .
podman manifest push noise233/memory:latest
1
2
3
4
podman manifest create noise233/memory:dev
podman build --platform linux/amd64 --manifest noise233/memory:dev .
podman build --platform linux/arm64 --manifest noise233/memory:dev .
podman manifest push noise233/memory:dev

Docker下使用

  • 使用<服务器IP地址>:4314域名访问相册
  • 后台管理:<服务器IP地址>:4314/admin/<域名>/admin
  • 默认管理员账号:admin,密码:123456,请登录后及时修改用户名和密码

后台配置使用指南

  • 系统设置

    通用设置为后台工作台显示设置

  • 网站设置

    支持icon、logo、网站名称、封面自定义设置

  • 内容设置

    首页每次加载图片数为每一页加载显示的图片数,支持略缩图的后缀,但不要轻易设置

  • 存储设置

    允许上传-选项很重要,打开才支持图片的上传设置(包括批量上传也依赖这个开关)

    本地存储-默认路径为程序内的images文件夹,不要轻易设置url前缀,因为程序自动识别上传链接,如果你有自定义网址,可以当cdn加速前缀使用

    备份相册-检测并打包下载本地上传的所有图片,如果本地上传过多图片速度会慢

    备份数据库-仅限本地存储模式,可一键下载程序的数据库文件

    云端存储-支持cloudflareR2\S3及兼容oss存储,以cloudflarer2为例:
    前往https://cloudflare.com注册,并在账户主页找到“R2对象存储”,点击“创建存储桶”并设置存储桶名称并点击api设置管理密钥,再点击将r2和api配合使用面板记录账户ID

    1754664940776

    222eq

    点进新创建的存储桶,找到设置并点击可查看具体存储信息

    回到后台页:

    端点(Endpoint)-对应S3 API

    区域-对应位置,只填写英文如APAC

    访问ID-对应帐户ID,在api设置将r2和api配合使用面板中

    访问密钥-API密钥

    存储桶(Bucket)-存储桶名称

    存储路径-默认按年月日路径:{year}/{month}/{timestamp}_{filename}

    URL前缀-对应公共开发 URL或者自定义域名

    URL后缀-非必要不用填写

  • Token设置

    是为外部链接相册使用的,是为未来做插件而准备的,目前未完善

  • 数据库设置

    你可以选择不同的数据库连接类型,支持本地SQlite、postgreSQL、mysql

    Neon免费数据库为例进入网站面板,点击Connect to your database,查看链接信息

    比如:postgresql://nedb_owner:[email protected]/neondb?sslmode=require&cha_binding=rire
    主机地址-为@后的直到/的地址(ep-dark-wid-ae7n-pooler.c-2.us-est-2.aws.n.tech)

    端口-5432

    数据库名-Database选项下你创建的数据库名

    用户名-Role选项下显示的同时也是//之后:之前的nedb_owne

    密码-为@符合之前的n44g_fFkBjTxr6

    注意:点击测试连接需要最后保存,迁移数据库是增量迁移,如果字段相同不会覆盖,数据过多时花费时间会久

  • 内容管理

    如果是本地上传的图片在列表页面点击删除时会一同删除源文件,链接图片则不会

    使用批量上传前请确保已开启“图片上传”选项并选择了本地还是云端存储

1754122928815

更新

  • 增加多平台数据库连接及一键迁移

1754070550620

  • 增加用户token设置,目前认证方式:JWT token+API token

1754073880268

  • 增加批量上传案例脚本
  • 优化手机端渲染速度及布局
  • 优化首页缓存逻辑,浏览器默认24小时内缓存
  • 添加载入动画及提示弹窗
  • 增加本地上传和备份功能
  • 增加压缩转换图片的功能选项

预览

后台页

1754126989821

1754127006714

视频上传自动识别

1754667335195

点击图片查看

1754544187757

视频播放

1754543470663

🔨 构建说明

✅ 【点击展开】

桌面应用构建

本项目支持构建为桌面应用程序,基于 Tauri 框架开发。

环境要求

通用要求:

  • Node.js 16+
  • npm 或 yarn
  • Rust 1.70+

Windows 构建要求:

  • Windows 10/11
  • Microsoft C++ Build Tools 或 Visual Studio 2019/2022
  • Windows SDK

macOS 构建要求:

  • macOS 10.15+
  • Xcode Command Line Tools

Linux 构建要求:

  • Ubuntu 18.04+ / Debian 10+ / Fedora 32+ 等
  • 系统开发工具包

构建步骤

  1. 安装依赖

    1
    2
    3
    4
    5
    6
    7
    8
    # 进入前端目录
    cd web

    # 安装 Node.js 依赖
    npm install

    # 安装 Tauri CLI
    npm install -g @tauri-apps/cli
  2. 开发模式运行

    1
    2
    # 启动开发服务器
    npm run tauri dev
  3. 生产构建

    1
    2
    # 构建桌面应用
    npm run tauri build

Windows 平台构建

环境配置:

  1. 安装 Rust

    1
    2
    3
    4
    # 下载并安装 Rust
    # 访问 https://rustup.rs/ 下载安装程序
    # 或使用 winget
    winget install Rustlang.Rustup
  2. 安装 Microsoft C++ Build Tools

    1
    2
    3
    4
    5
    # 使用 winget 安装
    winget install Microsoft.VisualStudio.2022.BuildTools

    # 或下载 Visual Studio Installer
    # 选择 "C++ build tools" 工作负载
  3. 安装 Windows SDK

    1
    2
    3
    # 通过 Visual Studio Installer 安装
    # 或使用 winget
    winget install Microsoft.WindowsSDK

构建命令:

1
2
3
4
5
6
7
8
9
10
11
# 进入项目目录
cd web

# 安装依赖
npm install

# 构建 Windows 应用
npm run tauri build

# 构建特定目标(可选)
npm run tauri build -- --target x86_64-pc-windows-msvc

输出文件位置:

  • 可执行文件:web/src-tauri/target/release/memory-app.exe
  • 安装包:web/src-tauri/target/release/bundle/msi/Memory-不负时光相册程序_1.0.0_x64_en-US.msi
  • 便携版:web/src-tauri/target/release/bundle/nsis/Memory-不负时光相册程序_1.0.0_x64-setup.exe

macOS 平台构建

1
2
3
4
5
6
7
8
9
10
11
12
# 进入项目目录
cd web

# 安装依赖
npm install

# 构建 macOS 应用
npm run tauri build

# 构建特定架构(可选)
npm run tauri build -- --target aarch64-apple-darwin # Apple Silicon
npm run tauri build -- --target x86_64-apple-darwin # Intel Mac

输出文件位置:

  • 应用包:web/src-tauri/target/release/bundle/macos/Memory-不负时光相册程序.app
  • DMG 安装包:web/src-tauri/target/release/bundle/dmg/Memory-不负时光相册程序_1.0.0_aarch64.dmg

Linux 平台构建

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 安装系统依赖(Ubuntu/Debian)
sudo apt update
sudo apt install -y libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev

# 安装系统依赖(Fedora)
sudo dnf install webkit2gtk3-devel openssl-devel curl wget libappindicator-gtk3-devel librsvg2-devel

# 进入项目目录
cd web

# 安装依赖
npm install

# 构建 Linux 应用
npm run tauri build

输出文件位置:

  • 可执行文件:web/src-tauri/target/release/memory-app
  • AppImage:web/src-tauri/target/release/bundle/appimage/memory-app_1.0.0_amd64.AppImage
  • DEB 包:web/src-tauri/target/release/bundle/deb/memory-app_1.0.0_amd64.deb

跨平台构建

如需在一个平台上构建多个平台的应用,可以使用 GitHub Actions 或其他 CI/CD 服务。

🚀 GitHub Actions 自动构建

本项目已配置 GitHub Actions 工作流,支持自动构建多平台桌面应用:

工作流文件:

  • .github/workflows/build-windows.yml - 专门构建 Windows 平台
  • .github/workflows/build-multiplatform.yml - 构建所有平台(Windows、macOS、Linux)

触发方式:

1
2
3
4
5
6
7
8
# 1. 推送代码自动构建
git push origin main

# 2. 创建标签自动发布
git tag v1.0.0
git push origin v1.0.0

# 3. 手动触发(在 GitHub Actions 页面)

构建产物:

  • Windows: MSI 安装包、NSIS 便携版、可执行文件
  • macOS: DMG 安装包、.app 应用包(Universal Binary)
  • Linux: AppImage、DEB 包、可执行文件

配置要求:

在 GitHub 仓库设置中添加以下 Secrets(可选):

  • TAURI_PRIVATE_KEY: Tauri 应用签名私钥
  • TAURI_KEY_PASSWORD: 私钥密码

使用方法:

  1. Fork 本仓库到你的 GitHub 账户
  2. 推送代码或创建标签
  3. 在 Actions 页面查看构建进度
  4. 从 Artifacts 或 Releases 下载构建产物

详细说明请查看:GitHub Actions 构建指南

手动构建示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# .github/workflows/build.yml 示例
name: Build Desktop App

on:
push:
tags: ['v*']

jobs:
build:
strategy:
matrix:
platform: [macos-latest, ubuntu-20.04, windows-latest]

runs-on: ${{ matrix.platform }}

steps:
- uses: actions/checkout@v4

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 18

- name: Install Rust
uses: dtolnay/rust-toolchain@stable

- name: Install dependencies (Ubuntu)
if: matrix.platform == 'ubuntu-20.04'
run: |
sudo apt update
sudo apt install -y libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev

- name: Install frontend dependencies
run: |
cd web
npm install

- name: Build Tauri app
run: |
cd web
npm run tauri build

构建配置

构建配置文件位于 web/src-tauri/tauri.conf.json,可以自定义:

  • 应用名称和版本
  • 图标和资源
  • 窗口设置
  • 构建目标
  • 安装包类型

故障排除

常见问题:

  1. Rust 编译错误

    1
    2
    3
    4
    5
    6
    # 更新 Rust 工具链
    rustup update

    # 清理构建缓存
    cd web/src-tauri
    cargo clean
  2. Windows 构建失败

    • 确保安装了正确版本的 Visual Studio Build Tools
    • 检查 Windows SDK 是否正确安装
    • 尝试以管理员身份运行命令
  3. 依赖安装失败

    1
    2
    3
    4
    5
    6
    # 清理 npm 缓存
    npm cache clean --force

    # 删除 node_modules 重新安装
    rm -rf node_modules package-lock.json
    npm install

其它

Docker 环境下外部数据库连接配置指南

二次开发时请注意该项目使用v-model:value语法编写

桌面版运行报错

如果你运行后首页显示Network eroor的情况属于后端未运行,在最新版本的软件包内实际有后端文件,如果未自动运行,可手动运行解决报错,或者下载源码后执行后端命令,后端:python3 run.py

仓库根目录中有很多python脚本是我用来测试api的非必要可删除文件

如果云端使用请上传压缩或webp格式图片,避免加载慢

Belin Doc-一键完成高质量文档翻译

2025-08-10 10:00:00

Belin Doc 是一款由 AI 驱动的免费、无限制 文档翻译工具。无需注册,没有限制。

截止发文,该产品属于新产品,未看到上架定价,未登录时可每日使用1000次,但任务有排队

官网:https://belindoc.com

1754733163376

功能

  1. 文档翻译:支持多种格式的文档翻译,包括 PDF、DOCX、PPTX、XLSX、TXT、EPUB、JPG、JPEG、PNG 等。
  2. 格式保持:能够保持原文的格式排版,包括图片、表格、公式等复杂格式。
  3. 多语言支持:支持 60 多种语言的输入和输出。
  4. 多模型选择:用户可以选择 ChatGPT、Claude、Gemini、DeepSeek 等多种顶尖大模型进行翻译。
  5. 翻译加速:用户可以与好友分享,各得 5 次翻译加速与 500 页翻译额度。
  6. 隐私保护:采用零数据保留策略,原文和译文不会存储在服务器上。
  7. 无需注册:无需创建账户或登录,即可直接使用翻译功能。
  8. 翻译扫描件:支持翻译扫描版 PDF,利用 OCR 技术识别图片中的文字。
  9. 邮件通知:用户可以设置邮件通知,以便及时了解翻译进度。

特点

  1. 完全免费:没有任何使用限制,无需支付费用或提供信用卡信息。
  2. 高效翻译:由顶尖的文档格式解析技术和大模型驱动,翻译速度快,质量高。
  3. 隐私优先:重视用户隐私,不存储用户的原文和译文,不收集个人信息。
  4. 用户体验:界面直观易用,操作简单,用户可以轻松上手。
  5. 社区支持:拥有庞大的用户社区,用户可以分享使用经验和反馈。
  6. 持续更新:计划定期更新 AI 模型、格式解析算法、支持的文档格式和用户界面。

优势

  • 零成本:完全免费,无需支付任何费用。
  • 高格式还原度:能够保持原文的格式排版,减少二次处理的工作量。
  • 强大的语言识别能力:支持多种语言的翻译,满足不同用户的需求。
  • 隐私保护:零数据保留策略,保障用户数据安全。
  • 多模型选择:用户可以根据需求选择不同的翻译模型,获得更优质的翻译结果。

适用场景

  • 学术研究:帮助研究人员快速翻译学术文献。
  • 商业文档:翻译商业计划书、产品说明书等。
  • 财务报表:翻译财务报表和相关文件。
  • 跨境电商:翻译产品规格说明书、营销文案等。
  • 医药行业:翻译医药产品说明书、研究报告等。

翻译效果

1754733925647

剪辑神器➕1-AutoClip智能视频切片器

2025-07-26 10:00:00

1753534825187

🎬 AutoClip是基于AI的智能视频切片和合集推荐系统,支持从B站视频自动下载、字幕提取、智能切片和合集生成。

1753530000618

官网:https://zhouxiaoka.github.io/autoclip_intro/

开源:https://github.com/zhouxiaoka/autoclip_mvp

✨ 功能特性

  • 🔥 智能视频切片:基于AI分析视频内容,自动生成高质量切片
  • 📺 B站视频下载:支持B站视频自动下载和字幕提取
  • 🎯 智能合集推荐:AI自动分析切片内容,推荐相关合集
  • 🎨 手动合集编辑:支持拖拽排序、添加/删除切片
  • 📦 一键打包下载:支持所有切片和合集的一键打包下载
  • 🌐 现代化Web界面:React + TypeScript + Ant Design
  • 实时处理状态:实时显示处理进度和日志

1753533001235

环境要求

  • Python 3.8+
  • Node.js 16+
  • 通义千问API密钥(用于AI分析)

安装步骤

克隆项目

1
2
git clone [email protected]:zhouxiaoka/autoclip_mvp.git
cd autoclip_mvp

提示:截止发文时间,项目中遗忘了uploads文件夹,你需要自行创建该文件夹或代码修改,位置如下图,创建:

1
mkdir -p uploads

1753533416765

安装后端依赖

1
2
3
4
5
6
7
# 创建虚拟环境
python3 -m venv venv
source venv/bin/activate # Linux/Mac
# 或 venv\Scripts\activate # Windows

# 安装依赖
pip install -r requirements.txt

安装前端依赖

1
2
3
cd frontend
npm install
cd ..

配置API密钥

1
2
3
4
5
6
7
8
9
10
11
12
# 复制示例配置文件
cp data/settings.example.json data/settings.json

# 编辑配置文件,填入你的API密钥
{
"dashscope_api_key": "你的通义千问API密钥",
"model_name": "qwen-plus",
"chunk_size": 5000,
"min_score_threshold": 0.7,
"max_clips_per_collection": 5,
"default_browser": "chrome"
}

启动服务

方式一:使用启动脚本(推荐)

1
2
chmod +x start_dev.sh
./start_dev.sh

1753529902784

方式二:手动启动

1
2
3
4
5
6
7
# 启动后端服务
source venv/bin/activate
python backend_server.py

# 新开终端,启动前端服务
cd frontend
npm run dev

方式三:命令行工具

1
2
3
4
5
6
7
8
# 处理本地视频文件
python main.py --video input.mp4 --srt input.srt --project-name "我的项目"

# 处理现有项目
python main.py --project-id <project_id>

# 列出所有项目
python main.py --list-projects

访问地址

你也可以在后台配置相关参数

1753529967293

切片处理进程

1753534497605

效果预览

1753534598636

其它

📁 项目结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
autoclip_mvp/
├── backend_server.py # FastAPI后端服务
├── main.py # 命令行入口
├── start_dev.sh # 开发环境启动脚本
├── requirements.txt # Python依赖
├── .gitignore # Git忽略文件
├── README.md # 项目文档

├── frontend/ # React前端
│ ├── src/
│ │ ├── components/ # React组件
│ │ ├── pages/ # 页面组件
│ │ ├── services/ # API服务
│ │ ├── store/ # 状态管理
│ │ └── hooks/ # 自定义Hooks
│ ├── package.json # 前端依赖
│ └── vite.config.ts # Vite配置

├── src/ # 核心业务逻辑
│ ├── main.py # 主处理逻辑
│ ├── config.py # 配置管理
│ ├── api.py # API接口
│ ├── pipeline/ # 处理流水线
│ │ ├── step1_outline.py # 大纲提取
│ │ ├── step2_timeline.py # 时间轴生成
│ │ ├── step3_scoring.py # 评分计算
│ │ ├── step4_title.py # 标题生成
│ │ ├── step5_clustering.py # 聚类分析
│ │ └── step6_video.py # 视频生成
│ ├── utils/ # 工具函数
│ │ ├── llm_client.py # AI客户端
│ │ ├── video_processor.py # 视频处理
│ │ ├── text_processor.py # 文本处理
│ │ ├── project_manager.py # 项目管理
│ │ ├── error_handler.py # 错误处理
│ │ └── bilibili_downloader.py # B站下载
│ └── upload/ # 文件上传
│ └── upload_manager.py

├── data/ # 数据文件
│ ├── projects.json # 项目数据
│ └── settings.json # 配置文件

├── uploads/ # 上传文件存储
│ ├── tmp/ # 临时下载文件
│ └── {project_id}/ # 项目文件
│ ├── input/ # 原始文件
│ └── output/ # 处理结果
│ ├── clips/ # 切片视频
│ └── collections/ # 合集视频

├── prompt/ # AI提示词模板
│ ├── business/ # 商业财经
│ ├── knowledge/ # 知识科普
│ ├── entertainment/ # 娱乐内容
│ └── ...

└── tests/ # 测试文件
├── test_config.py
└── test_error_handler.py

🔧 配置说明

API密钥配置

data/settings.json 中配置你的通义千问API密钥:

1
2
3
4
5
6
7
8
{
"dashscope_api_key": "your-api-key-here",
"model_name": "qwen-plus",
"chunk_size": 5000,
"min_score_threshold": 0.7,
"max_clips_per_collection": 5,
"default_browser": "chrome"
}

浏览器配置

支持Chrome、Firefox、Safari等浏览器用于B站视频下载:

1
2
3
{
"default_browser": "chrome"
}

📖 使用指南

1. 上传本地视频

  1. 访问 http://localhost:3000
  2. 点击”上传视频”按钮
  3. 选择视频文件和字幕文件(必须)
  4. 填写项目名称和分类
  5. 点击”开始处理”

2. 下载B站视频

  1. 在首页点击”B站视频下载”
  2. 输入B站视频链接(必须是有字幕的视频)
  3. 选择浏览器(用于获取登录状态)
  4. 点击”开始下载”

3. 编辑合集

  1. 进入项目详情页面
  2. 点击合集卡片进入编辑模式
  3. 拖拽切片调整顺序
  4. 添加或删除切片
  5. 保存更改

4. 下载项目

  1. 在项目卡片上点击下载按钮
  2. 自动打包所有切片和合集
  3. 下载完整的zip文件

🛠️ 开发指南

后端开发

1
2
3
4
5
# 启动开发服务器(支持热重载)
python backend_server.py

# 运行测试
pytest tests/

前端开发

1
2
3
4
cd frontend
npm run dev # 开发模式
npm run build # 生产构建
npm run lint # 代码检查

添加新的视频分类

  1. prompt/ 目录下创建新的分类文件夹
  2. 添加对应的提示词模板文件
  3. 在前端 src/services/api.ts 中添加分类选项

其它问题

如果你下载仓库文件并运行后发现已多了一个下载的案例,但不能查看,需要及时清除失效的视频避免终端持续报404

1753533785159

CrossPaste-跨设备的粘贴神器,在任意设备间复制粘贴

2025-07-26 10:00:00

此前已介绍过多个粘贴软件了,如PasteBar等,它们各有所长,但有没有适合不同设备之间使用的呢,有的,CrossPaste就很好满足了跨设备同时复制粘贴的问题

特性

  • 🔄 实时共享:设备之间实时共享粘贴板内容,操作自然流畅。
  • 🖥️ 跨平台统一体验:Mac、Windows 和 Linux 版本界面一致,操作习惯无需改变。
  • 📋 丰富的类型支持:轻松处理多种粘贴数据类型,包括文本、颜色、URL、HTML 富文本、图片和文件。
  • 🔒 端到端加密保护:采用非对称加密算法,全方位保障数据安全。
  • 🌐 仅局域网无服务器: 本地存储,无服务器架构。你的数据,唯你所有。隐私保护,由你掌控。
  • 🧹 智能空间管理:提供多样化的自动清理选项,高效管理粘贴板存储空间,无需手动干预。

官网:https://crosspaste.com

开源:https://github.com/CrossPaste/crosspaste-desktop

粘贴板

粘贴板

Description粘贴板界面展示所有记录的粘贴板历史,基于时间降序排列。 用户可以在这个界面对选中的单个粘贴板进行操作。

1. 拷贝

拷贝粘贴板会直接应用到当前系统中,但不会进行设备间的同步(你在其他应用进行的拷贝默认都会在设备间共享)。

2. 收藏

收藏的粘贴板不会被软件自动清理

在搜索历史粘贴板时也可通过收藏来缩小搜索范围,因此你可以将收藏粘贴板当作 snippet 来使用。

3. 类型

显示类型会选择粘贴板中优先级最高的类型图标

  1. 当粘贴类型为 URL 时,会尝试显示对应站点的 favicon.ico
  2. 当粘贴类型为 HTML 时,会尝试显示粘贴集的来源软件
  3. 当粘贴类型为 File 时,会尝试显示文件类型对应的图标

4. 打开或单击粘贴集

使用系统默认软件打开,方便进行进行二次编辑

5. 删除

WARNING

移除粘贴集,同时会释放对于的存储空间,无法从 CrossPaste 内恢复