{"id":44855975,"url":"https://github.com/runner365/gollmagent","last_synced_at":"2026-02-17T07:57:28.651Z","repository":{"id":315683740,"uuid":"1060483640","full_name":"runner365/gollmagent","owner":"runner365","description":"This is an AI Agent based on FFmpeg. You just need to say a sentence, and it will help you process media files.","archived":false,"fork":false,"pushed_at":"2025-10-17T12:50:49.000Z","size":167,"stargazers_count":59,"open_issues_count":2,"forks_count":18,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-10-18T15:54:35.649Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/runner365.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-20T02:13:07.000Z","updated_at":"2025-10-17T12:50:52.000Z","dependencies_parsed_at":"2025-09-20T15:31:11.798Z","dependency_job_id":null,"html_url":"https://github.com/runner365/gollmagent","commit_stats":null,"previous_names":["runner365/gollmagent"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/runner365/gollmagent","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgollmagent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgollmagent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgollmagent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgollmagent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/runner365","download_url":"https://codeload.github.com/runner365/gollmagent/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgollmagent/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29537062,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T05:00:25.817Z","status":"ssl_error","status_checked_at":"2026-02-17T04:57:16.126Z","response_time":100,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-02-17T07:57:28.039Z","updated_at":"2026-02-17T07:57:28.646Z","avatar_url":"https://github.com/runner365.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GollmAgent - FFmpeg AI Agent\n\n[中文](#中文) | [English](README_en.md)\n\n## 中文\n\n### 概述\nGollmAgent 是一个基于 FFmpeg 构建的智能 AI 代理，通过自然语言命令简化媒体文件处理。只需描述您想对媒体文件进行的操作，代理就会为您处理复杂的 FFmpeg 操作。\n\n### 功能特性\n\n#### 核心媒体处理工具\n- **📹 视频转码**: 将媒体文件转换为 MP4 格式，并显示进度\n- **🎵 音频提取**: 从媒体文件中提取音频并转换为 M4A 格式\n- **🔗 媒体合并**: 将多个媒体文件合并为单个 MP4 文件（视频+音频）\n- **🎶 音频合并**: 将多个媒体文件的音频轨道合并为单个 M4A 文件\n\n#### 视频增强工具\n- **🖼️ 图片水印**: 为视频添加图片水印，支持自定义位置\n- **📝 文字水印**: 为视频添加文字水印，支持颜色和位置选项\n- **📋 字幕集成**: 将 SRT 字幕文件添加到视频中\n\n#### 视频分析工具\n- **📸 帧提取**: 基于视频 I 帧生成图片\n- **⏰ 时刻截图**: 在指定时间戳捕获视频帧\n- **ℹ️ 系统信息**: 获取当前 FFmpeg 版本和功能\n\n### 快速开始\n\n#### 环境要求\n- Go 1.19 或更高版本\n- 已安装 FFmpeg 并可在 PATH 中访问\n- （可选）编译时包含 `--enable-gpl` 和 `--enable-freetype` 的 FFmpeg（用于文字水印功能）\n\n#### 安装\n```bash\ngit clone https://github.com/runner365/gollmagent.git\ncd gollmagent\ngo mod download\ngo build -o gollmagent .\n```\n\n#### 使用方法\n```bash\n./gollmagent\n```\n\n代理支持自然语言命令，例如：\n- \"将我的 video.avi 转换为 MP4 格式\"\n- \"从 movie.mp4 中提取音频为 M4A\"\n- \"给我的视频添加水印图片\"\n- \"在 00:02:30 处截取一张图片\"\n- \"将这些视频文件合并在一起\"\n\n### API 参考\n\n#### 可用工具\n\n| 工具名称 | 功能描述 | 参数 |\n|---------|---------|------|\n| `get_ffmpeg_version` | 获取当前 FFmpeg 版本 | 无 |\n| `get_m4a_from_media_file` | 提取音频为 M4A 格式 | `input_file` |\n| `transcode_with_progress` | 转换为 MP4 并显示进度 | `input_file`, `video_resolution` |\n| `concat_media_files` | 合并媒体文件（视频+音频） | `input_files[]` |\n| `concat_media_audio_files` | 仅合并音频轨道 | `input_files[]` |\n| `image_watermark_to_video` | 添加图片水印 | `input_file`, `watermark_file`, `position` |\n| `text_watermark_to_video` | 添加文字水印 | `input_file`, `watermark_text`, `position`, `color` |\n| `srt_to_video` | 添加字幕 | `input_file`, `srt_file` |\n| `gen_pictures_from_video` | 提取 I 帧图片 | `input_file` |\n| `screenshot_at_moment` | 指定时刻截图 | `input_file`, `moment` |\n\n#### 支持的视频分辨率\n- 480p, 720p, 1080p, 1440p, 2160p (4K)\n\n#### 水印位置\n- `top-left`（左上）, `top-right`（右上）, `bottom-left`（左下）, `bottom-right`（右下）\n\n#### 文字颜色\n- 标准颜色：`white`（白色）, `black`（黑色）, `red`（红色）, `green`（绿色）, `blue`（蓝色）, `yellow`（黄色）, `cyan`（青色）, `magenta`（洋红色）\n\n### 使用示例\n\n```bash\n# 将视频转换为 720p MP4\n\"将 video.avi 转换为 720p MP4 格式\"\n\n# 添加水印\n\"将 logo.png 作为水印添加到 video.mp4 的右上角\"\n\n# 提取音频\n\"从 movie.mkv 中提取音频为 M4A 文件\"\n\n# 截取图片\n\"在 00:01:30 时刻截取 video.mp4 的图片\"\n```\n\n### 架构\n\n项目包含几个关键组件：\n- **LLM 代理**: 处理自然语言处理和工具编排\n- **FFmpeg 命令**: 核心媒体处理功能\n- **进度管理**: 实时操作跟踪\n- **WebSocket 支持**: 实时通信\n- **日志系统**: 全面的操作日志记录\n\n\n### 许可证\n\n本项目基于 MIT 许可证 - 详情请参阅 [LICENSE](LICENSE) 文件。","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frunner365%2Fgollmagent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frunner365%2Fgollmagent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frunner365%2Fgollmagent/lists"}