Автор Тема: Программа для построения аккордов на ступенях лада.  (Прочитано 35046 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн acher8080

  • Опытный
  • ****
  • Сообщений: 549
  • Репутация: +63/-0
    • http://vk.com/alexcherevkov
теперь я боюсь за archeg'а...

 
это точно:))

Оффлайн BioByte

  • Новичок
  • *
  • Сообщений: 63
  • Репутация: +1/-1
Лично я абсолютно четко представляю, как она должна работать, какие минимальные функции иметь, как это должно выглядеть и для чего нужно.
Собственно это и есть документация. Для сравнения то, что в этой теме называется "пожелания" и TODO, чтобы их исполнить нужно сначала понять о чем речь, в чем и должна помочь документация :) А тех.задание это вообще очень строгая штука, где расписано кому, что, и в каком порядке делать, понятно что от "заказчиков" ничего такого не требуют, а пишут сами и дают на подпись ;)

Что должна представлять из себя "документация" и "набор текстов"?
С документацией вроде ясно, текстовик, где указанно для чего нужно, и как должно выглядеть, очень кстати, если там будут картинки :) Объяснять теорию и термины, разумеется не нужно. Если текущий внешний вид приемлем, то указать какие блоки для чего нужны и чем в идеале должны управлять. "Тесты" это набор данных на входе и на выходе. Желательно не тривиальные и разнообразные, хотя бы десяток. Картинки выше я назвал не полными, т.к. не очевидно что там "было" на входе.

Оффлайн Magoga

  • Завсегдатай
  • ***
  • Сообщений: 403
  • Репутация: +35/-2

Оффлайн ёjё Автор темы

  • Живу на форуме
  • *******
  • Сообщений: 9363
  • Репутация: +1598/-36
  • xxx
Если текущий внешний вид приемлем,
Я, честно говоря, не знаю, приемлим ли внешний вид. Внешний вид может быть разный - мне кажется, это зависит от возможностей и выбора "инструментов" программиста. Поэтому я исхожу из того, что уже есть.

Цитировать
то указать какие блоки для чего нужны и чем в идеале должны управлять.

Я готов попытаться как-то описать, что к чему. Но как быть с " мутная цель типа: прога нужна для построения аккордов на ступенях различных ладов."
Считаете ли вы попрежнему цель мутной?
Цитировать
http://www.looknohands.com/chordhouse/guitar/index_rb.html
Кстати, BioByte, а Вы читали самое первое сообщение этого топика? Это так, на всякий случай.

... и добавил:

http://www.looknohands.com/chordhouse/guitar/index_rb.html
Кстати, вот очередная программа, которая показывает гаммы и как-то аккорды-арпеджио, но, во-первых, не может показать аккорды на ступенях лада, а во-вторых, зажата рамками "предустановок", из которых я должен выбирать аккорды или звукоряды. Это все не то..
« Последнее редактирование: Января 07, 2010, 03:23:02 от eye »

Оффлайн BioByte

  • Новичок
  • *
  • Сообщений: 63
  • Репутация: +1/-1
читали самое первое сообщение этого топика?
В принципе об этом и речь. Слишком не точный TODO, я по сути системщик т.е. как оно выглядит не важно, главное чтобы корректно работало. Поэтому мне вполне хватило бы небольшого набора тестов на которых можно "погонять" текущие алгоритмы и понять, что там криво. Первый мой пост, был попыткой высказаться за общественность 8) Считаю, что при точной постановке задачи, желающих слать патчи, будет существенно больше. Главное чтобы не нужно было заранее "подписываться" или уточнять, примерно по схеме - собрал, поправил, отправил патч, понравилось, продолжил.

Но как быть с " мутная цель
Мутная в том смысле, что не вполне для меня ясная. Прогу и картинки видел, поэтому могу предположить что речь буквально: имеем лад, мышой выбираем его ступени (ноты) и соединяем эти ноты кривой в пределах "бокса" и дублируем эту структуру начиная с каждой ступени лада. Не понятно что конкретно понимается под "структурой", скажем нужен аккорд на ступенях 1-3-5, размножаем его как 2-4-6, 3-5-7 и т.д.? Как быть с понижением и повышением ступеней лада, это рассматривается уже как аккорд на другом ладу или просто это никому не интересно?

Понимаю что вопросы наверняка бред, но у меня есть оправдание... мне нравится теория, но совершенно не возбуждает её практическое применение. А с таким подходом, без внятных инструкций можно накосячить так, что за всю жизнь не отладишь. Это к тому, что если этот проект загнется, только потому, что таких как я много и нас нужно организовывать, собственно об этом и писал сходу :crazy:
« Последнее редактирование: Января 03, 2010, 18:56:32 от BioByte »

Оффлайн Krage

  • Эксперт
  • *****
  • Сообщений: 1656
  • Репутация: +1909/-474
  • Hellraiser
    • Музыкальная школа Эллиота Крэйга
Цитировать
Так же исчез Армен из виду, теперь я боюсь за archeg'а...
Никто тебе забесплатно не будет ниче делать.. Мне нужна была простая прога, которая получает на вход цифры и рисует ноты по ним. Весь алгоритм расписан. Хер кто сделал.
А прога моя есть и будет. Но забесплатно я ее фиг отдам. У меня нормального синтезатора нет, а вы хотите, чтобы кто-то за меня на ней зарабатывал. Фигушки.
Цитировать
PS На Краге не обращайте внимания - у него абстинентный синдром. ))
Хоть кто-то понял.
Цитировать
Krage, какие инструменты и оборудование? Соответсвующие мозги и образование ведь не купишь.
А у людей денег нет на мои мозги. Я запросил полтора лимона, а людям не верится... Хорошо, я это буду продавать по частям. Выйдет лимонов на пять. Геморно, но мне выгодней.
А еще спрашивают откуда у меня деньги. Оттуда.

... и добавил:

Цитировать
Считаете ли вы попрежнему цель мутной?
Считаю. В связи с тем, что столкнулся с множеством проблем при проектировании своей проги, могу сказать, что задача УГ. Просто знаю подсчеты. Ну нельзя так реализовать это. Поэтому цель мутная.

... и добавил:

Вам небольшая идейка в подкид. Попробуйте написать алгоритм аппликатуры, то есть расположения пальцев в форме на грифе гитары. Я то написал. Просто интересно, как это реализуют другие, так как прецендентов по этому факту не было... Я когда написал, оказалось, что все не так сложно. Но изначально задача жопистая. Заставить прогу мыслить как человек достаточно сложно. Особенно вложить в нее понимание физиологии руки.
Но запомните, все гениальное просто. ;)
« Последнее редактирование: Января 04, 2010, 02:56:07 от Krage »

Оффлайн ёjё Автор темы

  • Живу на форуме
  • *******
  • Сообщений: 9363
  • Репутация: +1598/-36
  • xxx
могу предположить что речь буквально: имеем лад, мышой выбираем его ступени (ноты)

1) ВЫБОР ЗВУКОРЯДА и выбор тоники  в нем.
Сначала мы выбираем из 12 нот ноты, образующие звукоряд.
Например, E-G-G#-B-C-C#-D - этот звукоряд я выбрал для экспериментов в проге. Названия ему, кажется, нет.
В проге СС, которая на данный момент сделана archeg - этому действию соответствует "step1" - первое окно.
было бы лучше, если бы выбор ступени в окне степ1 сразу отражался на грифе. И так с каждым "степом".

Примечание. Названия нот должны даваться  с учетом знаков  в "тональности", ступени - 1-b2-2-b3-3-4-b5-5-b6-6-b7-7 по мажору. Об этом можно подробнее потом.
Кружочки на грифе могут быть "слепые", либо содержать название нот или ступеней (переключатель).
В принципе можно назначить (переназначить) тоникой любую ступень звукоряда.

Цитировать
и соединяем эти ноты кривой в пределах "бокса" и дублируем эту структуру начиная с каждой ступени лада.
Не понятно что конкретно понимается под "структурой", скажем нужен аккорд на ступенях 1-3-5, размножаем его как 2-4-6, 3-5-7 и т.д.?

Правильно.

2)ВЫБОР СТУПЕНЕЙ БАЗОВОГО СОЗВУЧИЯ.  
Но речь не только об аккордах, а о любом сочетании ступеней, например 1-2-3.
Тогда следующий "аккорд"-созвучие будет  2-3-4, потом 3-4-5 и тд
В проге СС это второе окно - Step2.

3) ВЫБОР АППЛИКАТУРЫ
(Иллюстрации в постах 47,49)
Следующее окно - выбор и расположение ступеней на каждой струне. Назовем это "аппликатурой", хотя не всегда получаемые аккорды будет просто взять. Это окно не реализовано должным образом в проге СС.
Я там на 1 странице предлагал, как сделать эту функцию в рамках проги СС.-
Чекбоксы для выбора соотношения "струна-ступень", которые определяют, порядок ступеней в аккорде и соединение их линиями.
Об окне Chord Shape.
1. Количество рядов чекбоксов - 6 (это струны)
2. Количество столбцов в основном блоке определяется количеством выбранных ступеней в окне Chord Structure
3. Дополнительный столбец для включения педальных открытых струн (особенно актуально в модальных строях). То есть эти струны во всех аккордах звучат открытыми независимо входят они в структуру или нет (по типу A-H: 577600-799800).
4. Еще один дополнительный столбец для отключения струн от показа "отпечатков".
5. Возможно еще один столбец для включения всех нот лада на одной из струн - для добавления мелодии.
6. Отмеченные чекбоксы в соседних рядах или в одном ряду соединяются линиями. Если ни один чекбокс в ряду не отмечен, то "отпечатки" нот видны, но не подключены к линиям.

Кстати, располагая основной тон на одну или несколько струн выше других, получим последовательность аккордов в обращениях.

7. Цвета по аккордовым группам включаются при включении чекбоксов и линий
=========

Справа рядом с грифом можно выбрать каждый аккорд от каждой ступени, который будет отображаться во всех обращениях, либо вся последовательность аккордов в ладу (All Chords), разными цветами.

На каждый этап создаются предустановки для типичных образцов (об этом есть на 1й странице топика):
1. Звукоряды (обычные лады и тд)
2. Созвучия (трезвучия, 7-аккорды, квартовые и тд)
3. "Аппликатуры" (аккордовые формы, прогрессивные аппл 7-акк, акк на 4х верхних струнах)

СУММИРУЕМ
1.Выбираем звукоряд (либо сами создаем, либо из предустновок)
2. В нем определяем структуру созвучия.
3. Получаем результат ввиде
   а) Один аккорд с обращениями - обращения разными цветами (при этом переходя от аккорда к аккорду, можно наблюдать смену гармонии в одной позиции - аккорды одного цвета). (Правда здесь проблема с аккордовыми формами, которые соприкасаются - надо подумать).
   б) несколько аккордов - ( больше одного) на ступенях лада. Возможно достаточно трех вариантов: 1)один - 2)два(соседние) - 3)все.

Цитировать
Как быть с понижением и повышением ступеней лада, это рассматривается уже как аккорд на другом ладу или просто это никому не интересно?

Да, это аккорд другого лада.
Для полиладовой системы или системы с несколькими тональностями (а так же для разных вариантов аппликатур) предполагается возможность создавать какое-то количество закладок (как табы в файл менеджерах ) с грифами, на которых аккорды в разных ладах.

Есть мысли о том, как обзывать аккорды, но об как-нибудь в другой раз.
Надо иметь возможность сохранять картинки.
Хорошо бы иметь возможность захватывать-перетягивать отдельные аккорды с грифа или фрагменты грифа на лист в виде стандартных сеток.
==========
Следующий этап связан с озвучиванием всего этого хозяйства. Но это отдельная песня...
« Последнее редактирование: Января 07, 2010, 06:47:45 от eye »

Оффлайн BioByte

  • Новичок
  • *
  • Сообщений: 63
  • Репутация: +1/-1
eye, Спасибо! Не то чтобы всё понятно, но информации явно достаточно. Основные сложности с этим пунктом
3. Дополнительный столбец для включения педальных открытых струн (особенно актуально в модальных строях). То есть эти струны во всех аккордах звучат открытыми независимо входят они в структуру или нет (по типу A-H: 577600-799800).
T.е. вообще не понятно как на картинку это будет влиять, чем эта струна от выключенной отличаться будет?

Плюс фокус с наименованием ступеней не понятен вроде Ab->G#, есть какое нибудь правило, что это замена стала принципиальной, или просто так нагляднее?

Никто тебе забесплатно не будет ниче делать.
По приколу и не такие вещи делались, главное вещества правильные подобрать :crazy:

Оффлайн Krage

  • Эксперт
  • *****
  • Сообщений: 1656
  • Репутация: +1909/-474
  • Hellraiser
    • Музыкальная школа Эллиота Крэйга
Заставили меня задуматься над педальным басом.. Надо будет фильтр написать по басу.

Оффлайн ёjё Автор темы

  • Живу на форуме
  • *******
  • Сообщений: 9363
  • Репутация: +1598/-36
  • xxx
Основные сложности с этим пунктом T.е. вообще не понятно как на картинку это будет влиять, чем эта струна от выключенной отличаться будет?
Вообще, я в голове держу, что идеально, если программа будет звучать. Поэтому сейчас эти струны мало чем отличаются от выключенных. Разве что за нулевым порожком нарисовать кружочки и можно струну, например, покрасить. Хотя и необязательно красить.
Так же это впоследствии может отразиться на буквенном обозначении аккорда.
Цитировать
Плюс фокус с наименованием ступеней не понятен вроде Ab->G#, есть какое нибудь правило, что это замена стала принципиальной, или просто так нагляднее?
В рамках проги и темперированного строя это для наглядности, хотя в реальности это  вопрос принципиальный Ab и G# - это две разные ноты.
Но данная наглядность тоже является принципиальной. Например (пример не исчерпывает все нюансы, описывать их - долго), музыкант, знакомый с нотами или имеющий какой-то профессиональный опыт, знает, что Ми мажорное трезвучие состоит из терций E-G#-B=1-3-5 и если увидит E-Ab-B, просто "не узнает" аккорда, так как это уже не тональность Ми, которая диезная, правописание иное, незнакомое, не терцовая структура и содержит странные ступени 1-b4-5. Более того, в зависимости от того, как они записаны, музыкант начинает истолковывать и слышать их иначе  - ведь хотя в нотах тяготения не отражены, они основа звучания музыки. Поэтому такая наглядность является принципиальной для восприятия и нельзя закладывать в музыкальную прогу заведомо безграмотные вещи.

Здесь прога работает грамотно, можно подглядеть - надо выбрать раздел Scales и смотреть знаки  http://www.looknohands.com/chordhouse/guitar/index_rb.html
И ноты и ступени там записываются правильно - смотри также текстовое окошко Details.

Никто тебе забесплатно не будет ниче делать..
Ваша жизнь наполнена неосознанными противоречиями - хотя вы очень хотите денег, делаете все бесплатно, так как никто вам их не дает, а делать что-то хочется. Но по-скольку бесплатно вам делать запрещают принципы, то вы отказываете себе в полноценном делании того, что хочется. В итоге и денег нет и удовлетворения от творчества. Но поверьте, если проблема с деньгами как-то более менее решена, то понимаешь, что для творческого человека деньги - ничто, они нужны просто для того, чтобы обеспечить условия для занятий чем-то интересным и полезным с вашей точки зрения. Тогда наступает половина счастья ))
« Последнее редактирование: Января 04, 2010, 21:12:00 от eye »

Оффлайн BioByte

  • Новичок
  • *
  • Сообщений: 63
  • Репутация: +1/-1
eye, в простых случаях всё ясно, вроде тех что в проге по ссылке, там со ступенями всё ровно. Меня смутил ваш пример, допускаю что это некая разновидность пентатоники, вроде блюзовой где тритон наверное даже за самостоятельную ступень не считается... Но в примере намек на септаккорд на 1,3,5,7 ступенях, а если последовать примеру выше E-G#-B=1-3-5, то ступени 1,3,5 будут читаться как E,G#,C их в таком виде тоже мало кто узнает ???

Оффлайн ёjё Автор темы

  • Живу на форуме
  • *******
  • Сообщений: 9363
  • Репутация: +1598/-36
  • xxx
 
Цитировать
Но в примере намек на септаккорд на 1,3,5,7 ступенях, а если последовать примеру выше E-G#-B=1-3-5, то ступени 1,3,5 будут читаться как E,G#,C их в таком виде тоже мало кто узнает
E,G#,C - это увеличенное трезвучие (1,3,+5) и в таком виде вполне узнается.
Некую степень энгармонизма для измененных ступеней допустимо использовать. Но не для основных.
Здесь не используем дубль диезы и бемоли, а так же альтерации типа E#, B#, Fb, Cb. Это компромисс.

И, кстати, обращаю внимание, что в Chord Structure не использован терцовый принцип. Поэтому, хотя там ноты через одну, это не 1-3-5-7 ступени. Это "квази 7-аккорд". Поэтому в том окошке не проставлены ступени, а указан просто порядковый номер ноты в аккорде.

По идее тот звукоряд надо было записывать, наверное, не
E-G-G#-B-C-C#-D, а
E-Fx-G#-Ax-B#-C#-D
1-#2-3-x4-#5-6-b7
Но это, если основываться на классической теории. А в данном случае выходим за пределы классической тональной музыки.
Поэтому необходимости в таком  "крючкотворстве" нет.

Тему записи нот в тональности уже обсуждали, но на всякий случай сюда скопирую еще раз.
=====================
Еще есть проблема с правописанием нот в гаммах. По идее, после того, как выбрана тоника можно сделать, чтобы прога выбирала один из 12 вариантов написания хроматической гаммы, основанный на ступенях мажорной гаммы каждой тональности:

(1-b2-2-b3-3-4-#4-5-b6-6-b7-7)

С: С Db D Eb E F F# G Ab A Bb B
G: G Ab A Bb B C C# D Eb E F F#
D: D Eb E F F# G G# A Bb B C C#
A: A Bb B C C# D D# E F F# G G#
E: E F F# G G# A A# B C C# D D#
B: B C C# D D# E E# F# G G# A A#
F#: F# G G# A A# B B# C# D D# E F (здесь должен быть E# по идее, но мы гетарасты, нам можно )))

F: F Gb G Ab A Bb B C Db D Eb E  
Bb: Bb B C Db D Eb E F Gb G Ab A (B=Cb здесь так же отказался от правильного написания)
Eb: Eb E F Gb G Ab A Bb B C Db D
Ab: Ab A Bb B C  Db D Eb E F Gb G (здесь по идее должен быть Bbb, да ну его... )
Db: Db D Eb E F Gb G Ab A Bb B C  (ох, как безграмотно, а если вдуматься, может и нет )))

... и добавил:

Цитировать
eye, в простых случаях всё ясно, вроде тех что в проге по ссылке, там со ступенями всё ровно.
Ну не так уж там все ровно. Посмотрите например как там Super Locrian выглядит (кстати, сделано как положено - без компромиссов)
E Super Locrian
intervals:  1,b2,#2,3,#4,#5,b7
half-steps: 1-2-1-2-2-2-2
notes:      E,F,F##,G#,A#,B#,D

... и добавил:

Хотя, если считать это разновидностью локрийского, я бы записал этот лад, как
intervals:  1,b2,b3,b4,b5,b6,b7
notes:       E, F, G, Ab,Bb, C, D
Для лада это правильно, но в контексте его использования как родственного лада для альтерированной доминанты (E7alt) - нет, так как исчезает терцовый тон мажорного аккорда.  В общем завист от контекста и без компромиссов не обойтись.

И еще: желательно, чтобы гриф был в 15 ладов, а не 14.
« Последнее редактирование: Января 05, 2010, 07:17:58 от eye »

Оффлайн Krage

  • Эксперт
  • *****
  • Сообщений: 1656
  • Репутация: +1909/-474
  • Hellraiser
    • Музыкальная школа Эллиота Крэйга
Но данная наглядность тоже является принципиальной. Например (пример не исчерпывает все нюансы, описывать их - долго), музыкант, знакомый с нотами или имеющий какой-то профессиональный опыт, знает, что Ми мажорное трезвучие состоит из терций E-G#-B=1-3-5 и если увидит E-Ab-B, просто "не узнает" аккорда, так как это уже не тональность Ми, которая диезная, правописание иное, незнакомое, не терцовая структура и содержит странные ступени 1-b4-5. Более того, в зависимости от того, как они записаны, музыкант начинает истолковывать и слышать их иначе  - ведь хотя в нотах тяготения не отражены, они основа звучания музыки. Поэтому такая наглядность является принципиальной для восприятия и нельзя закладывать в музыкальную прогу заведомо безграмотные вещи
Особенно ваши бемоли для гитариста "стыкуются" с этой темой http://guitarplayer.ru/index.php?topic=126780.0
Все это конечно красиво, но и про тональности не стоит забывать. А то вообще в полный джаз можно уехать.
Кстати, никто не говорил, что джаз не подчиняется музыкальным законам.

... и добавил:

Ваша жизнь наполнена неосознанными противоречиями - хотя вы очень хотите денег, делаете все бесплатно, так как никто вам их не дает, а делать что-то хочется. Но по-скольку бесплатно вам делать запрещают принципы, то вы отказываете себе в полноценном делании того, что хочется. В итоге и денег нет и удовлетворения от творчества. Но поверьте, если проблема с деньгами как-то более менее решена, то понимаешь, что для творческого человека деньги - ничто, они нужны просто для того, чтобы обеспечить условия для занятий чем-то интересным и полезным с вашей точки зрения. Тогда наступает половина счастья ))
ПОлностью согласен... Но если люди не хотят потратить на мое творение хотя бы денег мне на новый ноутбук, то что я могу сделать? Не хотят, пусть сами разрабатывают. Все равно я знаю, что это очень сложно. Ниче ни у кого не получится.
Над какой то галимой системой десятки тысяч людей с зарплатой выше 5 тысяч баксов в месяц в майкрософт работают. А вы хотите, чтобы я один сделал подобное.
Не хотите принимать готовый экземпляр, не надо.
Хотя это моя недоработка. Мне надо бы научиться делать хорошую презентацию. Вот еще одну жизнь потрачу на изучение связей с общественностью, так сразу и продвину идею.
« Последнее редактирование: Января 06, 2010, 20:15:25 от Krage »

Оффлайн ёjё Автор темы

  • Живу на форуме
  • *******
  • Сообщений: 9363
  • Репутация: +1598/-36
  • xxx
Все это конечно красиво, но и про тональности не стоит забывать. А то вообще в полный джаз можно уехать.
Я не понял, что вы хотели сказать.
Но ради "тональностей", тем более "гитарных", не стоило затевать такую программу - там давно все известно и изучено.
Цитировать
Не хотите принимать готовый экземпляр, не надо.
Вы это кому? Лично я от вас ничего не хочу, потому что ваше творение будет основываться на всяких ошибочных представлениях и забдуждениях.
Учиться надо было...
Цитировать
Но если люди не хотят потратить на мое творение хотя бы денег мне на новый ноутбук, то что я могу сделать?
А, понятно, вы хотите ноутбук, а никто не хочет вам его купить... Ну это не удивительно - так устроен мир ))

Но все равно спасибо, что апаете тему.

Оффлайн BioByte

  • Новичок
  • *
  • Сообщений: 63
  • Репутация: +1/-1
Над какой то галимой системой десятки тысяч людей с зарплатой выше 5 тысяч баксов в месяц в майкрософт работают.
Феерический бред ;D Над десктопной ОС трудится обычно 2-3 тыс. человек, подавляющее большинство за существенно более скромную зарплату. А чтоб сравнивать галимую ОС с сабжовой софтиной нужно манию величия иметь невообразимых габаритов ;)