From 082af50c2bccc27659a90b19f589802af57f670f Mon Sep 17 00:00:00 2001 From: WardPearce Date: Thu, 19 Feb 2026 08:35:18 +1300 Subject: [PATCH] Improved CC --- .../src/lib/api/youtubejs/subscriptions.ts | 4 +- .../components/player/ClosedCaptions.svelte | 51 ++++++++++--------- .../thumbnail/VideoThumbnail.svelte | 4 +- 3 files changed, 30 insertions(+), 29 deletions(-) diff --git a/materialious/src/lib/api/youtubejs/subscriptions.ts b/materialious/src/lib/api/youtubejs/subscriptions.ts index 97407631..7853634e 100644 --- a/materialious/src/lib/api/youtubejs/subscriptions.ts +++ b/materialious/src/lib/api/youtubejs/subscriptions.ts @@ -80,8 +80,8 @@ export async function parseChannelRSS(channelId: string): Promise { const publishedAt = new Date( entry.getElementsByTagName('published')[0]?.textContent || new Date() ); - const published = publishedAt.getTime(); - const publishedText = relativeTimestamp(published, false); + const published = publishedAt.getTime() / 1000; + const publishedText = relativeTimestamp(published * 1000, false); channelName = entry.getElementsByTagName('author')[0]?.getElementsByTagName('name')[0]?.textContent || 'Unknown Author'; diff --git a/materialious/src/lib/components/player/ClosedCaptions.svelte b/materialious/src/lib/components/player/ClosedCaptions.svelte index 00d2fd8c..37e8c00c 100644 --- a/materialious/src/lib/components/player/ClosedCaptions.svelte +++ b/materialious/src/lib/components/player/ClosedCaptions.svelte @@ -2,7 +2,7 @@ let trackVisible: boolean = $state(false); let captionsCues: VTTCue[] = $state([]); - const captionTracks: Record = {}; + let captionTracks: Record = {}; export function setTextTrackVisibility(visible: boolean) { trackVisible = visible; @@ -25,7 +25,6 @@ {#if trackVisible && captionsCues.length > 0} - {#if currentCaption} -
- {#if currentCaption} -

- - {@html renderVTTCueString(currentCaption, currentTime)} -

- {/if} -
- {/if} +
+ {#each captionsCues as cue (cue)} +

= cue.endTime}> + + {@html renderVTTCueString(cue, currentTime)} +

+ {/each} +
{/if}