https://github.com/bdr-pro/film-fluency-cli
Extract important, complex dialogue clips from any movie using its subtitle file. Designed for non-tech users with a smooth command-line experience using tqdm and rich.
https://github.com/bdr-pro/film-fluency-cli
Last synced: about 1 year ago
JSON representation
Extract important, complex dialogue clips from any movie using its subtitle file. Designed for non-tech users with a smooth command-line experience using tqdm and rich.
- Host: GitHub
- URL: https://github.com/bdr-pro/film-fluency-cli
- Owner: BDR-Pro
- License: mit
- Created: 2025-05-26T09:10:11.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-26T09:12:56.000Z (about 1 year ago)
- Last Synced: 2025-05-26T10:33:08.203Z (about 1 year ago)
- Language: Python
- Size: 7.81 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## ๐ฌ FilmFluency CLI
Extract **important, complex dialogue clips** from any movie using its subtitle file. Designed for non-tech users with a smooth command-line experience using `tqdm` and `rich`.
---
### โ
Features
* Parses `.srt` subtitle files.
* Analyzes sentence complexity with **Flesch Reading Ease**.
* Extracts meaningful dialogue clips using `ffmpeg`.
* Optionally generates screenshots and audio files.
* CLI progress and colorful output.
* Clean, minimal setup. No Django required.
---
### ๐ Quick Start
#### 1. Clone this repo
```bash
git clone https://github.com/BDR-Pro/Film-Fluency-Cli.git
cd Film-Fluency-Cli
```
#### 2. Install dependencies
Make sure Python 3.8+ is installed. Then run:
```bash
pip install -r requirements.txt
```
#### 3. Install FFmpeg
This tool depends on the system-level `ffmpeg` binary.
* [Download FFmpeg](https://ffmpeg.org/download.html)
* On macOS: `brew install ffmpeg`
* On Ubuntu: `sudo apt install ffmpeg`
---
### ๐ ๏ธ Usage
```bash
python filmfluency_cli.py --movie path/to/movie.mp4 --srt path/to/subtitles.srt
```
#### Optional flags
* `--screenshot`: Save a screenshot for each clip.
* `--s3 URL`: Enable S3 upload (requires `--id`).
* `--id`: ID of the movie (used with S3 upload).
---
### ๐ Output
Clips, screenshots (if selected), and audio files will be saved in:
```
./clips_/
```
A CSV file with all selected dialogues will be saved as:
```
subtitles_important.csv
```
---
### ๐ก Example
```bash
python filmfluency_cli.py \
--movie "The Matrix.mp4" \
--srt "The Matrix.srt" \
--screenshot
```
---
### ๐งช Testing
Want to test this tool? Provide any `.mp4` and `.srt` pair, then check the generated folder and CSV file.
---
Let me know if you want to add **unit testing instructions**, a **sample input set**, or **S3 upload integration** next.