{"id":21336791,"url":"https://github.com/sidedwards/ai-video-summarizer","last_synced_at":"2025-07-12T12:32:47.234Z","repository":{"id":256077358,"uuid":"854264443","full_name":"sidedwards/ai-video-summarizer","owner":"sidedwards","description":"An AI-powered tool for transcribing, summarizing, and creating smart clips from video and audio content.","archived":false,"fork":false,"pushed_at":"2024-09-11T03:57:42.000Z","size":21,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-09-12T07:56:32.190Z","etag":null,"topics":["artificial-intelligence","content-summarizer","extractive-summarization","generative-ai","large-language-models","meeting-summarization","transcription","video-clipper","video-summarization"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sidedwards.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-09-08T20:01:19.000Z","updated_at":"2024-09-11T03:57:46.000Z","dependencies_parsed_at":"2024-09-11T06:45:50.686Z","dependency_job_id":null,"html_url":"https://github.com/sidedwards/ai-video-summarizer","commit_stats":null,"previous_names":["sidedwards/ai-meeting-transcriber","sidedwards/ai-video-summarizer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sidedwards%2Fai-video-summarizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sidedwards%2Fai-video-summarizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sidedwards%2Fai-video-summarizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sidedwards%2Fai-video-summarizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sidedwards","download_url":"https://codeload.github.com/sidedwards/ai-video-summarizer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225820223,"owners_count":17529139,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["artificial-intelligence","content-summarizer","extractive-summarization","generative-ai","large-language-models","meeting-summarization","transcription","video-clipper","video-summarization"],"created_at":"2024-11-21T23:54:59.561Z","updated_at":"2024-11-21T23:55:00.023Z","avatar_url":"https://github.com/sidedwards.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# AI Video Summarizer\n\nTranscribe, summarize, and create smart clips from video and audio content.\n\n## Features\n\n- **Transcription**: Transcribe audio using WhisperX\n- **Smart Summarization**: Generate concise summaries of video content, tailored to different purposes:\n  - Meeting Minutes\n  - Podcast Summaries\n  - Lecture Notes\n  - Interview Highlights\n  - General Content Summaries\n- **Intelligent Clip Creation**: Automatically create clips of key moments and topics discussed in the video.\n- **Multi-format Support**: Process various video and audio file formats.\n- **Cloud Integration**: Utilizes AWS S3 for efficient file handling and processing.\n\n## Prerequisites\n\n- Python 3.8+\n- AWS CLI configured with appropriate permissions\n- FFmpeg installed on your system\n- Node.js and npm (for running the frontend GUI)\n\n## Installation\n\n1. Clone the repository:\n   ```\n   git clone https://github.com/sidedwards/ai-video-summarizer.git\n   cd ai-video-summarizer\n   ```\n\n2. Set up the backend:\n   - Create and activate a virtual environment:\n     ```\n     python -m venv .venv\n     source .venv/bin/activate  # On Windows, use `.venv\\Scripts\\activate`\n     ```\n   - Install the required dependencies:\n     ```\n     pip install -r requirements.txt\n     ```\n   - Set up your configuration:\n     - Copy `config/config-example.yaml` to `config/config.yaml`\n     - Edit `config/config.yaml` with your API keys and preferences\n\n3. Set up the frontend (optional, for GUI usage):\n   - Navigate to the frontend directory:\n     ```\n     cd frontend\n     ```\n   - Install the required dependencies:\n     ```\n     npm install\n     ```\n\n## Usage\n\n### CLI\n\n1. Run the CLI script:\n   ```\n   python backend/cli.py\n   ```\n2. Follow the prompts to select a video file and choose the type of summary you want to generate.\n3. The generated summary files will be saved in a directory named after the input video file.\n\n### GUI\n\n1. Start the backend server:\n   - Run the backend server:\n     ```\n     python backend/server.py\n     ```\n2. Start the frontend development server:\n   - In a new terminal window, navigate to the frontend directory:\n     ```\n     cd frontend\n     ```\n   - Run the frontend development server:\n     ```\n     npm run dev\n     ```\n3. Open your web browser and navigate to `http://localhost:5173` to access the AI Video Summarizer GUI.\n4. Use the web interface to upload a video file, select the desired summary type, and start the processing.\n5. Once the processing is complete, you can download the generated summary files as a zip archive.\n\n## Configuration\n\nEdit `config/config.yaml` to set:\n\n- AWS CLI path and S3 bucket name\n- Replicate API key and model version\n- Anthropic API key and model choice\n- Other customizable parameters\n\n## Roadmap\n\n- [x] Web-based GUI\n- [x] Basic CLI\n- [ ] More LLM options\n- [ ] Export options for various document formats (PDF, DOCX, etc.)\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\n[MIT License](LICENSE)\n\n## Acknowledgements\n\n### WhisperX\n\nThis project uses WhisperX, an advanced version of OpenAI's Whisper model, for transcription. WhisperX offers:\n\n- Accelerated transcription\n- Advanced speaker diarization\n- Improved accuracy in speaker segmentation\n\nThe WhisperX model is run via the Replicate API, based on https://github.com/sidedwards/whisperx.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsidedwards%2Fai-video-summarizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsidedwards%2Fai-video-summarizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsidedwards%2Fai-video-summarizer/lists"}