From 6c43c33fab6b37f47ea9c0e47f415860b6a95f4e Mon Sep 17 00:00:00 2001 From: Stu Leak Date: Tue, 6 Jan 2026 02:15:45 -0500 Subject: [PATCH] Update codec palette and add new VT logos --- assets/logo/VT_Logo.png | Bin 0 -> 27614 bytes assets/logo/VT_Logo_Outline.png | Bin 0 -> 21687 bytes assets/logo/VT_Logo_Outline.svg | 160 ++++++++++++++++++++++++++++++++ internal/ui/colors.go | 44 ++++----- 4 files changed, 182 insertions(+), 22 deletions(-) create mode 100644 assets/logo/VT_Logo.png create mode 100644 assets/logo/VT_Logo_Outline.png create mode 100644 assets/logo/VT_Logo_Outline.svg diff --git a/assets/logo/VT_Logo.png b/assets/logo/VT_Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..82161188beb46f7b4e7f4febf9677fc44214f85b GIT binary patch literal 27614 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 literal 0 HcmV?d00001 diff --git a/assets/logo/VT_Logo_Outline.png b/assets/logo/VT_Logo_Outline.png new file mode 100644 index 0000000000000000000000000000000000000000..328aa2f296a20d82b7dec0553fee356a4e7f13e5 GIT binary patch literal 21687 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 E0{JzztpET3 literal 0 HcmV?d00001 diff --git a/assets/logo/VT_Logo_Outline.svg b/assets/logo/VT_Logo_Outline.svg new file mode 100644 index 0000000..7c8e984 --- /dev/null +++ b/assets/logo/VT_Logo_Outline.svg @@ -0,0 +1,160 @@ + + + + diff --git a/internal/ui/colors.go b/internal/ui/colors.go index eabfda9..d34268f 100644 --- a/internal/ui/colors.go +++ b/internal/ui/colors.go @@ -12,43 +12,43 @@ import ( // Container / Format Colors (File Wrapper) var ( - ColorMKV = utils.MustHex("#00B3B3") // Teal / Cyan - Neutral, modern, flexible container - ColorRemux = utils.MustHex("#06B6D4") // Cyan-Glow - Lossless remux (no re-encoding) - ColorMP4 = utils.MustHex("#3B82F6") // Blue - Widely recognised, consumer-friendly - ColorMOV = utils.MustHex("#6366F1") // Indigo - Pro / Apple / QuickTime lineage - ColorAVI = utils.MustHex("#64748B") // Grey-Blue - Legacy container - ColorWEBM = utils.MustHex("#22C55E") // Green-Teal - Web-native + ColorMKV = utils.MustHex("#0EA5E9") // Blue-Sky - Flexible container + ColorRemux = utils.MustHex("#9CA3AF") // Neutral Grey - Lossless remux + ColorMP4 = utils.MustHex("#2563EB") // Deep Blue - Consumer-friendly + ColorMOV = utils.MustHex("#7C3AED") // Violet - Pro / Apple lineage + ColorAVI = utils.MustHex("#6B7280") // Grey - Legacy container + ColorWEBM = utils.MustHex("#10B981") // Emerald - Web-native ColorTS = utils.MustHex("#F59E0B") // Amber - Broadcast / transport streams - ColorM2TS = utils.MustHex("#F59E0B") // Amber - Broadcast / transport streams + ColorM2TS = utils.MustHex("#F97316") // Orange - Broadcast / transport streams ) // Video Codec Colors (Compression Method) // Modern / Efficient Codecs var ( - ColorAV1 = utils.MustHex("#10B981") // Emerald - Modern, efficient - ColorHEVC = utils.MustHex("#84CC16") // Lime-Green - Modern, efficient - ColorH265 = utils.MustHex("#84CC16") // Lime-Green - Same as HEVC - ColorVP9 = utils.MustHex("#22D3EE") // Green-Cyan - Modern, efficient + ColorAV1 = utils.MustHex("#22C55E") // Green - Modern, efficient + ColorHEVC = utils.MustHex("#A855F7") // Purple - Modern, efficient + ColorH265 = utils.MustHex("#A855F7") // Purple - Same as HEVC + ColorVP9 = utils.MustHex("#14B8A6") // Teal - Modern, efficient ) // Established / Legacy Video Codecs var ( - ColorH264 = utils.MustHex("#38BDF8") // Sky Blue - Compatibility - ColorAVC = utils.MustHex("#38BDF8") // Sky Blue - Same as H.264 + ColorH264 = utils.MustHex("#3B82F6") // Blue - Compatibility + ColorAVC = utils.MustHex("#3B82F6") // Blue - Same as H.264 ColorMPEG2 = utils.MustHex("#EAB308") // Yellow-Amber - Legacy / broadcast - ColorDivX = utils.MustHex("#FB923C") // Muted Orange - Legacy - ColorXviD = utils.MustHex("#FB923C") // Muted Orange - Legacy - ColorMPEG4 = utils.MustHex("#FB923C") // Muted Orange - Legacy + ColorDivX = utils.MustHex("#F97316") // Orange - Legacy + ColorXviD = utils.MustHex("#F97316") // Orange - Legacy + ColorMPEG4 = utils.MustHex("#F97316") // Orange - Legacy ) // Audio Codec Colors (Secondary but Distinct) var ( - ColorOpus = utils.MustHex("#8B5CF6") // Violet - Modern audio - ColorAAC = utils.MustHex("#06B6D4") // Cyan - Common audio (distinct from purple codecs) - ColorFLAC = utils.MustHex("#EC4899") // Magenta - Lossless audio - ColorMP3 = utils.MustHex("#F43F5E") // Rose - Legacy audio - ColorAC3 = utils.MustHex("#F97316") // Orange-Red - Surround audio - ColorVorbis = utils.MustHex("#A855F7") // Purple - Open codec + ColorOpus = utils.MustHex("#EC4899") // Magenta - Modern audio + ColorAAC = utils.MustHex("#F59E0B") // Amber - Common audio + ColorFLAC = utils.MustHex("#8B5CF6") // Violet - Lossless audio + ColorMP3 = utils.MustHex("#EF4444") // Red - Legacy audio + ColorAC3 = utils.MustHex("#22C55E") // Green - Surround audio + ColorVorbis = utils.MustHex("#06B6D4") // Cyan - Open codec ) // Pixel Format / Colour Data (Technical Metadata)