diff --git a/src/components/media/VideoPlayer.tsx b/src/components/media/VideoPlayer.tsx
index 351d6202..947b782a 100644
--- a/src/components/media/VideoPlayer.tsx
+++ b/src/components/media/VideoPlayer.tsx
@@ -1,11 +1,12 @@
import { IconPatch } from "components/buttons/IconPatch";
import { Icons } from "components/Icon";
import { Loading } from "components/layout/Loading";
-import { MWMediaStream } from "providers";
+import { MWMediaCaption, MWMediaStream } from "providers";
import { ReactElement, useEffect, useRef, useState } from "react";
export interface VideoPlayerProps {
source: MWMediaStream;
+ captions: MWMediaCaption[];
startAt?: number;
onProgress?: (event: ProgressEvent) => void;
}
@@ -74,6 +75,9 @@ export function VideoPlayer(props: VideoPlayerProps) {
{!mustUseHls ? (
) : null}
+ {props.captions.map((v) => (
+
+ ))}
>
);
diff --git a/src/providers/list/theflix/index.ts b/src/providers/list/theflix/index.ts
index fadfd53b..16f434c9 100644
--- a/src/providers/list/theflix/index.ts
+++ b/src/providers/list/theflix/index.ts
@@ -69,7 +69,8 @@ export const theFlixScraper: MWMediaProvider = {
}
const data = JSON.parse(prop.textContent);
- return { url: data.props.pageProps.videoUrl, type: "mp4" };
+
+ return { url: data.props.pageProps.videoUrl, type: "mp4", captions: [] };
},
async getSeasonDataFromMedia(
diff --git a/src/providers/types.ts b/src/providers/types.ts
index 1bd47a48..4f3795e0 100644
--- a/src/providers/types.ts
+++ b/src/providers/types.ts
@@ -13,9 +13,15 @@ export interface MWPortableMedia {
}
export type MWMediaStreamType = "m3u8" | "mp4";
+export interface MWMediaCaption {
+ id: string;
+ url: string;
+ label: string;
+}
export interface MWMediaStream {
url: string;
type: MWMediaStreamType;
+ captions: MWMediaCaption[];
}
export interface MWMediaMeta extends MWPortableMedia {
diff --git a/src/views/MediaView.tsx b/src/views/MediaView.tsx
index cfceedf3..7b2020d1 100644
--- a/src/views/MediaView.tsx
+++ b/src/views/MediaView.tsx
@@ -52,6 +52,7 @@ function StyledMediaView(props: StyledMediaViewProps) {
return (
updateProgress(e)}
startAt={startAtTime}
/>