Commit Graph

131 Commits

Author SHA1 Message Date
mmcwilliams 4fb06761aa Use local binaries, not global ones, in build scripts 2018-01-09 12:35:50 -05:00
M McWilliams acb9846015 Build a 64bit version of the app, not a 32bit one. 2018-01-07 00:00:01 -05:00
mmcw-dev d54c62053c Reference os module in main.js app and add intval module, for controling an intval intervalometer with the mcopy GUI. 2018-01-06 17:53:05 -05:00
mmcw-dev fd438d6426 Update command screen button styles to add padding to the icons in the screen. 2018-01-06 17:51:53 -05:00
mmcw-dev af8378de88 Add additional build tools for electron on different platforms. 2018-01-06 17:51:19 -05:00
mmcw-dev a8afd2e187 Add additional icons to command buttons (maybe overkill) 2018-01-06 17:50:53 -05:00
mmcw-dev 3219ef332d Placeholder icons and script for app icon. Windows is still not working, investigate the conversion step to see whether or not it is generating a valid icon. 2018-01-06 17:49:58 -05:00
mmcw-dev 4fb790c338 Scripts containing the first build steps for each of the platforms listed. Each will also need to be paired with a corresponding build tool that packages apps into .dmg, .deb and .msi installers. 2018-01-06 17:49:09 -05:00
mmcw-dev b20c564bed Rename mcopy to arduino in main.js 2018-01-05 15:48:10 -05:00
mmcw-dev 375694e090 Stop building app with mscript.js, gets required by index.js 2018-01-05 15:47:54 -05:00
mmcw-dev d68d647cb2 Rename mcopy lib to arduino 2018-01-05 15:47:29 -05:00
mmcw-dev 71a885d7cd Move and rename all lib modules, all front end goes into /ui and application-side scripts go into their own named directories, like capture, mcopy and mscript 2018-01-05 14:22:40 -05:00
mmcw-dev 4c2af4415c Sequence UI was broken with capture/transfer logic 2018-01-05 09:17:41 -05:00
mmcw-dev a84b1019f1 When devices are discovered, represent that in the UI. 2018-01-04 23:52:06 -05:00
mmcw-dev e683338a35 Add common light types and their RGB values 2018-01-04 23:44:12 -05:00
mmcw-dev b1aac2054a Add a server module, which will be used for optional remote control with a mobile-friendly interface. 2018-01-04 23:43:33 -05:00
mmcw-dev 59b4a51cca Add scroll styles for scrollbar 2018-01-04 23:42:57 -05:00
mmcw-dev 6f7350169b Use settings and now a menu.json file. 2018-01-04 23:42:36 -05:00
mmcw-dev 8bb1997694 Use a settings file instead of cfg.json. Cfg.json becomes hardcoded. 2018-01-04 23:42:16 -05:00
mmcw-dev 9997df1c99 Remove unnecessary q module, am using async or promises where needed. 2018-01-04 23:41:32 -05:00
mmcw-dev df39043100 Replace file-read-then-parse scenario with a require of the config json file 2018-01-04 23:40:55 -05:00
mmcwilliams 4791b7e59e Add cmd buttons and styles. Add delay before registering devices when no serial devices are found. 2018-01-02 09:46:05 -05:00
mmcwilliams 15d0634896 Complete style reorg, now with cmd.less 2018-01-02 01:52:15 -05:00
mmcwilliams 0d2fe71689 Distinguish devices with an empty array if there's an error listing devices OR if there are none found. 2018-01-02 01:43:53 -05:00
mmcwilliams f554bd9659 Re-organize LESS files 2018-01-02 01:43:11 -05:00
mmcw-dev bfdab13ba4 Start database module 2018-01-02 01:17:39 -05:00
mmcw-dev b0709f1200 Add additional firmware types 2018-01-02 01:17:19 -05:00
mmcw-dev f7679e6828 Comment out CMY tab 2018-01-02 01:16:59 -05:00
mmcw-dev c2a079d9af Distinguish devices better and asynchronously 2018-01-02 01:16:33 -05:00
mmcw-dev 2bde6c9a8e ES6 refactor
Can support multiple devices
Uses new types of mcopy firmware distinguishing characters
2018-01-02 01:15:29 -05:00
mmcw-dev 21ec669b20 Install async and update to electron 1.7 with associated deps 2018-01-02 01:14:29 -05:00
mmcw-dev 0354fd655a Remove CMY tab and add command buttons 2018-01-02 01:14:06 -05:00
mmcw-dev 7ec1a08adf Create a settings UI doc, needs to take appropriate features from cfg.json 2018-01-02 01:13:45 -05:00
mmcw-dev 530a6fdd4f Install async module 2018-01-01 23:19:46 -05:00
mmcw-dev 3610d842b5 Display the current loop state below the loop counter setting 2017-12-20 17:12:45 -05:00
mmcw-dev df4eeb9d14 Remove a second require of the electron module 2017-12-20 01:20:37 -05:00
mmcw-dev 88fe5cf9eb Make pad borders thicker (looks good) 2017-12-20 01:20:20 -05:00
mmcw-dev afcc05a2e7 Remove unnecessary extra declaration 2017-12-20 01:20:07 -05:00
mmcw-dev 6c8607bbc5 Begin database module 2017-12-20 01:19:51 -05:00
mmcw-dev 26e3428fa8 Got UI working again. 2017-12-19 22:54:39 -05:00
mmcwilliams 339303c0c2 Update modules, use latest electron and fix bad requires. App is up and running, but needs debugging of the frontend and a fierce refactor. 2017-12-19 22:02:08 -05:00
Matt 236908993e Update requirements 2017-02-09 09:35:07 -05:00
Matt 76cd62449e Remove automatic transfer reporting 2016-06-29 12:01:17 -04:00
Matt 474af9c568 Capture and generate transfer report data 2016-06-21 15:53:07 -04:00
Matt c6fb0bfaa3 Add transfer listener to main.js 2016-06-21 15:25:46 -04:00
Matt 84a8df4a78 Make seq-ui module strict 2016-06-21 15:25:29 -04:00
Matt 7bbbf7ee7b Restructured eventEmitter into various modules 2016-06-21 12:12:14 -04:00
Matt cdd14b9ed5 Restructure main script 2016-06-21 11:05:44 -04:00
Matt 7e1a4be0cf Emit an event on arduino serial events
To be listened to by other modules
2016-06-21 11:04:57 -04:00
Matt c10252a9ee capture-report library for creating a telecine method
The purpose of this module will be to generate a report of the
projector actions that can be translated into rendering instructions
for a telecine.

First tests will be done on a Blackmagic Pocket Cinema camera which
will record a 4000 frame sequence (100ft of 16mm). The report will
allow me to record the entire sequence of the projector advancing 4000
frames and will make a list of acceptable frames to pull out for
stitching together into a sequence. It is amazingly inefficient in
terms of disk space, but will make this setup much cheaper than one
that requires purchasing hardware to capture images to disk during
operation.

Rubber ducking: The report will watch for projector start and end times
in milliseconds, with a “start” value to be factored in later. On every
projector start and end event, when capture is active, an event with
the millisecond of the occurrence is logged to the report. At the end
of the sequence, the report will be parsed to determine the acceptable
frames to export into a new sequence. This will be determined by
finding a period between proj_end and proj_start events and dividing
that into frames and picking the central most frame.

Acceptable frames, marked by frame numbers, get put into an render list
that gets pegged to a first frame and adjusted via offset. The export
list will be fed into a command that will go through either a video
file or an image sequence and output the determined frames into an
image sequence that will be stitched together with ffmpeg/libav.
2016-06-18 20:49:39 -04:00