add ffmpeg worker type
This commit is contained in:
parent
757241b38d
commit
4341a16938
|
@ -1,21 +1,19 @@
|
|||
import * as Comlink from 'comlink';
|
||||
import { ComlinkWorker } from 'utils/comlink/comlinkWorker';
|
||||
import { runningInBrowser } from 'utils/common';
|
||||
import { DedicatedConvertWorker } from 'worker/convert.worker';
|
||||
import { DedicatedCryptoWorker } from 'worker/crypto.worker';
|
||||
import { DedicatedFFmpegWorker } from 'worker/ffmpeg.worker';
|
||||
|
||||
const getDedicatedFFmpegWorker = (): ComlinkWorker => {
|
||||
const getDedicatedFFmpegWorker = () => {
|
||||
if (runningInBrowser()) {
|
||||
const worker = new Worker(
|
||||
new URL('worker/ffmpeg.worker.js', import.meta.url),
|
||||
{ name: 'ente-ffmpeg-worker' }
|
||||
);
|
||||
const comlink = Comlink.wrap(worker);
|
||||
return { comlink, worker };
|
||||
const cryptoComlinkWorker = new ComlinkWorker<
|
||||
typeof DedicatedFFmpegWorker
|
||||
>('ente-ffmpeg-worker', 'worker/ffmpeg.worker.ts');
|
||||
return cryptoComlinkWorker;
|
||||
}
|
||||
};
|
||||
|
||||
export const FFmpegWorker: any = getDedicatedFFmpegWorker()?.comlink;
|
||||
export const FFmpegWorker = getDedicatedFFmpegWorker()?.remote;
|
||||
|
||||
export const getDedicatedCryptoWorker = () => {
|
||||
if (runningInBrowser()) {
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
import * as Comlink from 'comlink';
|
||||
import FFmpegClient from 'services/ffmpeg/ffmpegClient';
|
||||
|
||||
export class FFmpeg {
|
||||
ffmpegClient;
|
||||
export class DedicatedFFmpegWorker {
|
||||
ffmpegClient: FFmpegClient;
|
||||
constructor() {
|
||||
this.ffmpegClient = new FFmpegClient();
|
||||
}
|
||||
async generateThumbnail(file) {
|
||||
async generateThumbnail(file: File) {
|
||||
return this.ffmpegClient.generateThumbnail(file);
|
||||
}
|
||||
async extractVideoMetadata(file) {
|
||||
async extractVideoMetadata(file: File) {
|
||||
return this.ffmpegClient.extractVideoMetadata(file);
|
||||
}
|
||||
|
||||
async convertToMP4(file, inputFileName) {
|
||||
async convertToMP4(file: Uint8Array, inputFileName: string) {
|
||||
return this.ffmpegClient.convertToMP4(file, inputFileName);
|
||||
}
|
||||
}
|
||||
|
||||
Comlink.expose(FFmpeg);
|
||||
Comlink.expose(DedicatedFFmpegWorker, self);
|
Loading…
Reference in a new issue