From 872b46d4a5e5fc5f627ee9481163c9c5d399cd99 Mon Sep 17 00:00:00 2001 From: mmcwilliams Date: Mon, 24 Jun 2019 21:11:14 -0400 Subject: [PATCH] Filmout display monitor size with stats --- app/css/app.css | 117 ++++++++++++++++++++- app/index.html | 42 ++++++-- app/js/app.js | 2 +- app/less/filmout.less | 93 ++++++++++++++++- app/lib/devices/index.js.map | 2 +- app/lib/ffmpeg/index.js | 1 + app/lib/ffmpeg/index.js.map | 2 +- app/lib/ffprobe/index.js | 8 +- app/lib/ffprobe/index.js.map | 2 +- app/lib/system/index.js | 44 +++++--- app/lib/system/index.js.map | 2 +- app/lib/ui/devices.js | 84 --------------- app/lib/ui/filmout.js | 182 ++++++++++++++++++++++++++++++++ app/lib/ui/nav.js | 2 +- app/src/index.js | 2 +- app/src/lib/ui/devices.ts | 89 +--------------- app/src/lib/ui/filmout.ts | 197 ++++++++++++++++++++++++++++++++++- cli/lib/devices/index.js.map | 2 +- cli/lib/ffmpeg/index.js | 1 + cli/lib/ffmpeg/index.js.map | 2 +- cli/lib/ffprobe/index.js | 8 +- cli/lib/ffprobe/index.js.map | 2 +- cli/lib/system/index.js | 44 +++++--- cli/lib/system/index.js.map | 2 +- lib/devices/index.js.map | 2 +- lib/ffmpeg/index.js | 1 + lib/ffmpeg/index.js.map | 2 +- lib/ffprobe/index.js | 8 +- lib/ffprobe/index.js.map | 2 +- lib/system/index.js | 44 +++++--- lib/system/index.js.map | 2 +- src/devices/index.ts | 2 +- src/ffmpeg/index.ts | 1 + src/ffprobe/index.ts | 8 +- src/system/index.ts | 51 ++++++--- 35 files changed, 793 insertions(+), 262 deletions(-) diff --git a/app/css/app.css b/app/css/app.css index d998f39..04e69d0 100644 --- a/app/css/app.css +++ b/app/css/app.css @@ -739,13 +739,84 @@ button:focus { background: black; color: #fff; } +#video input[type=text], +#video select { + display: block; + border-radius: 5px; + border: 2px solid #fff; + text-align: center; + background: transparent; + color: #fff; + padding: 8px 0; + font-size: 12px; + font-weight: 400; + display: inline-block; + padding: 6px 12px; + font-size: 21px; + min-width: 300px; +} +#video input[type=text] span, +#video select span { + display: block; + font-size: 16px; + font-weight: 200; +} +#video input[type=text]:active, +#video select:active, +#video input[type=text] .active, +#video select .active { + background: #fff; + color: #272b30; + outline: none; +} +#video input[type=text]:focus, +#video select:focus { + outline: none; +} +#video input[type=text].active, +#video select.active { + border-color: #DAE035; + color: #DAE035; +} +#video button, +#video select { + padding: 9px 16px 8px; +} +#path_bar { + padding: 5px; + height: 50px; +} +#path_bar input { + float: left; +} +#path_bar button { + float: left; + margin-left: 5px; +} +#path_bar select { + line-height: 41px; + height: 41px; + margin-right: 5px; + float: right; +} +#filmout_monitor { + display: none; + border: 2px solid white; + box-sizing: border-box; + height: 360px; + margin: 0 auto; +} +#filmout_monitor.on { + display: block; +} #filmout_preview_wrap { background: #000; width: 100%; + height: 360px; } #filmout { - height: 400px; - min-height: 400px; + height: 360px; + min-height: 360px; width: auto; margin: 0 auto; display: block; @@ -754,6 +825,48 @@ button:focus { #filmout .on { opacity: 1; } +#filmout_position_wrap { + padding-top: 5px; + height: 50px; +} +#filmout_position_wrap input { + margin-right: 5px; + margin-left: 5px; +} +#filmout_position_wrap button, +#filmout_position_wrap input { + float: left; +} +#filmout_position_wrap > div { + width: 400px; + margin: 0 auto; +} +#filmout_functions { + padding-top: 5px; +} +#filmout_functions > div { + width: 400px; + margin: 0 auto; +} +#filmout_stats_video, +#filmout_stats_monitor { + width: 150px; + position: absolute; + padding: 10px 5px; + text-align: center; +} +#filmout_stats_video h3, +#filmout_stats_monitor h3 { + font-size: 20px; + margin: 16px 0 3px; + text-align: center; +} +#filmout_stats_video { + left: 5px; +} +#filmout_stats_monitor { + right: 5px; +} #screens { overflow-x: hidden; } diff --git a/app/index.html b/app/index.html index 761cf87..7f172f3 100644 --- a/app/index.html +++ b/app/index.html @@ -346,24 +346,44 @@
- - +
+
+
+
+

Video

+
+
+
+
+
+

Monitor

+
+
+
+
+
- - - +
+ + + +
- - - - +
+ + + + +
@@ -385,8 +405,8 @@
- - + +

Camera

diff --git a/app/js/app.js b/app/js/app.js index 7e37167..dc9a4ee 100644 --- a/app/js/app.js +++ b/app/js/app.js @@ -2516,7 +2516,7 @@ async function init () { mse.console.init(); devices.init(); - //filmout.init(); + filmout.init(); light.init(); proj.init(); cam.init(); diff --git a/app/less/filmout.less b/app/less/filmout.less index eccaa53..48427e2 100644 --- a/app/less/filmout.less +++ b/app/less/filmout.less @@ -1,16 +1,58 @@ +#video{ + input[type=text],select{ + .button(); + display: inline-block; + padding: 6px 12px; + font-size: 21px; + min-width: 300px; + &.active{ + border-color: @SELECTED; + color: @SELECTED; + } + } + button, select { + padding: 9px 16px 8px; + } +} + #path_bar{ - + padding: 5px; + height: 50px; + input{ + float: left; + } + button{ + float: left; + margin-left: 5px; + } + select{ + line-height: 41px; + height: 41px; + margin-right: 5px; + float: right; + } } #filmout_file { +} +#filmout_monitor{ + display: none; + border: 2px solid white; + box-sizing: border-box; + height: 360px; + margin: 0 auto; + &.on{ + display: block; + } } #filmout_preview_wrap { background: #000; width: 100%; + height: 360px; } #filmout { - height: 400px; - min-height: 400px; + height: 360px; + min-height: 360px; width: auto; margin: 0 auto; display: block; @@ -18,4 +60,49 @@ & .on { opacity: 1.0; } +} + +#filmout_position_wrap{ + padding-top: 5px; + height: 50px; + input{ + margin-right: 5px; + margin-left: 5px; + } + button, input{ + float: left; + } + > div{ + width: 400px; + margin: 0 auto; + } +} + +#filmout_functions{ + padding-top: 5px; + > div{ + width: 400px; + margin: 0 auto; + } +} + +#filmout_stats_video, +#filmout_stats_monitor{ + width: 150px; + position: absolute; + //background: grey; + padding: 10px 5px; + text-align: center; + h3{ + font-size: 20px; + margin: 16px 0 3px; + text-align: center; + } +} + +#filmout_stats_video{ + left: 5px; +} +#filmout_stats_monitor{ + right: 5px; } \ No newline at end of file diff --git a/app/lib/devices/index.js.map b/app/lib/devices/index.js.map index e429e6f..0705a1d 100644 --- a/app/lib/devices/index.js.map +++ b/app/lib/devices/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/devices/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/devices/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/app/lib/ffmpeg/index.js b/app/lib/ffmpeg/index.js index 5efa712..9a23caf 100644 --- a/app/lib/ffmpeg/index.js +++ b/app/lib/ffmpeg/index.js @@ -58,6 +58,7 @@ async function frame(state, light) { } if (output2 && output2.stdout) console.log(`"${output2.stdout}"`); + return tmpoutput; } async function frames(video, obj) { let tmppath = TMPDIR; diff --git a/app/lib/ffmpeg/index.js.map b/app/lib/ffmpeg/index.js.map index d35245c..82542d4 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/ffprobe/index.js b/app/lib/ffprobe/index.js index 98729fc..5de15bf 100644 --- a/app/lib/ffprobe/index.js +++ b/app/lib/ffprobe/index.js @@ -1,6 +1,7 @@ 'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); const fs_extra_1 = require("fs-extra"); +const path_1 = require("path"); const exec_1 = require("exec"); //const spawn = require('spawn'); //const exit = require('exit'); @@ -50,7 +51,9 @@ async function info(video) { return json; } async function frames(video) { - let cmd = `ffprobe -v error -count_frames -select_streams v:0 -show_entries stream=nb_read_frames -of default=nokey=1:noprint_wrappers=1 "${video}"`; + const ext = path_1.extname(video.toLowerCase()); + let cmd = `ffprobe -v error -select_streams v:0 -show_entries stream=nb_frames -of default=nokey=1:noprint_wrappers=1 "${video}"`; + let backup_cmd = `ffprobe -v error -count_frames -select_streams v:0 -show_entries stream=nb_read_frames -of default=nokey=1:noprint_wrappers=1 "${video}"`; let fileExists; let raw; let frames; @@ -67,6 +70,9 @@ async function frames(video) { console.error(new Error(`File ${video} does not exist`)); return false; } + if (ext === '.mkv') { + cmd = backup_cmd; + } try { console.log(cmd); raw = await exec_1.exec(cmd); diff --git a/app/lib/ffprobe/index.js.map b/app/lib/ffprobe/index.js.map index a5692c3..09175c8 100644 --- a/app/lib/ffprobe/index.js.map +++ b/app/lib/ffprobe/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ffprobe/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ffprobe/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/app/lib/system/index.js b/app/lib/system/index.js index 49e50f4..7e5de58 100644 --- a/app/lib/system/index.js +++ b/app/lib/system/index.js @@ -13,37 +13,53 @@ const exec_1 = require("exec"); **/ async function dependencies(platform) { let obj = {}; + let ffoutput; + let imoutput; + let eogoutput; try { - await exec_1.exec('ffmpeg -h'); - obj.ffmpeg = 'ffmpeg'; + ffoutput = await exec_1.exec('which ffmpeg'); } catch (err) { - //return exit('ffmpeg is not installed', 3); - return console.error('ffmpeg is not installed', err); + console.error('ffmpeg is not installed', err); + } + if (!ffoutput || ffoutput.stdout.trim() === '') { + console.error('ffmpeg is not installed'); + } + else { + obj.ffmpeg = ffoutput.stdout.trim(); } try { - await exec_1.exec('convert -h'); - obj.convert = 'convert'; + imoutput = await exec_1.exec('which convert'); } catch (err) { - //return exit('ffmpeg is not installed', 3); - return console.error('ffmpeg is not installed', err); + console.error('imagemagick is not installed', err); + } + if (!imoutput || imoutput.stdout.trim() === '') { + console.error('imagemagick is not installed'); + } + else { + obj.convert = imoutput.stdout.trim(); } //if linux if (platform === 'nix') { try { - await exec_1.exec('eog -h'); - obj.eog = 'eog'; + eogoutput = await exec_1.exec('which eog'); } catch (err) { - //return exit('eog is not installed', 4); - return console.error('eog is not installed', err); + console.error('eog is not installed', err); + } + if (!eogoutput || eogoutput.stdout.trim() === '') { + console.error('eog is not installed'); + } + else { + obj.eog = eogoutput.stdout.trim(); } } return obj; } function displayMap(obj) { const sm = { + id: obj.id, width: obj.size.width, height: obj.size.height, x: obj.bounds.x, @@ -98,7 +114,9 @@ async function system(ui) { } obj.displays = await displays(); obj.deps = await dependencies(obj.platform); - ui.send('system', obj); + setTimeout(() => { + ui.send('system', obj); + }, 3000); return obj; } module.exports = system; diff --git a/app/lib/system/index.js.map b/app/lib/system/index.js.map index ca18a49..16b2dc8 100644 --- a/app/lib/system/index.js.map +++ b/app/lib/system/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/system/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/system/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/app/lib/ui/devices.js b/app/lib/ui/devices.js index e403de7..520db94 100644 --- a/app/lib/ui/devices.js +++ b/app/lib/ui/devices.js @@ -3,7 +3,6 @@ let devices; class Devices { constructor() { this.id = 'devices'; - this.init(); } init() { this.listen(); @@ -14,7 +13,6 @@ class Devices { listen() { ipcRenderer.on('ready', this.ready.bind(this)); ipcRenderer.on('intval', this.intvalCb.bind(this)); - ipcRenderer.on('digital', this.digitalCb.bind(this)); } ready(event, arg) { //console.dir(arg) @@ -156,88 +154,6 @@ class Devices { $('#intval').removeClass('active'); } } - digitalSelect() { - const elem = $('#digital'); - const extensions = ['mpg', 'mpeg', 'mov', 'mkv', 'avi', 'mp4']; - dialog.showOpenDialog({ - title: `Select video or image sequence`, - properties: [`openFile`], - defaultPath: 'c:/', - filters: [ - { - name: 'All Files', - extensions: ['*'] - }, - ] - }, (files) => { - let valid = false; - let path = files[0]; - let displayName; - if (path && path !== '') { - for (let ext of extensions) { - if (path.toLowerCase().indexOf(`.${ext}`) !== -1) { - valid = true; - } - } - if (!valid) - return false; - log.info(`Selected video ${path.split('/').pop()}`, 'DIGITAL', true); - elem.attr('data-file', path); - displayName = path.split('/').pop(); - elem.val(displayName); - $('#video_file').val(displayName); - } - }); - } - digital() { - const elem = $('#digital'); - const path = elem.attr('data-file'); - const fileName = elem.val(); - let proceed = false; - let obj = { - path, - fileName - }; - if (path && path !== '') { - proceed = confirm(`Are you sure you want to use ${fileName}?`); - } - if (proceed) { - gui.overlay(true); - gui.spinner(true, `Getting info about ${fileName}`); - ipcRenderer.send('digital', obj); - } - else { - $('#projector_type_digital').prop('checked', 'checked'); - $('#digital').removeClass('active'); - } - } - digitalCb(evt, args) { - let state; - let color = [255, 255, 255]; - gui.spinner(false); - gui.overlay(false); - if (args.valid && args.valid === true) { - //success state - state = JSON.parse(args.state); - $('#digital').addClass('active'); - $('#projector_type_digital').prop('checked', 'checked'); - gui.notify('DEVICES', `Using video ${state.fileName}`); - seq.set(0, 'PF'); - grid.state(0); - seq.set(1, 'CF'); - seq.setLight(1, color); - grid.state(1); - if (light.disabled) { - light.enable(); - } - $('#seq_loop').val(`${state.frames - 1}`).trigger('change'); - gui.updateState(); - } - else { - $('#projector_type_digital').prop('checked', 'checked'); - $('#digital').removeClass('active'); - } - } } devices = new Devices(); module.exports = devices; diff --git a/app/lib/ui/filmout.js b/app/lib/ui/filmout.js index 7f54ff4..0049307 100644 --- a/app/lib/ui/filmout.js +++ b/app/lib/ui/filmout.js @@ -1,3 +1,185 @@ 'use strict'; +function gcd(a, b) { + if (b === 0) + return a; + return gcd(b, a % b); +} +/** + * Reduce a numerator and denominator to it's smallest, integer ratio using Euclid's Algorithm + */ +function reduceRatio(numerator, denominator) { + // from: http://pages.pacificcoast.net/~cazelais/euclid.html + let temp; + let divisor; + if (!isInteger(numerator) || !isInteger(denominator)) + return '? : ?'; + if (numerator === denominator) + return '1 : 1'; + // make sure numerator is always the larger number + if (+numerator < +denominator) { + temp = numerator; + numerator = denominator; + denominator = temp; + } + divisor = gcd(+numerator, +denominator); + return 'undefined' === typeof temp ? (numerator / divisor) + ' : ' + (denominator / divisor) : (denominator / divisor) + ' : ' + (numerator / divisor); +} +/** + * Determine whether a value is an integer (ie. only numbers) + */ +function isInteger(value) { + return /^[0-9]+$/.test(value); +} let filmout; +class FilmOut { + constructor() { + this.id = 'filmout'; + this.displays = []; + } + init() { + this.listen(); + } + listen() { + ipcRenderer.on(this.id, this.onFilmout.bind(this)); + ipcRenderer.on('system', this.onSystem.bind(this)); + } + onSystem(evt, args) { + let option; + for (let display of args.displays) { + this.displays.push(display); + option = $('