3.4 KiB
3.4 KiB
Interactive Audio Stream Selection
Overview
The conversion tool now supports interactive audio stream selection, allowing you to manually choose which audio tracks to keep during encoding rather than relying on automatic filtering.
Usage
Enable Interactive Mode
Use both --filter-audio and --interactive flags together:
python main.py "C:\path\to\videos" --filter-audio --interactive
What Happens
When encoding each file with multiple audio streams:
-
Audio Stream Display
- The tool displays all available audio streams with details:
🎵 AUDIO STREAM SELECTION ================================================================================ Stream #0: 2ch | Lang: eng | Bitrate: 128kbps Stream #1: 6ch | Lang: eng | Bitrate: 448kbps Stream #2: 2ch | Lang: spa | Bitrate: 128kbps Stream #3: 2ch | Lang: comment | Bitrate: 64kbps -
User Prompt
- You're asked to select which streams to keep:
──────────────────────────────────────────────────────────────────────────── Enter stream numbers to keep (comma-separated, e.g.: 1,2 or just 2) Leave blank to keep all streams ──────────────────────────────────────────────────────────────────────────── ➜ Keep streams: 1,3 -
**Encoding **
- Only selected streams are included in the encoded output
- Other streams are removed
- Selection is logged for reference
Input Format
- Multiple streams:
0,1,3or0, 1, 3(spaces optional) - Single stream:
1or2 - Keep all: Press Enter without typing anything
Example Scenarios
Scenario 1: Keep Main Audio Only
Streams:
Stream #0: 2ch (English, 128kbps)
Stream #1: 6ch (English Surround, 448kbps) ← Best quality
Stream #2: 2ch (Spanish, 128kbps)
Input: 1
Result: Only Stream #1 (6ch English Surround) is encoded
Scenario 2: Keep Multiple Languages
Streams:
Stream #0: 2ch (English, 128kbps)
Stream #1: 6ch (English Surround, 448kbps)
Stream #2: 2ch (Spanish, 128kbps)
Stream #3: 2ch (Commentary, 64kbps)
Input: 1,2,3
Result: Streams #1, #2, and #3 are encoded (English Surround, Spanish, Commentary)
Comparison with Automatic Filtering
Automatic Mode (--filter-audio only)
- Keeps: Best English audio + all Commentary tracks
- No user interaction
- Faster batch processing
Interactive Mode (--filter-audio --interactive)
- Shows all streams and asks user to choose
- Per-file control
- Better for selective archiving/organization
- Useful when automatic filtering doesn't match your preferences
Logging
All user selections are logged to the conversion log for reference:
User selected 2 audio stream(s): [1, 3]
Removed 1 audio stream(s): [2]
Notes
- Interactive mode requires
--filter-audioto be enabled - If you use
--interactivewithout--filter-audio, filtering is automatically enabled - Invalid input (non-existent stream numbers) falls back to keeping all streams
- Empty input keeps all audio streams unchanged
- The prompt appears for each file being encoded, allowing different selections per file