콘텐츠로 이동

webCanvasVideoPoster — @gj-kit/expo-media

@gj-kit/expo-media/web에서 공개하는 function입니다. package version 0.6.1의 release declaration을 그대로 표시합니다.

import { webCanvasVideoPoster } from '@gj-kit/expo-media/web';
/**
* 브라우저 canvas 기반 동영상 포스터 추출기(§5.6).
*
* ⚠ 실패는 전부 `null`이다 — 예외를 밖으로 내보내지 않는다. **포스터 실패가 동영상 업로드를
* 막지 않는다**는 것이 계약이고(§7.1), 그 정책의 절반이 여기(어댑터가 null을 준다),
* 나머지 절반이 코어(`resolvePoster`의 try/catch)에 있다.
*
* `document`는 주입 가능하지만 **호출 시점에** 해석한다. 생성 시점에 붙잡으면 SSR에서
* 모듈이 평가되는 순간의 `undefined`가 하이드레이션 이후까지 남는다(§8.5 케이스 H 계열의 함정).
*/
declare function webCanvasVideoPoster(input?: {
readonly document?: Document | undefined;
} | undefined): BinaryPosterAdapter;

이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.

  • 패키지: @gj-kit/expo-media
  • 버전: 0.6.1
  • 공개 entry: ./web
  • 소스: GitHub

브라우저 canvas 기반 동영상 포스터 추출기(§5.6).

⚠ 실패는 전부 null이다 — 예외를 밖으로 내보내지 않는다. 포스터 실패가 동영상 업로드를 막지 않는다는 것이 계약이고(§7.1), 그 정책의 절반이 여기(어댑터가 null을 준다), 나머지 절반이 코어(resolvePoster의 try/catch)에 있다.

document는 주입 가능하지만 호출 시점에 해석한다. 생성 시점에 붙잡으면 SSR에서 모듈이 평가되는 순간의 undefined가 하이드레이션 이후까지 남는다(§8.5 케이스 H 계열의 함정).