import re MUTAGEN_AVAILABLE = True try: from mutagen.mp4 import MP4 except ImportError: MUTAGEN_AVAILABLE = False def extract_artist_title(video_title): title = ( video_title.replace("(Karaoke Version)", "").replace("(Karaoke)", "").strip() ) if " - " in title: parts = title.split(" - ", 1) if len(parts) == 2: artist = parts[0].strip() song_title = parts[1].strip() return artist, song_title return "Unknown Artist", title def add_id3_tags(file_path, video_title, channel_name): if not MUTAGEN_AVAILABLE: print("⚠️ mutagen not available - skipping ID3 tagging") return try: artist, title = extract_artist_title(video_title) mp4 = MP4(str(file_path)) mp4["\xa9nam"] = title mp4["\xa9ART"] = artist mp4["\xa9alb"] = f"{channel_name} Karaoke" mp4["\xa9gen"] = "Karaoke" mp4.save() print(f"📝 Added ID3 tags: Artist='{artist}', Title='{title}'") except Exception as e: print(f"⚠️ Could not add ID3 tags: {e}")