{"adoption": {"forks": 365, "observed_at": "2026-08-28T04:06:54.778324+00:00", "stars": 2472}, "canonical_url": "https://ross.abutalabs.com/products/audionotes", "card": {"archived": false, "artifact_type": "application", "description": "快速提取音视频内容，整理成一份结构化的markdown笔记", "domain": ["speech-processing", "developer-tools", "self-hosted", "privacy"], "enriched": true, "function": ["speech-recognition", "nlp", "llm-inference", "chatbot", "markdown"], "health_score": 79, "homepage": null, "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["harry0703/AudioNotes"], "name": "harry0703/AudioNotes", "platform": ["self-hosted", "cross-platform", "python"], "pushed_at": "2026-08-19T06:15:03+00:00", "repo": "harry0703/AudioNotes", "stars": 2472, "tags": ["asr", "funasr", "ollama", "whisper", "meeting-notes", "transcription", "local-first", "audio-to-text", "video-to-text", "chainlit", "natural-language-processing", "docker", "web-server"], "topics": ["ai", "asr", "funasr", "ollama", "python", "qwen2", "whisper"], "urls": [], "use_cases": ["transcribe meeting recordings into structured notes", "convert lecture audio to markdown notes", "summarize interview recordings automatically", "chat with the content of an audio or video file", "record voice memos in browser and get transcripts", "transcribe audio offline without sending data to cloud AI"], "what_it_is": "AudioNotes is a locally-run web application that transcribes audio and video files into text and organizes them into structured Markdown notes. It uses FunASR for on-device speech recognition and Ollama-hosted LLMs (e.g., Qwen) for note generation and follow-up Q&A, keeping all data on the user's machine.", "when_to_avoid": ["you need cloud-scale or multi-language enterprise transcription", "your machine lacks 12-16GB RAM for Docker and local models", "you need real-time streaming transcription during live events", "you want a hosted service with no local setup"], "when_to_choose": ["you need privacy-first, fully local transcription and note-taking", "you work with Chinese-language audio and want high recognition quality", "you want to ask follow-up questions about meeting or lecture content", "you prefer self-hosted tools with Docker deployment"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/audionotes", "repo": "harry0703/AudioNotes", "role": "main", "score": 67}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.778324+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:28:32.525602+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e02c083e66ea366e525ba7dfed56388e130606c7f57bef2927ed8139f375bcc", "fetched_at": "2026-08-28T04:06:54.778324+00:00", "kind": "readme", "missing": false, "url": "https://github.com/harry0703/AudioNotes"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 55, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 775, "days_push": 14, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 67, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}