diff options
Diffstat (limited to 'apps/web/src/lib/export')
| -rw-r--r-- | apps/web/src/lib/export/defaults.ts | 7 | ||||
| -rw-r--r-- | apps/web/src/lib/export/index.ts | 70 | ||||
| -rw-r--r-- | apps/web/src/lib/export/mime-types.ts | 4 |
3 files changed, 0 insertions, 81 deletions
diff --git a/apps/web/src/lib/export/defaults.ts b/apps/web/src/lib/export/defaults.ts deleted file mode 100644 index 0247f8a8..00000000 --- a/apps/web/src/lib/export/defaults.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type { ExportOptions } from "./index"; - -export const DEFAULT_EXPORT_OPTIONS = { - format: "mp4", - quality: "high", - includeAudio: true, -} satisfies ExportOptions; diff --git a/apps/web/src/lib/export/index.ts b/apps/web/src/lib/export/index.ts deleted file mode 100644 index c5c522b3..00000000 --- a/apps/web/src/lib/export/index.ts +++ /dev/null @@ -1,70 +0,0 @@ -import type { FrameRate } from "opencut-wasm"; -import { EXPORT_MIME_TYPES } from "./mime-types"; - -export const EXPORT_QUALITY_VALUES = [ - "low", - "medium", - "high", - "very_high", -] as const; - -export const EXPORT_FORMAT_VALUES = ["mp4", "webm"] as const; - -export type ExportFormat = (typeof EXPORT_FORMAT_VALUES)[number]; -export type ExportQuality = (typeof EXPORT_QUALITY_VALUES)[number]; - -export interface ExportOptions { - format: ExportFormat; - quality: ExportQuality; - fps?: FrameRate; - includeAudio?: boolean; -} - -export interface ExportResult { - success: boolean; - buffer?: ArrayBuffer; - error?: string; - cancelled?: boolean; -} - -export interface ExportState { - isExporting: boolean; - progress: number; - result: ExportResult | null; -} - -export function getExportMimeType({ - format, -}: { - format: ExportFormat; -}): string { - return EXPORT_MIME_TYPES[format]; -} - -export function getExportFileExtension({ - format, -}: { - format: ExportFormat; -}): string { - return `.${format}`; -} - -export function downloadBuffer({ - buffer, - filename, - mimeType, -}: { - buffer: ArrayBuffer; - filename: string; - mimeType: string; -}): void { - const blob = new Blob([buffer], { type: mimeType }); - const url = URL.createObjectURL(blob); - const downloadLink = document.createElement("a"); - downloadLink.href = url; - downloadLink.download = filename; - document.body.appendChild(downloadLink); - downloadLink.click(); - document.body.removeChild(downloadLink); - URL.revokeObjectURL(url); -} diff --git a/apps/web/src/lib/export/mime-types.ts b/apps/web/src/lib/export/mime-types.ts deleted file mode 100644 index b98900bf..00000000 --- a/apps/web/src/lib/export/mime-types.ts +++ /dev/null @@ -1,4 +0,0 @@ -export const EXPORT_MIME_TYPES = { - webm: "video/webm", - mp4: "video/mp4", -} as const; |
