Commit Graph

642 Commits

Author SHA1 Message Date
Matt McWilliams fb7b1e2fb6 Added an edge-case helper for choosing files/directories in linux. This finishes the requirement for issue #50 on linux, but will test changes on macOS before marking the issue resolved. 2021-02-24 10:05:45 -05:00
Matt McWilliams 5061a511ab Corrected an issue with the monitor selection UI where the text is cut off. 2021-02-24 00:38:11 -05:00
Matt McWilliams c0121bcfe7 Have seemingly added the ability to use image sequences with the filmout feature with a few caveats. File selection is working on mac but was not on Linux. Also using this method only jpeg and png sequences can be used. This is not unacceptable, but the UI will have to be made more explicit about this limitation. I would like to support TIFF files but even now with single images they are rendered to PNG using ffmpeg. 2021-02-24 00:22:08 -05:00
Matt McWilliams 66639e951b Allow for the selection of a video file, image or directory containing images to be selected in the filmout UI. 2021-02-23 19:54:03 -05:00
Matt McWilliams 53d147b9bc Add lstat and "directory" property onto the filmout.state object. 2021-02-23 19:53:22 -05:00
Matt McWilliams ad1ac51fc8 Need to enableRemote in the electron browser window that gets created by filmout. 2021-02-23 16:16:17 -05:00
Matt McWilliams 6473f388d8 Update package-lock to latest version 2021-02-22 13:40:44 -05:00
Matt McWilliams 85bfa57127 Update all modules in app to latest version, including electron. Removed electron updater because of no plans to integrate and to reduce the app size. 2021-02-22 13:23:36 -05:00
Matt McWilliams 338a60f947 Restructure function to match convention. Declare all variables in the beginning of the function rather than declaring them throughout. Small edit while I re-read the UI code and build the file sequence feature. 2021-02-22 13:12:27 -05:00
Matt McWilliams 9ab1436d49 Move dev commands into its own script. 2021-02-22 13:03:41 -05:00
dependabot[bot] b90a68cb39
Bump electron from 9.1.1 to 9.3.1 in /app
Bumps [electron](https://github.com/electron/electron) from 9.1.1 to 9.3.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/master/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v9.1.1...v9.3.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-06 17:50:14 +00:00
sixteenmillimeter e84f1ce8ff Add additional logging 2020-10-03 21:33:45 -04:00
dependabot[bot] 7d4e53fe24
Bump bl from 4.0.2 to 4.0.3 in /app
Bumps [bl](https://github.com/rvagg/bl) from 4.0.2 to 4.0.3.
- [Release notes](https://github.com/rvagg/bl/releases)
- [Commits](https://github.com/rvagg/bl/compare/v4.0.2...v4.0.3)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-29 19:50:29 +00:00
sixteenmillimeter e672c2dc93
Merge pull request #47 from sixteenmillimeter/dependabot/npm_and_yarn/app/lodash-4.17.19
Bump lodash from 4.17.15 to 4.17.19 in /app
2020-09-29 15:49:24 -04:00
sixteenmillimeter 7c9543239e Rest of last commit. Renderer js 2020-09-29 13:57:59 -04:00
sixteenmillimeter 8672b6584a Work towards issue #52. Adds a statement within the arduino.end() method that watches for an 'E' char byte and will alert the UI while pausing a running sequence. Needs to be in place for firmware to be able to throw errors to UI. 2020-09-29 13:48:06 -04:00
sixteenmillimeter 6eeeae85c8 Updated patch number, now working on 1.6.5 2020-08-18 14:21:07 -04:00
sixteenmillimeter 7c61af7043 Added logging to the arduino module to list all connected devices. 2020-08-18 14:20:43 -04:00
sixteenmillimeter f02782d4da Increment build to 1.6.4. Re-package and deploy for mac 2020-08-09 23:39:52 -04:00
sixteenmillimeter 32356b0037 Log doesn't need to print its own path. 2020-08-09 23:25:55 -04:00
sixteenmillimeter 4f2252d113 Merge remote-tracking branch 'origin/master' 2020-08-09 20:03:52 -04:00
sixteenmillimeter 0145bebb4b Turn off notifier if errors out 2020-08-09 20:03:48 -04:00
mmcwilliams 5e6fbbb43c Add armv7l architecture to dpkg for Raspian. 2020-07-30 11:28:11 -04:00
mmcwilliams 7e516a59b6 Wrong arch again 2020-07-30 11:04:02 -04:00
mmcwilliams 948b20fead Install dependencies for rpi. Package as armv71 for raspberry pi 2020-07-30 11:01:57 -04:00
mmcwilliams c61c128044 Merge remote-tracking branch 'origin/master' 2020-07-30 10:54:44 -04:00
mmcwilliams 296ef93ecb Installer for rpi 2020-07-30 10:54:35 -04:00
sixteenmillimeter 74621ef1fb Squashing notifier/notify-send errors on raspian. If the system doesnt work with node-notifier just skip 2020-07-27 11:43:55 -04:00
sixteenmillimeter 0811222d27 Normalize paths being used in filmout feature. Purpose of this is to rely on fs module to correctly handle paths for windows because it was previously broken. Will run tests. 2020-07-26 22:26:34 -04:00
sixteenmillimeter 0c364576c9 Squash errors in case of mkdir trying to create an existing directory (need mkdirp, but this works without an extra module) 2020-07-26 22:01:28 -04:00
dependabot[bot] 7ff49f0aa6
Bump lodash from 4.17.15 to 4.17.19 in /app
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19)

Signed-off-by: dependabot[bot] <support@github.com>
2020-07-27 01:56:48 +00:00
sixteenmillimeter 8c97258866 Update all modules in core project and desktop app. Needed to update syntax of import in sequencer module because uuid is updated to 8.2.0 2020-07-26 21:55:36 -04:00
sixteenmillimeter 5c691a8e12 Fixed serialization error that was breaking raspberry pi 4 installation. It is apparently a real bug that should be breaking the app. 2020-07-26 21:52:53 -04:00
sixteenmillimeter a748f689bd
Merge pull request #45 from sixteenmillimeter/dependabot/npm_and_yarn/app/electron-7.2.4
Bump electron from 7.1.8 to 7.2.4 in /app
2020-07-07 12:16:04 -04:00
sixteenmillimeter efc6d0ef03 Moving further down up the path. See previous commit. 2020-07-07 12:07:00 -04:00
sixteenmillimeter a379e4b086 Windows path differences from linux/darwin are ruining my day https://github.com/felixrieseberg/electron-wix-msi/issues/5 2020-07-07 12:05:28 -04:00
sixteenmillimeter 4a1bf417a4 Running build scripts on windows for the first time in a while. 2020-07-07 11:59:34 -04:00
dependabot[bot] 270862bd5f
Bump electron from 7.1.8 to 7.2.4 in /app
Bumps [electron](https://github.com/electron/electron) from 7.1.8 to 7.2.4.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/master/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v7.1.8...v7.2.4)

Signed-off-by: dependabot[bot] <support@github.com>
2020-07-07 00:20:09 +00:00
mmcwilliams fb63bade2f Fix windows build process (avoid asar) 2020-04-29 10:06:51 -04:00
mmcwilliams 8163f7d454 Merge remote-tracking branch 'origin/master' 2020-04-24 22:38:35 -04:00
mmcwilliams 5ec50713ba Remove extraneous build config from package.json. 2020-04-24 22:38:32 -04:00
sixteenmillimeter 3fd2b04e75 Update build script on mac to not throw an error 2020-04-24 22:26:00 -04:00
mmcwilliams c15cd512ae The trick on linux is to not build as an asar. Go figure. 2020-04-24 22:17:10 -04:00
mmcwilliams cc41b75130 FFMPEG not working yet 2020-04-24 22:12:56 -04:00
mmcwilliams f929ea2cc2 No, use ffmpeg-static and ffprobe-static but explcitly whitelist the node_modules bin folder where the binaries actually sit 2020-04-24 17:22:58 -04:00
mmcwilliams d4987ed3a3 Replace ffmpeg-static and ffprobe-static with ffmpeg-static-electron and ffprobe-static-electron. These will allow for packaging ffmpeg and ffprobe binaries that can be accessed from within the build. The path replace string hacks weren't cutting it. 2020-04-24 16:01:09 -04:00
mmcwilliams da00c62db3 FFMPEG and FFPROBE need to be stored unpacked in asar for build. 2020-04-24 15:09:51 -04:00
sixteenmillimeter 55c460fbb4 Install new frame module in electron app package 2020-04-24 14:46:05 -04:00
sixteenmillimeter 01cac728f5 Remove ImageMagick dependency. Replace sharp with jimp (prevent linux build issues). Jimp will also perform the same composite step as convert was. Light module is still disabled globally. 2020-04-24 14:33:58 -04:00
sixteenmillimeter 8d5663d3a2 Drop unnecessary console.dir statement 2020-03-09 15:58:36 -04:00
sixteenmillimeter 1c940d6df7 Display export progress and time estimate while all frames are being exported 2020-03-09 15:46:06 -04:00
sixteenmillimeter e25a8bbc7c Use the gui.confirm dialog and not the native confirm function. 2020-02-21 16:58:35 -05:00
sixteenmillimeter d70de98256 Pre-export all frames in video (with confirmation dialog). Greatly improves sequence times and reliablity in conjunction with last commit. Resolves #36 and resolves #39. 2020-02-21 13:34:22 -05:00
sixteenmillimeter aec3e29476 Wait until image is loaded in a temp element and then report back to main process using ipc. This uses the "display_load" ipc channel to call back to the Display class and resolve a promise made in the .show() method. Resolves #38. 2020-02-21 02:28:26 -05:00
sixteenmillimeter 32fe873707 Allow for longer videos by using longer padded numbers for sequences 2020-02-21 01:58:56 -05:00
sixteenmillimeter 549cd3cc04 1.5.2 changes. Build includes code not in repo :( 2020-01-21 11:38:50 -05:00
sixteenmillimeter 8dc955a5e7 FFprobe added as static binary. Needed for filmout feature. 2020-01-20 11:51:15 -05:00
sixteenmillimeter ed75924e24 Filmout release 1.5.0. 2020-01-20 01:37:38 -05:00
sixteenmillimeter 49ba9a090b Turn off light feature for all cfgs. None support it. 2020-01-20 01:20:56 -05:00
sixteenmillimeter 691e741d70 Add check for convert. Never used. 2020-01-20 01:15:20 -05:00
sixteenmillimeter 35b8b0def2 Fixed some counter confusion. Setting the primary and secondary projectors with correct variables. 2020-01-19 01:39:57 -05:00
mmcwilliams 529c275c0f Filmout needed update in use of dialog class. ffmpeg-static needed to reference the required module, not .path 2020-01-19 00:36:58 -05:00
mmcwilliams d604f2aab5 Resolved #28 issues with color selection in the GUI. Performing final tests before 1.5 release. On release will use new repo tagging methods and will build more frequently. 2020-01-14 12:48:15 -05:00
mmcwilliams b0c7e4eed4 Created a new, custom superior log format with timestamps and "splat()" objects. Tired of parsing json from logfiles for analysis. Now can easily grep through logfiles. 2020-01-14 11:51:25 -05:00
mmcwilliams c6d0256929 Compile renderer js with tsconfig.json file. Add maps. 2020-01-10 16:43:12 -05:00
mmcwilliams 4d022883ff Update cfg files 2020-01-09 20:19:13 -05:00
sixteenmillimeter b595225870 Increment patch to 1.4.20 2020-01-09 18:43:16 -05:00
sixteenmillimeter fc2593c6ee Resolves #34. Added delay lib to renderer and added a magic delay before ending devices.ready(). Just works. Move on and don't question it. 2020-01-09 18:06:18 -05:00
sixteenmillimeter 4c0aa4220c Log with "simple" format, no more json in the console. 2020-01-09 18:05:10 -05:00
mmcwilliams 42621bbf71 Devices discovery WIP 2020-01-05 12:40:38 -05:00
mmcwilliams 4c8c2b66f3 Serialport library was updated and changed to Promise-based returns from callbacks as was being used in the arduino lib. 2019-12-18 17:17:48 -05:00
mmcwilliams c6ebab4032 Post upgrade, log library needs to be upgraded to support winston 3.x API 2019-12-18 16:05:58 -05:00
mmcwilliams 4461670e14 Fixes security concerns. Resolves #24 and #27 2019-12-16 19:25:51 -05:00
mmcwilliams 8e4c32073a Sequencer now blocks system sleep while running a sequence. Made me upset last night when it happened during a filmout and I shot 1000 frames of black. Resolves #26 2019-10-04 14:36:26 -04:00
sixteenmillimeter ac1da17b8d Handle different aspect ratio images and screens. Add additional counts on fields and thicken lines. Resolves #19 2019-08-25 15:54:50 -04:00
sixteenmillimeter 9b2ed018bf If filmout picture source is set, set the field guide to match the aspect ratio of the image. Right now that only works if ratio is lower than the screen. Need to add case in display.html that corrects for when screen ratio is lower than image ratio. 2019-08-25 15:26:43 -04:00
sixteenmillimeter 51acbdfd30 Add comments to filmout lib. 2019-08-25 14:59:39 -04:00
mmcwilliams 5ce0aed2ff Use module "ffmpeg-static" to use a binary of ffmpeg stored in node_modules, rather than rely on the system version. 2019-08-23 15:39:38 -04:00
sixteenmillimeter f0c28b8624 Properly count number of frames in animated gifs using `identify` from imagemagick because ffprobe was failing. 2019-08-15 15:25:33 -04:00
mmcwilliams 5f701ccecb Increment patch number. 2019-08-04 19:53:51 -04:00
mmcwilliams cfa22d3a1d Replace native js confirm() with a new gui.confirm() method that uses electrons "dialog" module. Resolves issue #25 2019-08-04 19:52:52 -04:00
mmcwilliams 1b83fe6937 Downgrade winston from 3 to 2 because it prints better in the console. Change all require statements to imports, requiring only what's used. 2019-08-04 19:38:45 -04:00
mmcwilliams 2ff98a2148 Refactor ffprobe into a class. Add jsdoc comments to all methods. 2019-08-04 18:04:06 -04:00
mmcwilliams 30c36baa9c Add comments and switch in logger module for console.log 2019-08-04 17:54:38 -04:00
mmcwilliams bd79025305 Refactored ffmpeg module into a class. Add a logger, not implemented. Not tested. 2019-08-04 17:42:27 -04:00
mmcwilliams 7c4e9d5823 Add jsdoc comments to ffmpeg lib. Also added types for tsc where they were implicit any type. Also added some semi-colons. Whoops. 2019-08-04 17:31:27 -04:00
mmcwilliams 5695bfd645 App was throwing error during filmout. Re-wrote the resizing logic so that if it can't find dimensions in the info, don't resize the image. This may lead to squashing, as I've seen in frameloom, but I suspect this problem is with the UI and the superfluous "USE FILE" button. 2019-08-04 17:20:45 -04:00
mmcwilliams c5f3c72f73 All workshop work. Freeze dev on mac and test on linux 2019-07-29 12:45:13 -04:00
mmcwilliams 7e05b5f680 Fix dual projector bug and increment patch. 2019-07-27 08:47:35 -04:00
mmcwilliams 741d4619ee Replace all references to dig with filmout 2019-07-27 08:39:39 -04:00
mmcwilliams 7c50b66499 Updated gui mscript lib to use .meta instead of .light when preparing an mscript sequence. 2019-07-26 19:59:16 -04:00
mmcwilliams 96d0897f65 Made a breaking change to the mscript module: light array is now the "meta" array to allow for types of commands other than camera movements to have associated metadata. The two driving motivations for this change are the proposed alert feature which will have a string message as its metadata and the proposed pause feature, which will have seconds as its metadata.
Updated tests as well. Still need to change behavior in the mscript.js gui lib.
2019-07-26 19:54:22 -04:00
mmcwilliams c01f3ceff8 Add jsdoc comments AND semi-colons to sequencer module. 2019-07-26 19:03:42 -04:00
mmcwilliams 4023704d31 Added missing jsdoc comment to method "fade_rgb". 2019-07-26 18:57:17 -04:00
mmcwilliams 798e9ce1a3 Fixed comments in system module to reflect the fact that dependency check happens by executing 'which {cmd}' and storing the response as the absolute path to the binary. If which returns a blank string, dependency is marked not present. 2019-07-26 18:31:22 -04:00
mmcwilliams 6612ffa6d1 Add jsdoc comments to cmd module 2019-07-26 18:30:10 -04:00
mmcwilliams 07100a588c Add jsdoc comments to remaining methods. 2019-07-26 18:12:06 -04:00
mmcwilliams 0b2d386ca2 Compile mscript with Typescript 2019-07-26 17:28:27 -04:00
mmcwilliams f0804fe23b Incorrectly bound counter to wrong device. 2019-07-24 22:00:53 -04:00
mmcwilliams 97591b1c1d Support gifs and stills in filmout 2019-07-24 22:00:23 -04:00