mirror of
https://github.com/zoriya/v10.git
synced 2026-08-16 02:45:09 +00:00
feat(packages): add poster component to video skins (#994)
This commit is contained in:
@@ -1,14 +0,0 @@
|
||||
import { Poster } from '@videojs/react';
|
||||
|
||||
import { getMuxPosterSrc } from '../mux';
|
||||
import type { SourceId } from '../sources';
|
||||
|
||||
type MuxPosterProps = {
|
||||
source: SourceId;
|
||||
};
|
||||
|
||||
export function MuxPoster({ source }: MuxPosterProps) {
|
||||
const src = getMuxPosterSrc(source);
|
||||
if (!src) return null;
|
||||
return <Poster src={src} />;
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
import { getMuxAssetId } from '../mux';
|
||||
import type { SourceId } from '../sources';
|
||||
|
||||
type MuxStoryboardProps = {
|
||||
source: SourceId;
|
||||
};
|
||||
|
||||
export function MuxStoryboard({ source }: MuxStoryboardProps) {
|
||||
const id = getMuxAssetId(source);
|
||||
if (!id) return null;
|
||||
return <track kind="metadata" label="thumbnails" src={`https://image.mux.com/${id}/storyboard.vtt`} default />;
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
type StoryboardProps = {
|
||||
src?: string | undefined;
|
||||
};
|
||||
|
||||
export function Storyboard({ src }: StoryboardProps) {
|
||||
if (!src) return null;
|
||||
return <track kind="metadata" label="thumbnails" src={src} default />;
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
import { useMemo } from 'react';
|
||||
import { getPosterSrc } from '../sources';
|
||||
import { useSource } from './use-source';
|
||||
|
||||
export function usePoster() {
|
||||
const source = useSource();
|
||||
return useMemo(() => getPosterSrc(source), [source]);
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
import { useMemo } from 'react';
|
||||
import { getStoryboardSrc } from '../sources';
|
||||
import { useSource } from './use-source';
|
||||
|
||||
export function useStoryboard() {
|
||||
const source = useSource();
|
||||
return useMemo(() => getStoryboardSrc(source), [source]);
|
||||
}
|
||||
Reference in New Issue
Block a user