Wykres commitów

252 Commity (0ee3f6af92ae5ed2de7208a44b3024c97aba9b58)

Autor SHA1 Wiadomość Data
nyanpasu64 0ee3f6af92 Remove LocalPostTriggerConfig from default_config (due to speed hit) 2018-10-30 18:01:38 -07:00
nyanpasu64 1f934c2b03 Demean data before triggering
CorrelationTrigger computes mean and stores into cache.
- Both input data and buffer-update data are demeaned.

LocalPostTrigger uses `cache.mean` to demean data.
2018-10-30 18:01:38 -07:00
nyanpasu64 a8a58cb3c0 Make LocalPostTrigger quit if edge correlation is negative 2018-10-30 18:01:38 -07:00
nyanpasu64 c15334fe54 Make PostTrigger normalize input data by peaks
Without normalization, the stronger the data is,
the larger correlation it has with the edge trigger.
The parabolic cost function is more effective at low signal strengths.
2018-10-30 18:01:38 -07:00
nyanpasu64 3beaee923c [wip] Add PostTrigger and LocalPostTrigger
A post-processing trigger should have subsampling=1,
and no more post triggers.

LocalPostTrigger uses a parabolic cost function for shifting to find
edges. It doesn't work well and needs tweaking.
2018-10-30 18:01:38 -07:00
nyanpasu64 cc7b9b35ac Add ITriggerConfig.post and Trigger.post for trigger chaining
One would think `use_edge_trigger` should be an InitVar.
But it breaks test_trigger_subsampling() which is parameterized on
`cfg.use_edge_trigger` (and I want to keep it that way, not peek at
`cfg.post`).

I also copied test_trigger_subsampling to test_post_trigger_subsampling,
to test `cfg.post`.
2018-10-30 18:01:38 -07:00
nyanpasu64 6c4e128031 Add PerFrameCache class to cache period over multiple triggers 2018-10-30 18:01:38 -07:00
nyanpasu64 34877f4f37 reconfigure pycharm 2018-10-30 18:01:38 -07:00
nyanpasu64 584b42ea19 [CorrelationTrigger] extract variable 2018-10-30 18:01:38 -07:00
nyanpasu64 15f7a1ec4a Remove unneeded dependencies from setup.py 2018-10-30 01:15:38 -07:00
nyanpasu64 a2b10e8541 Fix bug which dumps empty lists to YAML (show_internals: []) 2018-10-29 22:21:38 -07:00
nyanpasu64 6073ec926e Add 2-clause BSD license 2018-10-12 03:56:25 -07:00
nyanpasu64 3fd37133da Fix test on Windows 2018-09-05 17:41:42 -07:00
nyanpasu64 dd1f2b7b1d Merge pull request #52 from nyanpasu64/terminate-ffmpeg
Properly terminate FFmpeg output processes
2018-09-05 17:40:44 -07:00
nyanpasu64 355071d7c8 Add output test, ensure Ovgen closes pipe to ffmpeg 2018-08-29 01:08:05 -07:00
nyanpasu64 a62f1561cf Fix output pipeline tests (unique Popen mocks) 2018-08-29 00:57:08 -07:00
nyanpasu64 a3e6db27b6 Add `-movflags faststart` to video template
Closing ffmpeg stdin properly causes `-movflags faststart` to no longer
produces corrupted video files.
2018-08-28 03:21:57 -07:00
nyanpasu64 8f521529c2 Disable unit test (creates a popup window) 2018-08-28 03:21:57 -07:00
nyanpasu64 aae4646157 Properly terminate output processes (including exceptions) 2018-08-28 03:21:49 -07:00
nyanpasu64 970fffef0c Rename _FFmpegCommand to _FFmpegProcess 2018-08-28 03:03:11 -07:00
nyanpasu64 97c8f88c20 Merge pull request #51 from nyanpasu64/config-end-time
Add Config.end_time parameter
2018-08-27 21:34:40 -07:00
nyanpasu64 115222b1c9 Add Config.end_time parameter
Useful for truncating video rendering (via FFmpegOutput), since Ctrl+C
results in broken video files.
2018-08-27 20:58:31 -07:00
nyanpasu64 cc13f3c50c Merge pull request #49 from nyanpasu64/fix-cli-dirs
Fix bugs when dumping/loading YAML in another directory
2018-08-27 16:55:15 -07:00
nyanpasu64 f917c3bdc6 Fix bug where test_output writes to ./- instead of stdout
Also remove gibberish from test_output
2018-08-27 14:57:40 -07:00
nyanpasu64 ba17f64618 [wip] Fix loading YAML config from another directory
Bugs: FFmpeg writes to file named "-"
2018-08-27 04:48:35 -07:00
nyanpasu64 590aad12ba Add test for loading YAML config from another directory 2018-08-27 04:31:37 -07:00
nyanpasu64 e1c4bdbbdb Fix CLI YAML output path (should write to current dir) 2018-08-27 01:47:39 -07:00
nyanpasu64 74f260711c Add test for command-line write paths
Fails at the moment
2018-08-26 23:50:21 -07:00
nyanpasu64 7e93c60f9a Fix tests (CLI sink fixtures) 2018-08-26 23:48:36 -07:00
nyanpasu64 7923812407 Update PyCharm config: add Git commit message limits 2018-08-26 23:47:44 -07:00
nyanpasu64 2042061633 Update .gitignore to exclude .orig merge files 2018-08-26 23:47:28 -07:00
nyanpasu64 de22e277f0 Make Config.subsampling optional (#38) 2018-08-26 22:10:38 -07:00
nyanpasu64 49640e60fb Merge pull request #45 from nyanpasu64/improve-bass
Revamp support for long windows
2018-08-26 19:34:02 -07:00
nyanpasu64 29798e7343 Increase trigger performance, cache and reuse data window
Reuses data window if period is within 1 semitone of saved window.
2018-08-26 19:33:34 -07:00
nyanpasu64 3af6af7b99 Fix trigger crash bug
If get_period returns np.int64, `round(period * x)` (x=float) produces
np.float64 instead of int.

The previous commit changes (for x in cfg.trigger_falloff) from int to
float.
2018-08-26 18:44:55 -07:00
nyanpasu64 4c9b8f96ce Reorganize CorrelationTriggerConfig
use_edge_trigger and edge_strength serve the same purpose.
trigger_falloff and lag_prevention both control input data windowing.
2018-08-26 18:31:16 -07:00
nyanpasu64 d8c3ef48ef Increase trigger performance, don't calculate period twice per frame 2018-08-26 17:00:55 -07:00
nyanpasu64 cd0dbc5de6 Save CProfile snapshots to useful filenames 2018-08-26 16:10:02 -07:00
nyanpasu64 95895d8a07 Reorganize Config, add global trigger_width and render_width
`trigger/render_width` are grouped with `width_ms`, because they modify
`width_ms`.

`trigger/render_width/trigger` are grouped together, since `channels`
can override them.
2018-08-26 01:47:23 -07:00
nyanpasu64 e42d235343 Rename trigger/render_width_ratio to trigger/render_width
trigger/render_width multiplies how wide the window is, in milliseconds.
2018-08-26 01:24:26 -07:00
nyanpasu64 e491afce60 Add CorrelationTriggerConfig parameter validation 2018-08-26 01:19:47 -07:00
nyanpasu64 979c16d9c2 Add configurable lag_prevention parameter to trigger
lag_prevention ranges from 0 to 1. Lower values have a narrower fadeout
for old data, leaving more data untouched for the correlation process.
2018-08-26 01:19:33 -07:00
nyanpasu64 9b76cc1731 Remove unused broken function 2018-08-26 00:16:47 -07:00
nyanpasu64 93af9a9a58 Add `show_internals` option to show 'window' or 'buffer' 2018-08-26 00:16:47 -07:00
nyanpasu64 494ce2bf69 Add ability to load legacy YAML files
Add Ignored and Alias fields to Config and CorrelationTriggerConfig.
2018-08-25 22:44:42 -07:00
nyanpasu64 98a13e9c5b Add Ignored object, for discarding config fields 2018-08-25 22:25:09 -07:00
nyanpasu64 56438bed5c Add Alias class, for config field aliasing 2018-08-25 22:19:09 -07:00
nyanpasu64 acffc1a55e Fix unit tests 2018-08-25 18:51:01 -07:00
nyanpasu64 a7b1c06114 Rename Channel.nsamp to window_samp 2018-08-25 18:50:57 -07:00
nyanpasu64 2f08ca9ad8 Rename Trigger(nsamp=) to tsamp 2018-08-25 18:50:20 -07:00