Wykres commitów

973 Commity (2dabf7748501ae7d3d03952367f03f4563de1896)

Autor SHA1 Wiadomość Data
nyanpasu64 2bece4f193 Update CHANGELOG.md 2019-04-08 06:20:48 -07:00
nyanpasu64 b8b8627923 Remove unused strings from GUI 2019-04-08 06:13:29 -07:00
nyanpasu64 10142f5bb4 Fix label scaling, rewrite resolution divisor (#264)
- Alter DPI (pixel/inch) instead of scaling each UI element individually
- Fix matplotlib output dimension mismatches with nonstandard DPIs
  (which may not have occurred at 96dpi).
2019-04-08 05:23:01 -07:00
nyanpasu64 8300ec3682 Add support for per-channel labels (#256)
Known issue: matplotlib's font weight handling is often wrong.
2019-04-08 03:42:46 -07:00
nyanpasu64 ba4326fc4a Replace output/renderer RGB_DEPTH with BYTES_PER_PIXEL (#262)
The new name expresses the semantic meaning of this constant.
The old name is tied to its current value (RGB 3-byte color depth).
2019-04-07 09:10:15 -07:00
nyanpasu64 1c0e66c45f gui: Prevent AttributeError from leaking outside property (#260)
Leaking AttributeError causes hasattr() to return False,
which creates misleading PresentationModel stack traces.
2019-04-07 06:38:42 -07:00
nyanpasu64 c0acffb32f model_bind: Allow both underscores and dots in rgetattr (#258) 2019-04-05 19:46:54 -07:00
nyanpasu64 5ec7b463aa Dump underscore-prefixed fields, refactor config dumping (#255)
If I decide to revert to not dumping _fields:
keep the tests and refactorings, and manually rewrite the changes.
2019-04-04 19:08:59 -07:00
nyanpasu64 3849f7fe85 Refactor renderer API 2019-04-04 18:12:43 -07:00
nyanpasu64 2fc908dd5a Remove code for showing internals
It was untested, already broken since stereo was implemented,
and the multiple ffplay outputs would desync upon pausing.
2019-04-04 18:12:43 -07:00
nyanpasu64 bb84e69b5e Update DumpableAttrs doc comment 2019-04-04 04:12:09 -07:00
nyanpasu64 38a7c34f2e Quit GUI when pressing Ctrl-C in terminal (#252) 2019-04-02 02:41:03 -07:00
nyanpasu64 323ce36137 Make GUI not rely on bool(), remove BoundWidget.__bool__() (#251) 2019-04-01 04:03:22 -07:00
nyanpasu64 bd34d5cf93 Reorganize GUI, move trigger settings to tab (#245) 2019-04-01 03:11:01 -07:00
nyanpasu64 ca563d30ca Switch to bugfix fork of pyinstaller, fix Appveyor builds (#249)
Editing poetry.lock should be performed through
https://github.com/nyanpasu64/poetry.

Otherwise, pyinstaller and all its dependencies will erroneously
be marked as "main". Effects:

    pyinstaller is installed when running poetry install --no-dev.
    pyinstaller is not included into poetry build (neither setup.py nor whl).
    does not affect pyinstaller/Appveyor builds.
2019-04-01 02:52:01 -07:00
nyanpasu64 e812bdfc9e Switch data window to Gaussian (#244)
Seems to reduce jerking and triggering errors.
Remove cosine_flat().
2019-03-28 13:47:46 -07:00
nyanpasu64 3ae86de830 Add keyboard shortcuts to switch tabs (#246)
ctrl+tab, ctrl+pageup/down
2019-03-28 08:24:06 -07:00
nyanpasu64 ca01b8c422 Always draw vertical midline between <0 and >0 samples (#243)
- Add comments on Wave.get_around() even/odd conventions
2019-03-26 16:17:08 -07:00
nyanpasu64 13fb2f31c4 Edit CHANGELOG: 0.4.0 sets default mean responsiveness to 0.05 2019-03-26 04:07:20 -07:00
nyanpasu64 b5c713b403 poetry update 2019-03-26 02:46:01 -07:00
nyanpasu64 5e83abd3aa 0.5.0-pre 2019-03-26 02:21:46 -07:00
nyanpasu64 f9ebbf4a64 0.4.0 2019-03-25 23:08:08 -07:00
nyanpasu64 f591f783b1 Update changelog 2019-03-25 23:05:59 -07:00
nyanpasu64 27b5fc5106 Add Help menu pointing to Github Pages (#242)
Edit GUI backend to allow creating QAction via `create_element(QAction, **kwargs)`
2019-03-25 16:18:19 -07:00
nyanpasu64 030e769413 Mark Channel.render_samp, *_stride as private 2019-03-25 04:37:17 -07:00
nyanpasu64 1ce1e77fb7 Add Channel.get_render_around(trigger_sample) 2019-03-25 04:37:17 -07:00
nyanpasu64 a44cf11525 Merge pull request #241 from nyanpasu64/custom-stereo
Add custom stereo downmixing modes

corrscope treats:
- Flatten.SumAvg -> "sum of all channels"
- "1 1" -> "assert nchan == 2, left + right".
- "1 0" -> "assert nchan == 2, left".

I specifically make `Flatten == str` false,
to prevent the GUI from seeing "1 1" and loading Flatten.SumAvg
into the combo box.

Is this the best choice?

- [ ] In case of dimension mismatch,
    generalize string inputs to multiple channels, by right-padding with
    `if (max(entries) > 0 and min(entries) < 0) 0 else min(abs(entries))`.

## Quirks

- [ ] Logically speaking, taking a mono wav and applying -1 would invert it.
    But mono tracks skip downmixing (`self._flatten = Flatten.Mono`)
    so that doesn't work.
2019-03-25 04:04:41 -07:00
nyanpasu64 0ed61ff7a4 Add custom stereo downmixing and GUI 2019-03-25 02:16:55 -07:00
nyanpasu64 267d1387be Allow multiple widgets updated by each model path 2019-03-25 02:16:31 -07:00
nyanpasu64 4575718e48 Add support for Custom combo box items 2019-03-25 02:16:26 -07:00
nyanpasu64 dcac99c0f0 Add documentation (docs/index.md) 2019-03-25 01:26:07 -07:00
nyanpasu64 573ceb0ec5 Reorganize GUI table, add buffer responsiveness 2019-03-22 23:36:19 -07:00
nyanpasu64 f8f50b25d8 Add screenshot to README 2019-03-22 04:13:17 -07:00
nyanpasu64 eed5ffddb8 Refactor and reorganize trigger GUI (#236)
- Separate trigger options into groups
- Enhance GUI framework
    - `append_widget(name, layout, **kwargs)`
    - `add_row(**kwargs{name=})`
2019-03-21 03:09:57 -07:00
nyanpasu64 ecfa452255 Make trigger/render subsampling preview-only (#235)
- Defaulting to render subsampling=2 leads to ugly Youtube uploads.
In particular, render subsampling hurts fm and high treble freq bands,
which i did not encounter during earlier testing.
- Render subsampling has marginal performance gain I think.
2019-03-14 17:14:16 -07:00
nyanpasu64 418da820f2 Add configurable mean subtraction responsiveness (#234) 2019-03-14 06:00:00 -07:00
nyanpasu64 407454a126 Add slope-detection triggering (#228) 2019-03-14 05:26:41 -07:00
nyanpasu64 c8a598fe68 Speed up mean calculation (?) 2019-03-14 03:38:13 -07:00
nyanpasu64 08458c8906 Move code from triggers.py to new files 2019-03-14 03:26:35 -07:00
nyanpasu64 58b43266b4 [gui] Implement add_row(name=str) 2019-03-14 03:07:05 -07:00
nyanpasu64 c0b68bfd33 Fix crash on unrecognized channel-trigger-dict fields 2019-03-14 02:41:27 -07:00
nyanpasu64 0dc8f8bbca Add iround(x) = int(round(x)) (because round(np.float32) is not int) 2019-03-14 01:26:33 -07:00
nyanpasu64 bbb4b1e7a6 Rename trigger variables 2019-03-14 01:26:33 -07:00
nyanpasu64 939ec54908 Calculate lag prevention using subsamples, don't mix in real samples 2019-03-14 01:26:33 -07:00
nyanpasu64 371e4c1c6b Remove buffer falloff from GUI, set default = 0.5 2019-03-14 01:26:33 -07:00
nyanpasu64 8ccbe9e74a Add 0.4.0-pre to changelog 2019-03-13 03:27:34 -07:00
nyanpasu64 ecbbf1299c Import changelog from 0.3.1 2019-03-13 03:27:33 -07:00
nyanpasu64 e2144f3689 Fix trigger bugs, fix post trigger width, add tests (#231)
- Fix CorrelationTrigger off-by-one on odd buffer widths
- Fix bug where `post_radius` was *2 to become diameter, then treated as radius
- Fix errors in ZeroCrossingTrigger
- Cleanup test_trigger.py
2019-03-13 02:07:45 -07:00
nyanpasu64 39992a222d Add per-project FFmpeg settings (#227) 2019-03-13 00:12:57 -07:00
nyanpasu64 a000743e9a [trigger] Avoid time traveling backwards (#230)
Affects #221.
2019-03-12 22:54:04 -07:00