diff --git a/app/lib/ffmpeg/index.js b/app/lib/ffmpeg/index.js index db6f4eb..eff10bd 100644 --- a/app/lib/ffmpeg/index.js +++ b/app/lib/ffmpeg/index.js @@ -106,7 +106,7 @@ class FFMPEG { **/ async frame(state, light) { const frameNum = state.frame; - const video = state.path; + const video = state.directory ? state.files[frameNum] : state.path; const w = state.info.width; const h = state.info.height; const padded = this.padded_frame(frameNum); @@ -118,8 +118,12 @@ class FFMPEG { let output; let fileExists = false; let scale = ''; + if (state.directory) { + return video; + } if (w && h) { scale = `,scale=${w}:${h}`; + []; } tmpoutput = path_1.join(this.TMPDIR, `${state.hash}-export-${padded}.${ext}`); try { diff --git a/app/lib/ffmpeg/index.js.map b/app/lib/ffmpeg/index.js.map index 238f534..5a5093c 100644 --- a/app/lib/ffmpeg/index.js.map +++ b/app/lib/ffmpeg/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ffmpeg/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ffmpeg/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/app/lib/filmout/index.js b/app/lib/filmout/index.js index 441fcaf..eaab681 100644 --- a/app/lib/filmout/index.js +++ b/app/lib/filmout/index.js @@ -37,7 +37,8 @@ class FilmOut { directory: false, info: {}, dir: true, - enabled: false + enabled: false, + files: [] }; this.display = display; this.ffmpeg = ffmpeg; @@ -140,8 +141,21 @@ class FilmOut { let isAnimated = false; let info; let ext; + let stats; + let frameList; + try { + stats = await fs_extra_1.lstat(arg.path); + } + catch (err) { + this.log.error(err, 'FILMOUT', true, true); + return false; + } ext = path_1.extname(arg.fileName.toLowerCase()); - if (ext === this.gifExtension) { + if (stats.isDirectory()) { + this.state.directory = true; + this.state.still = false; + } + else if (ext === this.gifExtension) { try { isAnimated = await this.isGifAnimated(arg.path); } @@ -169,7 +183,29 @@ class FilmOut { this.log.error(err, 'FILMOUT', true, true); throw err; } - if (this.state.still) { + if (this.state.directory) { + try { + frameList = await this.dirList(arg.path); + } + catch (err) { + this.log.error(err, 'FILMOUT', true, true); + this.state.enabled = false; + await this.ui.send(this.id, { valid: false }); + return false; + } + try { + info = await this.dirInfo(frameList); + } + catch (err) { + this.log.error(err, 'FILMOUT', true, true); + this.state.enabled = false; + await this.ui.send(this.id, { valid: false }); + return false; + } + frames = frameList.length; + this.state.files = frameList; + } + else if (this.state.still) { try { info = await this.stillInfo(arg.path); } @@ -206,13 +242,16 @@ class FilmOut { this.state.fileName = arg.fileName; this.state.frames = frames; this.state.info = info; - //this.state.hash = this.hash(arg.path); + this.state.hash = this.hash(arg.path); if (info.seconds) { this.state.seconds = info.seconds; } else if (info.fps && frames) { this.state.seconds = frames / info.fps; } + else if (this.state.directory) { + this.state.seconds = frames / 24; + } this.log.info(`Opened ${this.state.fileName}`, 'FILMOUT', true, true); this.log.info(`Frames : ${frames}`, 'FILMOUT', true, true); this.state.enabled = true; @@ -255,7 +294,7 @@ class FilmOut { return animated_gif_detector_1.default(gifBuffer); } /** - * Return information on a still image using the sharp module + * Return information on a still image using the Jimp module * * @param {string} pathStr Path to gif to check * @@ -271,6 +310,53 @@ class FilmOut { } return info; } + /** + * Return information on the first still image found in a + * directory using the Jimp module. + * + * @param {array} images List of image paths + * + * @returns {object} Info about first image + **/ + async dirInfo(images) { + let info; + try { + info = await this.stillInfo(images[0]); + } + catch (err) { + this.log.error(err, 'FILMOUT', true, true); + } + return info; + } + /** + * Returns a list of images within a directory, filtered + * for supported types and sorted. + * + * @param {string} pathStr Path to directory + * + * @returns {array} Array of image paths + **/ + async dirList(pathStr) { + let frameList = []; + try { + frameList = await fs_extra_1.readdir(pathStr); + } + catch (err) { + this.log.error(err, 'FILMOUT', true, true); + } + frameList = frameList.filter((fileName) => { + let ext = path_1.extname(fileName); + if (this.stillExtensions.indexOf(ext) !== -1) { + return true; + } + return false; + }); + frameList.sort(); + frameList = frameList.map((fileName) => { + return path_1.join(pathStr, fileName); + }); + return frameList; + } /** * Preview a frame from the selected video. * diff --git a/app/lib/filmout/index.js.map b/app/lib/filmout/index.js.map index 2202095..c05a33c 100644 --- a/app/lib/filmout/index.js.map +++ b/app/lib/filmout/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/filmout/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/filmout/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/app/lib/ui/filmout.js b/app/lib/ui/filmout.js index 557bd52..5d0f407 100644 --- a/app/lib/ui/filmout.js +++ b/app/lib/ui/filmout.js @@ -48,7 +48,7 @@ class FilmOut { this.id = 'filmout'; this.videoExtensions = ['.mpg', '.mpeg', '.mov', '.mkv', '.avi', '.mp4', '.gif']; - this.imageExtensions = ['.tif', '.tiff', '.png', '.jpg', '.jpeg', '.bmp']; + this.stillExtensions = ['.tif', '.tiff', '.png', '.jpg', '.jpeg', '.bmp']; this.displays = []; this.state = { frame: 0, @@ -129,7 +129,7 @@ class FilmOut { const elem = $('#digital'); const options = { title: `Select video or image sequence`, - properties: [`multiSelection`], + properties: [`openFile`, `openDirectory`], defaultPath: 'c:/', filters: [ { @@ -171,6 +171,10 @@ class FilmOut { /** * Validate the selection to be of an approved selection or a directory * containing images of an approved extension. + * + * @param {array} files List of files to validate their types + * + * @returns {boolean} Whether or not the selection is valid **/ validateSelection(files) { let ext; @@ -186,7 +190,7 @@ class FilmOut { fileList = fs.readdirSync(pathStr); fileList = fileList.filter((file) => { let ext = path.extname(file).toLowerCase(); - if (this.imageExtensions.indexOf(ext)) { + if (this.stillExtensions.indexOf(ext)) { return true; } return false; @@ -198,11 +202,10 @@ class FilmOut { ext = path.extname(pathStr.toLowerCase()); valid = this.videoExtensions.indexOf(ext) === -1; if (!valid) { - valid = this.imageExtensions.indexOf(ext) === -1; + valid = this.stillExtensions.indexOf(ext) === -1; } - return valid; } - return false; + return valid; } /** * Prompt the user to use the selected file/files or cancel @@ -254,7 +257,6 @@ class FilmOut { if (light.disabled) { //light.enable(); } - //console.dir(state); this.state.frame = 0; this.state.frames = state.frames; this.state.seconds = state.seconds; @@ -263,13 +265,16 @@ class FilmOut { this.state.height = state.info.height; this.state.name = state.fileName; this.state.path = state.path; + this.state.directory = state.directory; $('#seq_loop').val(`${state.frames - 1}`).trigger('change'); $('#filmout_stats_video_name').text(state.fileName); $('#filmout_stats_video_size').text(`${state.info.width} x ${state.info.height}`); $('#filmout_stats_video_frames').text(`${state.frames} frames`); gui.updateState(); this.previewFrame(); - this.preExport(); + if (!this.state.directory) { + this.preExport(); + } } else { $('#projector_type_digital').prop('checked', 'checked'); diff --git a/app/lib/ui/filmout.js.map b/app/lib/ui/filmout.js.map index 6d715ca..cbbffda 100644 --- a/app/lib/ui/filmout.js.map +++ b/app/lib/ui/filmout.js.map @@ -1 +1 @@ -{"version":3,"file":"filmout.js","sourceRoot":"","sources":["../../src/lib/ui/filmout.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"filmout.js","sourceRoot":"","sources":["../../src/lib/ui/filmout.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;AAQb;;GAEG;AACH,SAAS,GAAG,CAAE,CAAU,EAAE,CAAU;IAChC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAE,SAAkB,EAAE,WAAoB;IAC7D,4DAA4D;IACzD,IAAI,IAAU,CAAC;IACf,IAAI,OAAa,CAAC;IAClB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;QAAE,OAAO,OAAO,CAAC;IACrE,IAAI,SAAS,KAAK,WAAW;QAAE,OAAO,OAAO,CAAC;IAC9C,kDAAkD;IAClD,IAAI,CAAC,SAAS,GAAG,CAAC,WAAW,EAAE;QAC3B,IAAI,GAAU,SAAS,CAAC;QACxB,SAAS,GAAK,WAAW,CAAC;QAC1B,WAAW,GAAG,IAAI,CAAC;KACtB;IACD,OAAO,GAAG,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;IACxC,OAAO,WAAW,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,KAAK,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,OAAO,CAAC,GAAG,KAAK,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC;AAC3J,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,KAAW;IAC1B,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED,IAAI,OAAiB,CAAC;AAEtB,MAAM,OAAO;IAUZ;QATQ,OAAE,GAAY,SAAS,CAAC;QACxB,oBAAe,GAAe,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;YAC5E,MAAM,CAAC,CAAC;QACV,oBAAe,GAAc,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAChF,aAAQ,GAAW,EAAE,CAAC;QACtB,UAAK,GAAS;YACrB,KAAK,EAAG,CAAC;YACT,OAAO,EAAG,IAAI;SACd,CAAA;IAGD,CAAC;IACD,IAAI;QACH,IAAI,CAAC,MAAM,EAAE,CAAC;IACf,CAAC;IACD,MAAM;QACL,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACnD,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACnD,WAAW,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,WAAW,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,WAAW,CAAC,EAAE,CAAC,qBAAqB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,QAAQ,CAAE,GAAW,EAAE,IAAU;QAChC,IAAI,MAAY,CAAC;QAEjB,KAAK,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;YACvB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,OAAO,CAAC,OAAO,EAAE;gBACpB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;aAC5B;YACD,CAAC,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SACtC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SAC9D;QACD,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,QAAQ;QACP,MAAM,GAAG,GAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC,GAAG,EAAE,CAAC;QAC/C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;IAED,UAAU,CAAE,EAAQ;QACnB,MAAM,IAAI,GAAY,GAAG,CAAC;QAC1B,MAAM,IAAI,GAAY,GAAG,CAAC;QAC1B,MAAM,OAAO,GAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAU,EAAE,EAAE;YACvD,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE;gBAAE,OAAO,IAAI,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,IAAI,KAAK,GAAY,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QAC3C,MAAM,CAAC,GAAY,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QACzC,MAAM,IAAI,GAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;QACzC,MAAM,MAAM,GAAS,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAEhE,IAAI,CAAU,CAAC;QACf,IAAI,GAAY,CAAC;QAEjB,IAAI,CAAC,GAAG,IAAI,EAAE;YACb,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;YAC7B,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;YAC3B,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;SAC5B;aAAM;YACN,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SACvB;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9E,CAAC,CAAC,+BAA+B,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;QACrD,CAAC,CAAC,8BAA8B,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QAC/F,uBAAuB;QACvB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;QACxB,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAG,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD;;;QAGI;IACE,UAAU;;YACf,MAAM,IAAI,GAAS,CAAC,CAAC,UAAU,CAAC,CAAC;YACjC,MAAM,OAAO,GAAS;gBACrB,KAAK,EAAG,gCAAgC;gBACxC,UAAU,EAAG,CAAC,UAAU,EAAE,eAAe,CAAC;gBAC1C,WAAW,EAAE,KAAK;gBAClB,OAAO,EAAG;oBACT;wBACC,IAAI,EAAE,WAAW;wBACjB,UAAU,EAAE,CAAC,GAAG,CAAC;qBACjB;iBACD;aACD,CAAC;YACF,IAAI,KAAY,CAAC;YACjB,IAAI,KAAK,GAAa,KAAK,CAAC;YAC5B,IAAI,OAAgB,CAAC;YACrB,IAAI,WAAoB,CAAC;YACtB,IAAI,GAAY,CAAC;YAEpB,IAAI;gBACH,KAAK,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;aAC7C;YAAC,OAAO,GAAG,EAAE;gBACb,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACf,OAAO,KAAK,CAAC;aACb;YACE,IAAI,CAAC,KAAK;gBAAE,OAAO,KAAK,CAAC;YAE5B,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC/B,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC7B,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACrC,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACtC,GAAG,CAAC,IAAI,CAAC,aAAa,WAAW,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;gBACvD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAChC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACtB,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACpC,IAAI,CAAC,OAAO,EAAE,CAAC;aACf;YAED,IAAI,CAAC,KAAK,EAAE;gBACX,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,kBAAkB,WAAW,2EAA2E,CAAC,CAAC;gBACxI,OAAO,KAAK,CAAC;aACb;QACF,CAAC;KAAA;IAED;;;;;;;QAOI;IACJ,iBAAiB,CAAE,KAAW;QAC7B,IAAI,GAAY,CAAC;QACjB,IAAI,OAAgB,CAAC;QACrB,IAAI,GAAG,GAAa,KAAK,CAAC;QAC1B,IAAI,KAAK,GAAa,KAAK,CAAC;QAC5B,IAAI,QAAQ,GAAc,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YACjC,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7B,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;YAC1C,IAAI,GAAG,EAAE;gBACR,GAAG,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBACzC,QAAQ,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACnC,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAa,EAAE,EAAE;oBAC5C,IAAI,GAAG,GAAY,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;oBACpD,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;wBACtC,OAAO,IAAI,CAAC;qBACZ;oBACD,OAAO,KAAK,CAAC;gBACd,CAAC,CAAC,CAAC;gBACH,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBACxB,KAAK,GAAG,IAAI,CAAC;iBACb;aACD;YACD,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;YAC1C,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YACjD,IAAI,CAAC,KAAK,EAAE;gBACX,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;aACjD;SACD;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;QAEI;IACE,OAAO;;YACZ,MAAM,IAAI,GAAS,CAAC,CAAC,UAAU,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAY,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAY,IAAI,CAAC,GAAG,EAAE,CAAC;YACrC,IAAI,OAAO,GAAa,KAAK,CAAC;YAC9B,IAAI,GAAG,GAAS;gBACf,IAAI,EAAG,QAAQ;gBACf,QAAQ;aACR,CAAC;YAEF,IAAI,QAAQ,IAAI,QAAQ,KAAK,EAAE,EAAE;gBAChC,OAAO,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,gCAAgC,QAAQ,GAAG,CAAC,CAAC;aACzE;iBAAM;gBACN,IAAI,CAAC,UAAU,EAAE,CAAC;aAClB;YAED,IAAI,OAAO,EAAE;gBACZ,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClB,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,sBAAsB,QAAQ,EAAE,CAAC,CAAC;gBACpD,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;aACjC;iBAAM;gBACN,CAAC,CAAC,yBAAyB,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBACxD,CAAC,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;aACpC;YACD,cAAc;QACf,CAAC;KAAA;IACD,gBAAgB;IAChB,SAAS,CAAE,GAAS,EAAE,IAAU;QAC/B,IAAI,KAAW,CAAC;QAChB,IAAI,KAAK,GAAc,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAEvC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnB,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAEnB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;YACtC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACjC,CAAC,CAAC,yBAAyB,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACxD,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEvD,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAEd,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACjB,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAEd,IAAI,KAAK,CAAC,QAAQ,EAAE;gBACnB,iBAAiB;aACjB;YACD,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;YAEvC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5D,CAAC,CAAC,2BAA2B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACpD,CAAC,CAAC,2BAA2B,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAClF,CAAC,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,SAAS,CAAC,CAAC;YAEhE,GAAG,CAAC,WAAW,EAAE,CAAC;YAClB,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;gBAC1B,IAAI,CAAC,SAAS,EAAE,CAAC;aACjB;SACD;aAAM;YACN,CAAC,CAAC,yBAAyB,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACxD,CAAC,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;SACpC;IACF,CAAC;IACD,YAAY;QACX,MAAM,QAAQ,GAAY,CAAC,CAAC,mBAAmB,CAAC,CAAC,GAAG,EAAY,CAAC;QACjE,MAAM,KAAK,GAAY,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QACzB,WAAW,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,CAAE,GAAS,EAAE,IAAU;QAC7B,MAAM,IAAI,GAAS,CAAC,CAAC,UAAU,CAAC,CAAC;QACjC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,GAAG,QAAQ,IAAI,CAAC,IAAI,IAAI,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IACK,SAAS;;YACd,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,EAAE,EAAE;gBAC9C,OAAO,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,wBAAwB,IAAI,CAAC,KAAK,CAAC,IAAI,0EAA0E,CAAC,CAAC;aAC/I;YAED,IAAI,OAAO,EAAE;gBACZ,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClB,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,uBAAuB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;gBACzE,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;aACvD;QACF,CAAC;KAAA;IAED,WAAW,CAAE,GAAW,EAAE,IAAU;QACnC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;YAC9C,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,sBAAsB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/D,GAAG,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;SACnE;aAAM;YACN,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC9B,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;SAChC;QAED,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnB,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,mBAAmB,CAAE,GAAW,EAAE,IAAU;QAC3C,MAAM,IAAI,GAAS,CAAC,CAAC,eAAe,CAAC,CAAC;QACtC,IAAI,QAAQ,GAAY,CAAC,CAAC;QAE1B,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3B,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC;SACxC;QAED,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,QAAQ,GAAG,CAAC,CAAC;QAClC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,uBAAuB,IAAI,CAAC,KAAK,CAAC,IAAI,OAAO,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAE7I,CAAC;IAED,OAAO;QACN,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YAC1C,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;SACrB;QACD,CAAC,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChE,CAAC;IAED,MAAM;QACL,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE;YACzB,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;SACzC;QACD,CAAC,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChE,CAAC;IAED,OAAO;QACN,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QACxC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,KAAK;QACJ,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAG,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK;QACJ,IAAI,KAAK,GAAY,IAAI,CAAC;QAC1B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACpB,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;SAC5C;QACD,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,KAAK;QACJ,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAG,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAE,GAAS,EAAE,GAAS;IAE3B,CAAC;CACD;AAED,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAExB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC"} \ No newline at end of file diff --git a/app/src/lib/ui/filmout.ts b/app/src/lib/ui/filmout.ts index caf485d..779c05e 100644 --- a/app/src/lib/ui/filmout.ts +++ b/app/src/lib/ui/filmout.ts @@ -46,7 +46,7 @@ class FilmOut { private id : string = 'filmout'; private videoExtensions : string[] = ['.mpg', '.mpeg', '.mov', '.mkv', '.avi', '.mp4', '.gif']; - private imageExtensions : string[] = ['.tif', '.tiff', '.png', '.jpg', '.jpeg', '.bmp']; + private stillExtensions : string[] = ['.tif', '.tiff', '.png', '.jpg', '.jpeg', '.bmp']; private displays : any[] = []; private state : any = { frame : 0, @@ -133,7 +133,7 @@ class FilmOut { const elem : any = $('#digital'); const options : any = { title : `Select video or image sequence`, - properties : [`multiSelection`], // openDirectory, multiSelection, openFile + properties : [`openFile`, `openDirectory`], // openDirectory, multiSelection, openFile defaultPath: 'c:/', filters : [ { @@ -176,8 +176,12 @@ class FilmOut { /** * Validate the selection to be of an approved selection or a directory * containing images of an approved extension. + * + * @param {array} files List of files to validate their types + * + * @returns {boolean} Whether or not the selection is valid **/ - validateSelection (files : any) { + validateSelection (files : any) : boolean { let ext : string; let pathStr : string; let dir : boolean = false; @@ -191,7 +195,7 @@ class FilmOut { fileList = fs.readdirSync(pathStr); fileList = fileList.filter((file : string) => { let ext : string = path.extname(file).toLowerCase(); - if (this.imageExtensions.indexOf(ext)) { + if (this.stillExtensions.indexOf(ext)) { return true; } return false; @@ -203,11 +207,10 @@ class FilmOut { ext = path.extname(pathStr.toLowerCase()); valid = this.videoExtensions.indexOf(ext) === -1; if (!valid) { - valid = this.imageExtensions.indexOf(ext) === -1; + valid = this.stillExtensions.indexOf(ext) === -1; } - return valid; } - return false; + return valid; } /** @@ -263,7 +266,6 @@ class FilmOut { if (light.disabled) { //light.enable(); } - //console.dir(state); this.state.frame = 0; this.state.frames = state.frames; this.state.seconds = state.seconds; @@ -272,6 +274,7 @@ class FilmOut { this.state.height = state.info.height; this.state.name = state.fileName; this.state.path = state.path; + this.state.directory = state.directory; $('#seq_loop').val(`${state.frames - 1}`).trigger('change'); $('#filmout_stats_video_name').text(state.fileName); @@ -280,7 +283,9 @@ class FilmOut { gui.updateState(); this.previewFrame(); - this.preExport(); + if (!this.state.directory) { + this.preExport(); + } } else { $('#projector_type_digital').prop('checked', 'checked'); $('#digital').removeClass('active'); diff --git a/src/ffmpeg/index.ts b/src/ffmpeg/index.ts index 67e3f1f..a6a1541 100644 --- a/src/ffmpeg/index.ts +++ b/src/ffmpeg/index.ts @@ -15,6 +15,8 @@ interface FilmoutState { hash : string; info : any; frames?: number; + directory?: boolean; + files?: string[]; } interface StdErr { @@ -139,7 +141,7 @@ class FFMPEG { **/ public async frame (state : FilmoutState, light : any) { const frameNum : number = state.frame; - const video : string = state.path; + const video : string = state.directory ? state.files[frameNum] : state.path; const w : number = state.info.width; const h : number = state.info.height; const padded : string = this.padded_frame(frameNum); @@ -149,11 +151,15 @@ class FFMPEG { let tmpoutput : string; let cmd : string; let output : any; - let fileExists = false; - + let fileExists : boolean = false; let scale : string = ''; + + if (state.directory) { + return video; + } + if (w && h) { - scale = `,scale=${w}:${h}`; + scale = `,scale=${w}:${h}`;[] } tmpoutput = join(this.TMPDIR, `${state.hash}-export-${padded}.${ext}`); diff --git a/src/filmout/index.ts b/src/filmout/index.ts index c31ea32..af64931 100644 --- a/src/filmout/index.ts +++ b/src/filmout/index.ts @@ -1,8 +1,8 @@ 'use strict'; import { default as animated } from 'animated-gif-detector'; -import { extname } from 'path'; -import { readFile, lstat } from 'fs-extra'; +import { extname, join } from 'path'; +import { readFile, lstat, readdir } from 'fs-extra'; import { delay } from 'delay'; import { createHash } from 'crypto'; import Jimp from 'jimp'; @@ -26,7 +26,8 @@ class FilmOut { directory : false, info : {}, dir : true, - enabled : false + enabled : false, + files : [] }; private display : any; private ffmpeg : any; @@ -150,10 +151,22 @@ class FilmOut { let isAnimated : boolean = false; let info : any; let ext : string; + let stats : any; + let frameList : string[]; + + try { + stats = await lstat(arg.path); + } catch (err) { + this.log.error(err, 'FILMOUT', true, true); + return false; + } ext = extname(arg.fileName.toLowerCase()); - if (ext === this.gifExtension) { + if (stats.isDirectory()) { + this.state.directory = true; + this.state.still = false; + } else if (ext === this.gifExtension) { try { isAnimated = await this.isGifAnimated(arg.path); } catch (err) { @@ -178,7 +191,27 @@ class FilmOut { throw err; } - if (this.state.still) { + if (this.state.directory) { + try { + frameList = await this.dirList(arg.path); + } catch (err) { + this.log.error(err, 'FILMOUT', true, true); + this.state.enabled = false; + await this.ui.send(this.id, { valid : false }); + return false; + } + + try { + info = await this.dirInfo(frameList); + } catch (err) { + this.log.error(err, 'FILMOUT', true, true); + this.state.enabled = false; + await this.ui.send(this.id, { valid : false }); + return false; + } + frames = frameList.length; + this.state.files = frameList; + } else if (this.state.still) { try { info = await this.stillInfo(arg.path); } catch (err) { @@ -213,12 +246,14 @@ class FilmOut { this.state.fileName = arg.fileName; this.state.frames = frames; this.state.info = info; - //this.state.hash = this.hash(arg.path); + this.state.hash = this.hash(arg.path); if (info.seconds) { this.state.seconds = info.seconds; } else if (info.fps && frames) { this.state.seconds = frames / info.fps; + } else if (this.state.directory) { + this.state.seconds = frames / 24; } this.log.info(`Opened ${this.state.fileName}`, 'FILMOUT', true, true); @@ -265,7 +300,7 @@ class FilmOut { return animated(gifBuffer); } /** - * Return information on a still image using the sharp module + * Return information on a still image using the Jimp module * * @param {string} pathStr Path to gif to check * @@ -282,6 +317,60 @@ class FilmOut { return info; } + + /** + * Return information on the first still image found in a + * directory using the Jimp module. + * + * @param {array} images List of image paths + * + * @returns {object} Info about first image + **/ + async dirInfo (images : string[]) { + let info : any; + + try { + info = await this.stillInfo(images[0]); + } catch (err) { + this.log.error(err, 'FILMOUT', true, true); + } + + return info; + } + + /** + * Returns a list of images within a directory, filtered + * for supported types and sorted. + * + * @param {string} pathStr Path to directory + * + * @returns {array} Array of image paths + **/ + async dirList (pathStr : string) { + let frameList : string[] = []; + try { + frameList = await readdir(pathStr) + } catch (err) { + this.log.error(err, 'FILMOUT', true, true); + } + + frameList = frameList.filter((fileName : string) => { + let ext : string = extname(fileName); + if (this.stillExtensions.indexOf(ext) !== -1) { + return true; + } + return false; + }); + + frameList.sort(); + + frameList = frameList.map((fileName : string) => { + return join(pathStr, fileName); + }); + + return frameList; + } + /** * Preview a frame from the selected video. *