export const SupportedFormats = { Photos: [ 'gif', 'jpeg', 'jpg', 'jpe', 'png', 'webp', 'svg' ], // Browser supported video formats // Read more: https://www.w3schools.com/html/html5_video.asp Videos: [ 'mp4', 'webm', 'ogv', 'ogg' ], MetaFiles: [ 'gpx' ], // These formats need to be transcoded (with the build-in ffmpeg support) TranscodeNeed: { // based on libvips, all supported formats for sharp: https://github.com/libvips/libvips // all supported formats for gm: http://www.graphicsmagick.org/GraphicsMagick.html Photos: [], Videos: [ 'avi', 'mkv', 'mov', 'wmv', 'flv', 'mts', 'm2ts', 'mpg', '3gp', 'm4v', 'mpeg', 'vob', 'divx', 'xvid', 'ts' ], }, WithDots: { Photos: [], Videos: [], MetaFiles: [], TranscodeNeed: { Photos: [], Videos: [], } } }; SupportedFormats.Photos = SupportedFormats.Photos.concat(SupportedFormats.TranscodeNeed.Photos); SupportedFormats.Videos = SupportedFormats.Videos.concat(SupportedFormats.TranscodeNeed.Videos); SupportedFormats.WithDots.Photos = SupportedFormats.Photos.map(f => '.' + f); SupportedFormats.WithDots.Videos = SupportedFormats.Videos.map(f => '.' + f); SupportedFormats.WithDots.MetaFiles = SupportedFormats.MetaFiles.map(f => '.' + f); SupportedFormats.WithDots.TranscodeNeed.Photos = SupportedFormats.TranscodeNeed.Photos.map(f => '.' + f); SupportedFormats.WithDots.TranscodeNeed.Videos = SupportedFormats.TranscodeNeed.Videos.map(f => '.' + f);