id |
text |
url |
tags |
updated_at |
5201 |
для isomorphic - не делать 12 slots аля квинтовый круг, Все делать на 1ной плоскости. (но piano roll 1D внизу все равно нужно)
Но возможность изобразить > 1 лада на плоскости нужна, поэтому делить each hexagon into 12 parts, every part can have own color.
Добавить такую штуку в базовый класс. Разделение на 12 частей ноты должно поддерживаться и для Square и для hex и для pianoroll1d |
|
musictool
|
a day ago |
5196 |
add support for multichannel midi. Also provide merged channels method /property (use colorgrid?) |
|
musictool
|
a day ago |
5197 |
use `NestedSVG` in `Piano`
create sub-svgs for black_small=True, black_small=False pianos, title/subtitle etc |
|
musictool
|
a day ago |
5160 |
добавить в Piano возможность снизу и сверху по несколько color bar делать stack. Чтобы можно было несколько ладов добавить |
|
musictool
|
8 days ago |
5165 |
указать в доке, что в этой либе root - это всегда нижняя нота, от которой отсчитываются интервалы. Если нужны другие штуки - допустим C major в 1 обращении - то нужны дополнительные действия / пока не поддерживается, либо добавить отрицательные интервалы
вот хз, нужно ли как-то добавлять/различать `root=E major_inv1 frozenset({0, 3, 8})` и `root=C major_inv1_some frozenset({0, -8, -5}` |
|
musictool
|
9 days ago |
5115 |
generate different patterns and play them |
|
musictool
opseq
|
15 days ago |
5021 |
короче в ableton на вкладке note expression есть аля MPE штука для норм pitchbend. Но Мне нужно удобную UI сделать чтобы всякие Gamak по синусоиде в том числе было удобно быстро делать, наверное все же для каждой ноты кликать и insert pattern делать |
|
musictool
|
23 days ago |
4826 |
delete note requirement for `parse.MidiPitch` objects. When making pianoroll - automatically detect current note for pitchbend events. If there'are overlaps - draw multiple pitchbend lines for each currently playing note
Seems like `parse_midi` is kinda already doing this job, UPD: no, drop note from `MidiPitch`. (inconvinient for other purposes) parse again when drawing pianoroll |
|
musictool
meend-gui
|
2023 Aug 12 07:54 |
4819 |
add pitchwheel event support to midi player |
|
musictool
meend-gui
|
2023 Aug 11 17:49 |
4631 |
Black=small 1d piano roll заставляет юзать inversions потому что обычные аккорда там слишком далеко прыгать |
|
musictool
bhairava
|
2023 Jul 16 09:37 |
4568 |
Rename config to constants, delete unused |
|
musictool
issues
|
2023 Jul 16 08:52 |
4570 |
use python3.11 Self |
https://peps.python.org/pep-0673/ |
musictool
issues
|
2023 Jul 16 08:39 |
4567 |
add quotes to strings in repr objects eg `Note(name=E)` should become `Note('E')`
delete `name` kwarg from repr |
|
musictool
issues
|
2023 Jul 16 08:37 |
4566 |
delete support for creation SpecificNote from string in `__init__` (use explicit from_str method) |
|
musictool
issues
|
2023 Jul 16 08:36 |
4564 |
cache piano repr strings |
|
musictool
issues
|
2023 Jul 16 08:25 |
4563 |
piano add support for black_small=True but without card (using top row of the keyboard)
But there also should be flag to put piano keyboard at the bottom
|
|
musictool
issues
|
2023 Jul 16 08:24 |
4562 |
add pyright |
https://github.com/microsoft/pyright |
musictool
issues
|
2023 Jul 16 08:24 |
4561 |
Rename note.i to ct (cents units) |
|
musictool
issues
|
2023 Jul 16 08:23 |
4052 |
musiclib: ruff, move config to pyproject.toml |
|
musictool
todo
|
2023 Feb 23 14:50 |
2624 |
merge musictool- pyqt-based project into one with different branches (too many entities) |
|
musictool
todo
|
2022 Jul 29 07:05 |
1759 |
Delete onclick from piano |
|
musictool
|
2022 Jun 02 06:48 |
1668 |
unify note_colors, border. top_rect fill, border, onclick, square href |
|
musictool
|
2022 May 21 19:45 |
1667 |
maybe delete stop from NoteRange. this will enable negative indexing |
|
musictool
|
2022 May 21 19:23 |
1666 |
allow (implement) empty `NoteRange` |
|
musictool
|
2022 May 21 19:03 |
1659 |
note_on with 0 velocity instead of note_off - Google Search |
https://www.google.com/search?hl=en&q=note_on%20with%200%20velocity%20instead%20of%20note_off |
musictool
|
2022 May 20 16:17 |
1657 |
мб типа отвечать не цифрами интервалы (не особо запоминается) и не маскотами а типа нужно на миди клаве указать этот интервал от ноты `C` (нажать клавишу) |
|
musictool
|
2022 May 20 15:02 |
1646 |
fix `NoteRange` slicing
this code fails:
```py
>>> noterange = NoteRange(SpecificNote('C', 0), SpecificNote('B', 1))
>>> noterange[:3]
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
Input In [57], in <cell line: 1>()
----> 1 noterange[:3]
File /usr/local/lib/python3.10/site-packages/musictool/noterange.py:53, in NoteRange.__getitem__(self, item)
51 if isinstance(item, int): return self._getitem_int(item)
52 elif isinstance(item, slice):
---> 53 if not 0 <= item.start <= item.stop <= len(self):
54 raise IndexError('NoteRange slice is out of range')
55 return NoteRange(self._getitem_int(item.start), self._getitem_int(item.stop), self.noteset)
TypeError: '<=' not supported between instances of 'int' and 'NoneType'
``` |
|
musictool
|
2022 May 19 14:45 |
1642 |
Anki: интервалы. Показывают 2 любые клавиши а ты говоришь интервал между ними |
|
musictool
|
2022 May 19 08:07 |
1635 |
# change tree scheduling to flat tasks scheduling ProcessPoolExecutor (in sequencebuilder)
do not yield from `_generate_candidates` to keep it flat. return some data which you can use to create another task from main parent thread.
- [x] set equality (order is arbitary)
- [ ] strict order equality
- [ ] add examples to test exact values (instead of comparing parallel to sequential)
- [x] `FIRST_COMPLETED` vs `FIRST_EXCEPTION`
- [ ] try map and chunksize
context switching is kinda slows everything down |
|
musictool
|
2022 May 18 21:51 |
1634 |
make NoteSet subclass of frozenset
or implement all frozenset methods without subclassing |
|
musictool
|
2022 May 18 21:50 |
1633 |
# Use pyqt instead of websocket browser frontend
## features list draft
- [ ] easy transpose/rotate horizontaly and verticaly
- [ ] history, controll speed
- [ ] draw lookahead pale notes when playing MIDI file
- [ ] step by step execution for midi files (each step executes messages for a single time step)
- [ ] different colors for different channels / instruments
- [ ] transpose pitch |
|
musictool
|
2022 May 18 21:49 |
1632 |
move color constants from config to `util.color` |
|
musictool
|
2022 May 18 21:49 |
1630 |
websocket server feature
draw circle of 5ths (musictool.tandav.me) using pale colors
and when you play notes - highlight them (bright colors for `playing_notes`) |
|
musictool
|
2022 May 18 21:48 |
1629 |
more test cases in test_voice_crossing, use parametrize |
|
musictool
|
2022 May 18 21:47 |
1628 |
# add docs, readthedocs etc
### some links
- [Ask HN: What would you improve about the whole “writing docs” experience? | Hacker News](https://news.ycombinator.com/item?id=26626502)
- [Docs Worth Writing | Hacker News](https://news.ycombinator.com/item?id=22270568)
- [mkdocs vs sphinx at DuckDuckGo](https://duckduckgo.com/?q=mkdocs+vs+sphinx&ia=web)
- [Writing Docs Is Better Than Having Docs](https://enpiar.com/2019/02/17/writing-docs-is-better-than-having-docs/)
- [Ask HN: How do I get into the habit of writing comments/docstrings? | Hacker News](https://news.ycombinator.com/item?id=22351711)
- [Writing Technical Design Docs | Hacker News](https://news.ycombinator.com/item?id=27147568)
- [Writing the Docs First | Hacker News](https://news.ycombinator.com/item?id=10007401)
- [Ask HN: What is key to good technical documentation? | Hacker News](https://news.ycombinator.com/item?id=20909783)
- [Ask HN: What are you using for public documentation these days? | Hacker News](https://news.ycombinator.com/item?id=29264374)
- [Ask HN: Any good collaboratively built documentation on good parenting? | Hacker News](https://news.ycombinator.com/item?id=17023693)
- [Ask HN: How does your team handle knowledge documentation? | Hacker News](https://news.ycombinator.com/item?id=15637194)
- [Ask HN: Which Wiki or internal documentation tools do you use? | Hacker News](https://news.ycombinator.com/item?id=18874707)
- [Ask HN: How do I write good documentation? | Hacker News](https://news.ycombinator.com/item?id=8414714)
- [Ask HN: How does your team write documentation? What tools do you use? | Hacker News](https://news.ycombinator.com/item?id=11164013)
- [Ask HN: How to write documentation for a medium size engineering org? | Hacker News](https://news.ycombinator.com/item?id=26334164)
- [Ask HN: How Do You Write Documentation | Hacker News](https://news.ycombinator.com/item?id=26446692)
- [Ask HN: How to keep process documentation up to date? | Hacker News](https://news.ycombinator.com/item?id=18638113)
- [Etsy’s experiment with immutable documentation | Hacker News](https://news.ycombinator.com/item?id=18674158)
- [Ask HN: What do people use for documentation sites these days? | Hacker News](https://news.ycombinator.com/item?id=30366886)
- [Ask HN: Why are documentation only showing 1 example if any | Hacker News](https://news.ycombinator.com/item?id=24939227)
- [Technical documentation that just works | Hacker News](https://news.ycombinator.com/item?id=27283521)
- [Four kinds of documentation | Hacker News](https://news.ycombinator.com/item?id=21289832)
- [A Framework for Writing Better Documentation | Hacker News](https://news.ycombinator.com/item?id=26002656)
- [Don't write documentation in Markdown | Hacker News](https://news.ycombinator.com/item?id=22675165)
- [Is it a good decision to use MkDocs for building static sites? | Hacker News](https://news.ycombinator.com/item?id=30582842)
- [Show HN: MkDocs Material Boilerplate – Starter Kit | Hacker News](https://news.ycombinator.com/item?id=19270575)
- [Examples — statsmodels](https://www.statsmodels.org/stable/examples/index.html)
- [MkDocs: Generate and Serve Project Documentation, with Markdown Support | Hacker News](https://news.ycombinator.com/item?id=11752058)
- [MkDocs Themes · mkdocs/mkdocs Wiki](https://github.com/mkdocs/mkdocs/wiki/MkDocs-Themes)
- [Show HN: A Book Published with MkDocs | Hacker News](https://news.ycombinator.com/item?id=16356306)
- [MkDocs: Project Documentation with Markdown | Hacker News](https://news.ycombinator.com/item?id=24171878)
- [MkDocs 1.0 | Hacker News](https://news.ycombinator.com/item?id=17716791)
- [Writing great documentation | Hacker News](https://news.ycombinator.com/item?id=1431048)
|
|
musictool
|
2022 May 18 21:46 |
1627 |
Realtime playing in terminal, draw colors, scales on keyboard using rich, colorama libs |
|
musictool
|
2022 May 18 21:46 |
1626 |
Sample random chords with root from graph. And then find shortest paths between them
Use it for everlasting video |
|
musictool
|
2022 May 18 21:45 |
1625 |
Add helper to find all I - V paths. (with resolving leading tone in V - I) |
|
musictool
|
2022 May 18 21:44 |
1624 |
add test for make_major_scale_leading_tone_resolving_semitone_up |
|
musictool
|
2022 May 18 21:44 |
1623 |
save chord transitions checks to sqlite
schema:
- chord a (str) (eg `C3_G5_C6_E7/C`)
- chord b (str)
- check function name (str)
- return (bool)
function checks table:
- check function name (str)
- function code (str)
- sha? md5?
|
|
musictool
|
2022 May 18 21:44 |
1622 |
add util function to make legato notes in chord progressions |
|
musictool
|
2022 May 18 21:43 |
1621 |
# Test all meters , eg 4/2
4/2 means there are 2 whole notes in a bar (not 1 as on 4/4)
maybe this will be confusing notation (whole note no more means 1 bar)
seems like denominator is powrs of 2:
> Any time signature can be used, provided it has a numerator between 1 and 99 and a denominator with a beat value of 1, 2, 4, 8 or 16.
https://www.ableton.com/en/manual/session-view/#tracks-and-scenes
maybe this is all useless because note durations in MIDI file are represented by on/off ticks, not by fractions (1,1/2,1/4 etc) |
|
musictool
|
2022 May 18 21:43 |
1620 |
inherit SpecificChord from Chord or from NoteSet |
|
musictool
|
2022 May 18 21:42 |
1619 |
add new features to MIDI module
probably `heapq.heappush` in `parse_notes` is unnecessary. Try simple list. |
|
musictool
|
2022 May 18 21:42 |
1618 |
multiple colors on notes (split vertically and divide height by number of colors) |
|
musictool
|
2022 May 18 21:41 |
1617 |
move Piano heading to svg (drop html??) |
|
musictool
|
2022 May 18 21:41 |
133 |
# musictool |
|
musictool
README
|
2022 May 18 20:40 |
223 |
- [cv2.addWeighted() | TheAILearner](https://theailearner.com/tag/cv2-addweighted/)
- [OpenCV: Adding (blending) two images using OpenCV](https://docs.opencv.org/3.4/d5/dc4/tutorial_adding_images.html)
- [OpenCV: Operations on arrays](https://docs.opencv.org/3.4/d2/de8/group__core__array.html#gafafb2513349db3bcff51f54ee5592a19)
|
|
musictool
|
2022 May 18 18:31 |
150 |
Anki web тренажёр запилить для интервалов ( и потом для всего)
дается root и интервал, нужно его кликнуть на пианино 🎹
потом дается root и клавиша выше него. нужно сказать какого она цвета.
---
- все ответы логгировать и в базу. ятобы потом считать стату с группировкой по ладам.
- юзать стандартгый протокол anki а не свои клстыли мб ?
- [knowledge/anki.md at main · nikitavoloboev/knowledge](https://github.com/nikitavoloboev/knowledge/blob/main/docs/anki/anki.md) |
|
musictool
|
2022 May 17 17:44 |
148 |
С помощью нескольких цветов можно все subscales запомнить с помощью цветов
по сути триколор/двуколор итл - флаги
если лад энгармонический из dorian, mixolydian - то клавиша из 2х цветов : green, yellow |
|
musictool
|
2022 May 17 17:41 |
146 |
Возможность нажать на запись и записать миди
и потом он тебе говорит какие лады он тут нашел (со всеми энгармонизмами)
и показывает цветные пианинки |
|
musictool
|
2022 May 17 17:40 |