Skip to content

witheredAd/notetaker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NoteTaker

中文文档

NoteTaker is an automated video note generation tool. It can automatically extract and convert Bilibili videos into rich, visually illustrated Markdown notes via an LLM processing pipeline.

preview

Core Architecture & Features

NoteTaker adopts a two-step core workflow:

  1. Extract video subtitles and utilize an LLM to analyze and summarize the subtitle content, identifying key visual moments and deducing their corresponding timestamps.
  2. Automatically dispatch FFmpeg using the AI-extracted timestamps to capture video frames, then seamlessly insert these screenshots into the Markdown notes to create an illustrated reading experience.

Supported Features:

  • Automated downloading of remote videos and subtitles (via BBDown).
  • If a video lacks subtitles, it will automatically dispatch a Python audio recognition script to locally generate them.
  • Support for processing multi-part (playlist) videos.

System Dependencies

Before running the program, please ensure the following dependencies are properly installed and correctly configured in your environment:

  • FFmpeg: Used for precise frame extraction based on timestamps.
  • BBDown: Integrated component for downloading Bilibili audio and video.
  • Python: A Python environment containing the funasr speech recognition library. It is highly recommended to use uv for dependency management.

Deployment & Configuration

The project uses environment variables for baseline configuration. Please create a .env file in the root directory and fill in the following parameters:

# AI model service authentication (Supports OpenAI-compatible API gateways)
OPENAI_API_KEY=your_api_key_here
CUSTOM_OPENAI_URL=https://api.openai.com/v1/
CUSTOM_GREAT_MODEL_NAME=gpt-4o

# Third-party executables/environments path configuration
BBDown_PATH=/path/to/BBDown
PYTHON_PATH=/path/to/virtual_envs/bin/python

# Output directory for archived notes
NOTE_OUTPUT_PATH=/path/to/your/Notes/Directory

It is highly recommended to use NoteTaker with Obsidian by setting the NOTE_OUTPUT_PATH to a directory within your Obsidian vault for the best reading experience.

Quick Start

Download Pre-compiled Binary

You can download the pre-compiled binary files from GitHub Releases.

Build from Source

Compile and run the core program using the following command:

cargo run --release

In the interactive command-line interface that appears, input the BV number (BV 号) / video link you wish to process, follow the terminal prompts, and the process will be fully automated.

About

A video note generation tool for Bilibili, taking notes of your video with screenshots!

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors