Commit Graph

27 Commits

Author SHA1 Message Date
Matt McWilliams 498b585b67 Add support for controlling the printer with an NES retro-style USB controller. As long as it has 10 buttons. 2024-11-26 13:27:31 -05:00
Matt McWilliams 70ab8cb527 Improve timing. Sequence takes into account serialDelay within each command and sequenceDelay has no bearing. Was adding 120ms of error to every step 2023-03-01 13:37:22 -05:00
Matt McWilliams 5db5d477e4 Timing is now updated via rolling average on all projector and camera actions. This data is reset when profile is changed. This data is stored in the settings.json and loaded on start so estimates will improve the more it is used. 2023-02-28 15:55:02 -05:00
Matt McWilliams 7741134917 Create the Timing class 2023-02-28 14:30:17 -05:00
Matt McWilliams 9d0545aa4f All capper features in app, can shoot blank frames, can turn on capper independently and can schedule blank frames in the sequencer. Some cleanup may be needed but there are no noticeable regressions in the app. TODO: Finish all arduino scripts. 2022-07-15 18:11:26 -04: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 c6d0256929 Compile renderer js with tsconfig.json file. Add maps. 2020-01-10 16:43:12 -05:00
mmcwilliams f015a6f2c5 Display the time of the completed sequence when passed from main process. 2019-05-28 17:46:53 -04:00
mmcwilliams 4ea390897a Refactored seq.js to Typescript and fixed stats for 1 cam 1 proj. Will need further work to add in multiple devices. Resolves #6. 2019-05-28 13:33:16 -04:00
mmcwilliams 7a52bc7c6e Secondary projector and secondary camera behaviors have been added to the main process. This is not represented in the UI... yet. All renderer code is still in flux. 2019-04-04 18:49:07 -04:00
mmcwilliams 96754fcf49 Work on progress bar. 2019-04-02 10:21:01 -04:00
mmcwilliams 072c67fd0f Update counters. Use local state within objects cam and proj instead of mcopy.state 2019-03-30 20:29:01 -04:00
mmcwilliams 1510762fbb Sequencer uses class variables that are either set using arguments passed from the renderer, or uses the variables named "grid" referring to the grid.js gui. 2019-03-29 20:44:12 -04:00
mmcwilliams c129739394 Sequence module is controlled from the UI. Everything runs in the main.js on the main process. The DOM changes when ipc messages are sent from the sequence module to the render process. 2019-03-24 00:24:39 -04:00
mmcwilliams 43ee0d0672 Sequence now runs entirely in the main process. Renderer no longer stores the sequence, it is a for loop inside the main process. 2019-03-23 21:58:22 -04:00
mmcwilliams 42691c1577 All work on grid + sequencer rewrite. 2019-03-22 17:06:57 -04:00
mmcwilliams 553d2bbb0d Made progress on sequencer module, renamed from sequence. 2019-03-22 04:33:53 -04:00
mmcwilliams 52e6431d65 Rename seq.cmd object keys to new full-length strings 2019-03-22 03:14:16 -04:00
mmcwilliams 742adccf34 Took a tiny detour on the film out feature, or "digital projector". This now avoids showing a browser window fullscreen on mac, which is having performance issues when opening and then running sequences. There is a major source of lag, seemingly coming from the camera? Need to test with fake projector to see if there's a problem with the arduino lib. 2019-03-21 22:33:30 -04:00
mmcwilliams 48e8415ee4 Rename all keys to full "camera_" vs "cam_" and "projector_" vs "proj_" for consistency across the app.
Successfully separate and refactor gui.grid object to gui.
2019-03-21 21:02:28 -04:00
mmcwilliams 7f0ab0fee3 Layout all commands that need to be added for dual projector functionality. 2019-03-20 15:44:07 -04:00
mmcwilliams 9bfc133a67 Add a function to cancel a sequence. This should only be used during "seq.exec()". 2019-03-18 19:42:12 -04:00
mmcwilliams 0fbe45073c Add a seq.cmds object to map named actions to functions. This creates targets for MSCRIPT to compile to, and allows the sequence to be stored in a string array. 2019-03-18 18:42:31 -04:00
mmcwilliams 40b5ecfe69 Digital projector feature added. Select a video and it will be displayed on the main monitor (TODO: address this) and the camera will advance in sync, as with a regular optical printer. 2019-02-08 18:21:16 -05:00
mmcwilliams 1b995be69b Execute an abitrary sequence, while locking up the UI. This is needed for the GO TO functions and the mscript editor. 2018-03-14 23:14:48 -04: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