Welcome to EasyAISubbing, a tool designed to simplify creating subtitles for your media using AI.
Prerequisites: Installing FFmpeg and yt-dlp
EasyAISubbing requires FFmpeg for audio/video processing and yt-dlp for downloading online media. These must be installed and accessible via your system's PATH.
FFmpeg is essential for tasks like extracting audio or muxing subtitles into videos.
-
Download: Get the latest version for your OS: https://ffmpeg.org/download.html
-
Installation & Adding to PATH:
- Windows: Download the zip, extract it (e.g., C:\ffmpeg). Add the bin folder (e.g., C:\ffmpeg\bin) to your system's Environment Variables (specifically, the PATH variable). Search online for "how to add to path windows" if needed.
- macOS (using Homebrew): Open Terminal and run brew install ffmpeg.
- Linux (using package manager): Open Terminal. For Debian/Ubuntu: sudo apt update && sudo apt install ffmpeg. For Fedora: sudo dnf install ffmpeg.
Verify: Open your terminal/command prompt and run ffmpeg -version.
yt-dlp lets you download videos from YouTube and many other sites directly into the app.
-
Download: Get the executable for your OS from the releases page: https://github.com/yt-dlp/yt-dlp
-
Installation & Adding to PATH:
- Windows: Download yt-dlp.exe. Place it in a directory already in your PATH (e.g., C:\Windows\System32 - use caution, or create a dedicated tools folder and add that to PATH).
- macOS/Linux: Download the binary (yt-dlp). Make it executable (chmod +x yt-dlp). Place it in a directory in your PATH (e.g., /usr/local/bin). Alternatively: pip install yt-dlp. Troubleshooting Tip: If EasyAISubbing reports FFmpeg or yt-dlp missing, double-check your PATH settings and restart the application.
The application is organized into several tabs for different parts of the subtitling workflow:
Use this tab to get subtitles from media files using Gemini.
- Input: Load a local file ("Browse..."), a direct URL ("Load URL"), or an online video URL ("Download (yt-dlp)"). Drag and drop also works.
- Gemini Settings: Choose a Gemini model and set the Temperature (controls output randomness).
- Targeting: Select the output language ("Target Lang") and optionally set a "Translation Style" and "Context Keywords" (terms in the target language).
- Start: Click "1. Start Gemini Process". The app extracts audio, sends it to Gemini, and shows the result in the editor.
- Review & Edit: Manually correct subtitles in the editor if needed.
- Analyze Timestamps: Click "2. Analyze Timestamps" to check formatting and timing errors.
- Request Gemini Fix: Use "3. Request Gemini Fix" to send the current text back to Gemini with a custom prompt for corrections.
- Refine Timing: Click "Refine Timing (Gaps/Overlaps)" for automatic gap/overlap adjustments.
- Save SRT: Click "Save Subtitles as SRT". After saving, you'll be asked if you want to send the video and SRT to the "Mux/Encode Video" tab.
Use this tab to translate existing subtitle files (like SRT or ASS).
- Load Subtitle File: Use the browse button or drag-and-drop to load an existing subtitle file.
- Gemini Settings: (Likely uses the same global API key and potentially models/temperature as the Video/Audio tab).
- Source/Target Language: Specify the original language of the subtitle file and the desired target language for translation.
- Translate: Click a button to initiate the translation process.
- Review & Edit: Review and make manual corrections to the translated subtitles.
- Save Subtitles: Save the translated subtitles, likely in SRT or the original format.
Use this tab to combine a video file with a subtitle file.
- Input Video/Subtitle: Load the video and subtitle files. The app might pre-fill these if you sent them from the "Translate Video/Audio" tab.
- Mode: Choose "Mux Subtitles" (add as a selectable track) or "Hardcode Subtitles" (burn into video).
- Settings: Configure output format, quality, and subtitle appearance (font, size, color, etc. for hardcoding).
- Output File: Specify where to save the final video.
- Start: Click the button to begin processing with FFmpeg.
- Monitor: Check the log area for progress and status.
Check the log area in each tab for process details and error messages. Refer to the main application log file (app_logs/easyaisubbing.log) for a complete history.
Enjoy using EasyAISubbing!