Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>

This commit is contained in:
Matt Bruce 2025-08-11 09:01:31 -05:00
parent e34c43a8f4
commit 1b6ac6454b
3 changed files with 7 additions and 8 deletions

1
PRD.md
View File

@ -159,7 +159,6 @@ KaroakeVideoDownloader/
│ ├── songlist_tracking.json │ ├── songlist_tracking.json
│ ├── channel_cache.json │ ├── channel_cache.json
│ ├── channels.json # Channel configuration with parsing rules │ ├── channels.json # Channel configuration with parsing rules
│ ├── channels.txt # Legacy channel list (backward compatibility)
│ ├── manual_videos.json # Manual video collection │ ├── manual_videos.json # Manual video collection
│ └── songList.json │ └── songList.json
├── utilities/ # Utility scripts and tools ├── utilities/ # Utility scripts and tools

View File

@ -416,7 +416,7 @@ KaroakeVideoDownloader/
│ ├── karaoke_tracking.json │ ├── karaoke_tracking.json
│ ├── songlist_tracking.json │ ├── songlist_tracking.json
│ ├── channel_cache.json │ ├── channel_cache.json
│ ├── channels.txt │ ├── channels.json # Channel configuration with parsing rules
│ └── songList.json │ └── songList.json
├── utilities/ # Utility scripts and tools ├── utilities/ # Utility scripts and tools
│ ├── add_manual_video.py # Manual video management │ ├── add_manual_video.py # Manual video management

View File

@ -8,7 +8,7 @@
python download_karaoke.py https://www.youtube.com/@SingKingKaraoke/videos python download_karaoke.py https://www.youtube.com/@SingKingKaraoke/videos
# Download from a file containing multiple channel URLs # Download from a file containing multiple channel URLs
python download_karaoke.py --file data/channels.txt python download_karaoke.py --file data/channels.json
# Download with custom resolution (480p, 720p, 1080p, 1440p, 2160p) # Download with custom resolution (480p, 720p, 1080p, 1440p, 2160p)
python download_karaoke.py --resolution 1080p https://www.youtube.com/@SingKingKaraoke/videos python download_karaoke.py --resolution 1080p https://www.youtube.com/@SingKingKaraoke/videos
@ -81,7 +81,7 @@ python download_karaoke.py --generate-songlist /path/to/dir1 /path/to/dir2 --no-
## 🎵 SONGLIST OPERATIONS ## 🎵 SONGLIST OPERATIONS
# Download only songs from your songlist (uses data/channels.txt by default) # Download only songs from your songlist (uses data/channels.json by default)
python download_karaoke.py --songlist-only python download_karaoke.py --songlist-only
# Download only songlist songs with limit # Download only songlist songs with limit
@ -195,7 +195,7 @@ python download_karaoke.py --parallel --workers 3 --latest-per-channel --limit 5
python download_karaoke.py --parallel --workers 3 --latest-per-channel --limit 5 --fuzzy-match --fuzzy-threshold 85 python download_karaoke.py --parallel --workers 3 --latest-per-channel --limit 5 --fuzzy-match --fuzzy-threshold 85
# Download latest videos from specific channels file # Download latest videos from specific channels file
python download_karaoke.py --latest-per-channel --limit 5 --file data/channels.txt python download_karaoke.py --latest-per-channel --limit 5 --file data/channels.json
## 🔄 CACHE & TRACKING MANAGEMENT ## 🔄 CACHE & TRACKING MANAGEMENT
@ -254,7 +254,7 @@ python download_karaoke.py --version
python download_karaoke.py --songlist-only --limit 20 --fuzzy-match --fuzzy-threshold 85 --resolution 1080p python download_karaoke.py --songlist-only --limit 20 --fuzzy-match --fuzzy-threshold 85 --resolution 1080p
# Latest videos per channel with fuzzy matching # Latest videos per channel with fuzzy matching
python download_karaoke.py --latest-per-channel --limit 3 --fuzzy-match --fuzzy-threshold 90 --file data/channels.txt python download_karaoke.py --latest-per-channel --limit 3 --fuzzy-match --fuzzy-threshold 90 --file data/channels.json
# Force refresh everything and download songlist # Force refresh everything and download songlist
python download_karaoke.py --songlist-only --force-download-plan --refresh --limit 10 python download_karaoke.py --songlist-only --force-download-plan --refresh --limit 10
@ -347,7 +347,7 @@ python download_karaoke.py --clear-server-duplicates
# Default files used: # Default files used:
# - data/channels.json (channel configuration with parsing rules, preferred) # - data/channels.json (channel configuration with parsing rules, preferred)
# - data/channels.txt (legacy channel list, backward compatibility) # - data/channels.json (channel configuration with parsing rules)
# - data/manual_videos.json (manual video collection) # - data/manual_videos.json (manual video collection)
# - data/songList.json (your prioritized song list) # - data/songList.json (your prioritized song list)
# - data/config.json (download settings) # - data/config.json (download settings)
@ -357,7 +357,7 @@ python download_karaoke.py --clear-server-duplicates
# Fuzzy threshold: 0-100 (higher = more strict matching, default 90) # Fuzzy threshold: 0-100 (higher = more strict matching, default 90)
# The system automatically: # The system automatically:
# - Uses data/channels.json if available, falls back to data/channels.txt if no --file specified in songlist modes # - Uses data/channels.json for channel configuration and parsing rules
# - Caches channel data for 24 hours (configurable) # - Caches channel data for 24 hours (configurable)
# - Tracks all downloads in JSON files # - Tracks all downloads in JSON files
# - Avoids re-downloading existing files # - Avoids re-downloading existing files