export declare type FFmpegToolchainExeWrapper = any; export declare type FFmpegFileItem = { name: string; data: Uint8Array; }; export declare type FFmpegConversionTargetInfo = { targetCodec: string; targetFiletypeExt: any; targetBitrateKbps: number; }; export declare class FFmpegStdPipeBuffer { } export declare class FFmpegTool { ffmpeg: FFmpegToolchainExeWrapper; private _onStdErrPipeByte; private _onStdOutPipeByte; constructor(ffmpeg: FFmpegToolchainExeWrapper, _onStdErrPipeByte?: (newByte: number, bytesCount: number) => void, _onStdOutPipeByte?: (newByte: number, bytesCount: number) => void); /** * Slightly low-level method, better use a more convenient wrapper if it can fit your purpose. * * Usage example: * * // notice the redundant inputfile pathname information passed here, reason why is somewhere * // inside ffmpeg.s * const args = ['-i', 'input.mp3', '-c:a', 'aac', '-b:a', '128k', 'output.mp4']; * const outData = ffmpegWrapper.runWithOneInputFile(new Uint8Array(data), 'input.mp3', args); * * @param fileData * @param fileName * @param ffmpegArguments */ runWithOneInputFile(inputFile: FFmpegFileItem, ffmpegArguments: string[]): FFmpegFileItem; /** * see https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options * @param inputFileData * @param inputExtension * @param audioConfig * @param videoConfig * @param extraArgs */ convertAVFile(inputFileData: Uint8Array, inputExtension: string, audioConfig: FFmpegConversionTargetInfo | null, videoConfig: FFmpegConversionTargetInfo | null, extraArgs?: string[]): Uint8Array; /** * * @param inputFileData * @param inputExtension without dot * @param targetCodec ffmpeg codec identifier, defaults to 'aac' * @param targetFiletypeExt without dot, defaults to 'mp4' */ convertAudioFile(inputFileData: Uint8Array, inputExtension: string, targetCodec?: string, targetFiletypeExt?: string, targetBitrateKbps?: number): Uint8Array; getVersion(): Promise; }