Рипер для плейбеков

Тема в разделе "Reaper", создана пользователем Chehov, 12 июл 2018.

  1. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Так!
    Новая версия v15
    Что сделано:
    1. Сохраняется последня позиция и габариты GUI скрипта.
    2. С Shift + ЛКМ можно ставить и удалять любое кол-во "+" и "]" - в общем действия логичные, думаю разберётесь - если выбрана хоть одна композиция "+" и "]" , то с щелчком мыши и с зажатым Shift на композиции ниже (хоть самой последней) скрипт выберет ВСЕ между, если вы тоже самое делаете кликая вверху блока выбранных - выбор снимется со всех между -
    PlayList 008.gif
    3. Добавлена кнопка " One Hand" - нажатие которой в течении 5 секунд (это время можно будет поменять - скажете какое) скрипт позволит ставить "+" и "]" просто ЛКМ без Cntr.
    4. Изменена цветовая гамма имён композиций - Текущей и последующей - если выбранна Первая в Концерте - Имя Зелёное, если следующей она -же (если концер зациклен) - тоже зелёной, если следующей нет - пишется красным - "End of the Concert. Во всех прочих ситуациях цвет имён - Белый.
    5. Исправленно некоторое кол-во мелких ошибок.
    --- добавлено 17 авг 2018 ---
    Не нажимайте кнопку "One Hand" и будет безопасный режим.
    --- добавлено 17 авг 2018 ---
    PS: Осталось доделать Left Compos/Time и пока всё!
    --- добавлено 17 авг 2018 ---
    PSS: Всё таки нужно добавлять ещё один Регион - Пустышку в конце проекта, иначе будут некоторые глюки и нельзя будет выбрать закольцовку всего концерта, если последняя композиция в концерте является последней в проекте.
    Пока не придумал как без Empty Region в конце проекта обойтись!
     

    Вложения:

    Последнее редактирование: 17 авг 2018
  2. SoundExplosion

    SoundExplosion Well-Known Member

    Регистрация:
    22 янв 2009
    Сообщения:
    987
    Симпатии:
    734
    Пол:
    Мужской
    @Aleksandr Oleynik, нашёл баг! При двойном щелчке на предпоследней или последней композиции в списке, запускается воспроизведение композиции в ускоренном виде (курсор при этом неподвижен, и кнопка воспроизведения в транспорте не активна)
     
  3. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Выкладывайте свой проект, где это происходит. Я такого бага повторить не могу.

    PS: Чуть поправил скрипт, версия v16 - можно не создавать последний Регион Пустышку, но при этом нет возможности зациклить весь концерт, если в нём последняя композиция есть одновременно последним в проекте Регионом. Хотите, чтоб и ЭТО работало - нужно таки создать последним Регион Пустышку и его, естественно, не включать в концертный лист.
     

    Вложения:

  4. SoundExplosion

    SoundExplosion Well-Known Member

    Регистрация:
    22 янв 2009
    Сообщения:
    987
    Симпатии:
    734
    Пол:
    Мужской
  5. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    Когда я писал про действия пользователя, я имел ввиду себя, а не абстрактного человека, для которого нужно вводить защиту от дурака.-:)
    Я понимаю, что вы пишете универсальное решение. 5 секунд мало, минимум 10. И тогда уж индикация этого режима - включён или выключен. Например подсветка кнопки. Но по мне, лучше полностью ручной режим.
     
  6. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Да я понимаю, но "дураками" мы все бываем, особенно если есть возможность в дурацкую ситуацию попасть...
    Вы бы последний скрипт поюзали, потом поговорим.
    --- добавлено 18 авг 2018 ---
    Прикольный баг! :)
    Я не знаю как такое вообще в Рипере можно сделать :)
    Вам прийдётся этот проект, с вавками, выложить для меня на fex.net
    PS: Не нужно, сам поймал - очень прикольный баг.... но догадываюсь откуда он.
    Попробую убрать по быстрому....
     
    Последнее редактирование: 18 авг 2018
    patt нравится это.
  7. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    @SoundExplosion, проверьте версию v17
    Немного изменил сценарий двойного клика - теперь можно кликать два раза на любой композиции и во время проигрывания - проигрывание остановится и Плэй курсор переместится на кликнутую композицию. Ну и баг как будто не наблюдается...

    @patt, в версии v17 в первой строке стоит -
    safe_time = 5
    можете сами менять цифру 5 (это секунды) на любую другую.
    Делать это лучше в Notepad ++

    @andy felon, ставьте safe_time = 0 и этот опасный режим не включится даже если вы случайно нажмёте на эту кнопку "One Hand".
     

    Вложения:

    Последнее редактирование: 18 авг 2018
    chiibiis, SoundExplosion и patt нравится это.
  8. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    Да, пока в тесте все работает. Спасибо за труд!
    --- добавлено 18 авг 2018 ---
    О! Вот за это спасибо!
     
    Последнее редактирование: 18 авг 2018
  9. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Поставьте 1000 и отключайте в ручную :)
     
    Archchie и patt нравится это.
  10. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    :):D:D:D
     
  11. borisuperful

    borisuperful Well-Known Member

    Регистрация:
    31 янв 2013
    Сообщения:
    1.044
    Симпатии:
    330
    Такой фючер реквест - удобно, чтобы скрипт снимал цвет региона и обозначал их квадратиком, как в обычном регионе менеджере. Это крайне сильно увеличивает визуализацию, лучше чем названия
    upload_2018-8-18_13-20-45.png
     
    Archchie нравится это.
  12. SoundExplosion

    SoundExplosion Well-Known Member

    Регистрация:
    22 янв 2009
    Сообщения:
    987
    Симпатии:
    734
    Пол:
    Мужской
    Aleksandr Oleynik нравится это.
  13. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Для Концертного Трэк Листа - НЕ СОГЛАСЕН!
    Я ведь не менеджер очередной для Регионов сделал, а Плеер с Пресетами!!!!! То, чего на сегодня просто нет в Рипере, ни в штатных его функциях ни в надстройках, типпа Live Config.
    В этом Плеере Главным является Наименование Композиций.
    Это Плеер, в котором вы просто можете создавать и загружать потом свои собственные Плэй Листы (любое кол-во) из имеющихся в Проекте Композиций (Регионов), меняя их очерёдность как угодно, не меняя их расположение в Проекте Ни КАК!
    И в общем-то вы и в Рипер (в проект) и заглядывать не должны, всё создаётся и управляется из Скрипта.
    Я со временем сделаю ТАКУЮ-же оболочку для Планшета.
    Какая мне разница какой там в Проекте цвет Региона у конкретной композиции?
     
    Archchie и patt нравится это.
  14. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    Это будет здорово!
     
  15. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Я бы много чего мог легко сделать на планшете, если бы Скрипты поддерживали прямо OSC приём и отправку. А пока - через задницу всё это.
     
    patt нравится это.
  16. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    @Aleksandr Oleynik, Еще недочеты:
    первое:
    — Если у нас есть в проекте не подписанные регионы, то скрипт не видит этот регион, дойдя до пустого региона скрипт ломается.
    Без названия.png
    Как я понял скрипт работает по имени региона, а должен по айди, или если регион пустой, то он должен брать имя "ID".
    Я думаю это должно выглядеть как то так Без названия (1).png
    И работа скрипта должна производится по айди.

    второе:
    — Если мы поменяем регионы местами (До запуска скрипта) , то композиции начинают пропускаться.
    То есть: Мы создали регионы и они стоят по порядку 1, 2, 3, 4,(по id) то все работает как надо, а вот если регионы стоят - например: 1, 2, 4, 3, то воспроизведутся только 1, 2 ,4, а третий пропустится!

    третье:
    — При сохранении пресета, если в имени пресета есть хоть один русский символ, то этот пресет больше не удаляется из скрипта.

    четвертое:
    — сохранили мы какой либо пресет , потом удалили какой либо регион, и при выборе этого пресета, где не хватает регионов скрипт ломается и выскакивает ошибка , хотя в таком случае ничего не должно произойти.

    пятое:
    — У нас в проекте есть хоть сколько регионов и если мы удалим второй регион, то скрипт увидит только первый регион, если удалим третий, то скрипт увидит только первый и второй регион и т.д.
     
    Aleksandr Oleynik нравится это.
  17. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    @Archchie, да, я знаю эти недочёты.
    Пресеты будут работать только с устоявшимся проектом, если его поменять, пресеты прийдется создавать по новой.
    В этой связи есть и другие недочёты - например, если у вас два проекта с Концертной программой, то пресеты будут сохраняться и видиться из обоих и правильно работать будут только те, что в открытом проекте и сохранялись.

    Вообще то у меня на версии где-то 8-ой было желание скрипт полностью переписать, но вот.... дотянул уже до 18-ой. :)

    Тут как обычно при написании сложного скрипта, со многими условиями - понимание того, как он должен работать и какова должна быть его структура, наступает только к окончанию его написания.
    Сейчас я почти понимаю как его нужно писать :)
    Возможно перепишу заново, а может и устраню какую то часть недочётов в этом, а потом перепишу.
    Некоторые из перечисленных вами недочётов не сложно устранить в текущей схеме скрипта, некоторые очень сложно (для меня).
    А вообще - Спасибо, что подключились! Инструмент то нужный получиться.
     
    Последнее редактирование: 18 авг 2018
    Archchie и patt нравится это.
  18. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Не, скрипт работает по куче полей, в таблицу по каждому региону пишется и ID и Имя и Старт Тайм и Энд Тайм - это при сканировании Проекта.
    А потом создаётся новая таблица, которая переписыается всякий раз как вы делаете с перечнем в скрипте какие либо манипуляции.
    Там есть ещё туманности из первых версий с сравнением, может в них некоторые ошибки кроятся - гляну.
     
    Archchie и patt нравится это.
  19. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    Да. У меня так (если использовать ваши цифры): если скобки стоят, то 4 повторяется. Даблклик на 3-й помещает курсор на 4-й, даблклик на 5-й помещает курсор на 3-й ID (реально на таймлайне 4-й),
    даблклик на 6 помещант на 6. @Aleksandr Oleynik если можно это иправить, то было бы круто. Остальные замечения@Archchie для меня лично не актуальны.
     
    Archchie нравится это.
  20. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Не так просто, нужно было переписать скрипт после 8-ой версии :)
    Я подумаю что проще, костыли или переписать, понимая уже как нужно.
     
    Archchie и patt нравится это.
  21. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    Ну ок, в крайнем случае перепишу ID если понадобится.
     
  22. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Да наверное - все таки, лучше уже чуть больше времени убить и написать как надо!:)

    Еще думаю, сохранения размера окна надо убрать,
    для чего оно нужно, если содержимое окна в скрипте не увеличивается:(,
    ну или постараться сделать так, что бы содержимое "увеличивалось - уменьшалось":eek:
     
    Последнее редактирование: 18 авг 2018
  23. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Не, там сделано так, что стандартно, при первом запуске скрипта, показывается в окне 15 Композиций - дальше вниз листать прокруткой (всеми способами).
    Но кому-то хочется не 15, а 25 или 40 у него на монитор помещается - вот и сделает как хочет и скрипт запомнит.
    Ширину, кстати он сбрасывает на нужную, чтоб показать всю инфу, даже если пользователь её потянул и закрыл скрипт.
    Ну и запоминает положение, в том числе и в Доках.
    --- добавлено 18 авг 2018 ---
    Это конечно лучше, но вот @patt, как я понимаю, уже юзает скрипт - нужно бы ему ошибки важные подправить как минимум.
     
    Archchie нравится это.
  24. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    Ни в коем случае.

    Именно поэтому. У меня монитор маленький.
    --- добавлено 18 авг 2018 ---
    Пока в тестовом режиме. Я могу и другого дождаться. :). Привык уже с Region playlist, еслиб не отсутствие пауз в нём.
     
  25. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    По высоте все правильно, пускай сохраняется размер, а по ширине не за чем и у меня ширина не сбрасывается
    322234212.gif
     
  26. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Я не выкладывал эту версию с исправлениями кое какими, в том числе со сбросом ширины.

    Я застрял на этой чёртовой идентификации Регионов :(
    Пока что в старом скипте её поправить не выходит - одну ногу из болота достаю - вторая увязает....
    Уже просто чуть-чуть и начну с нуля скрипт...
     
    Последнее редактирование: 19 авг 2018
    Archchie нравится это.
  27. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    В общем нашёл силы и доделал текущий срипт (пока без всё того-же Left Compos/Time).
    Бороться с причинами не осилил, а поборол следствия :)
    Особенности новой версии v20 -
    - Скрипт меняет ID всех Регионов по порядку, по сути делает "Renumber region IDs" по порядку,
    - Скрипт добавляет пустой "!!!Empty" Регион в конце проекта (один раз, если он уже есть, больше не добовляет), но в скрипте его не показывает.

    В общем-то это решило обозначенные @Archchie баги, кроме пока удаления Пресета названного кирилицей и сломанных пресетов, если в проекте произошли после сохранения изменения в Регионах - убавили/добавили (поищу как сделать)!
    Проверяйте.
     

    Вложения:

    Последнее редактирование: 20 авг 2018
  28. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Версия v21
    - добавлен Left Compos/Time
    - исправленно ряд не значительных ошибок
     

    Вложения:

    SoundExplosion нравится это.
  29. SoundExplosion

    SoundExplosion Well-Known Member

    Регистрация:
    22 янв 2009
    Сообщения:
    987
    Симпатии:
    734
    Пол:
    Мужской
    @Aleksandr Oleynik, работает всё корректно!
    Единственный нюанс- раскраска названий треков (какой воспроизводится, а какой на очереди)- корректна только при воспроизведения первого трека и последнего. В остальном случае оба этих трека серые.
     
  30. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Так и задуманно!
    Если выбранна Первая Композиция в сформированном Трэк Листе , т.е. стоим в начале Концертной программы - Имя будет зелёным.
    Если после выбранной Композиции уже ни чего не будет - End of the Concert - и надпись красная.
    Во всех прочих случаях - наименования и Текущей и той, что будет следующей - серые (за исключение того случая, если стоим на последней и она зацикленна с первой - тогда имя следующей композиции также будет зелёным - так как это начало Концертной программ).

    В общем чтоб была чёткая ассоциация с тем, что если нет ни зелёного ни красного - мы где-то в середине Концерта... :)
    --- добавлено 20 авг 2018 ---
    PS: Ха, на Проекте @patt, не верно отображается время, так как у него композиций там больше чем на час :)
    Тоже подправлю, прйдётся ещё один разряд ввести ...... думаю проект больше чем 99 часов не будет ни кто делать :)

    PSS: Подправил - версия v22
     

    Вложения:

    Последнее редактирование: 20 авг 2018
    Archchie нравится это.
  31. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    С перемещением регионов "до запуска скрипта", теперь все работает отлично, а вот после запуска скрипт не понимает.
    То есть: Запустили мы скрипт, затем в процессе подвинули куда то регион или поменяли местами регионы, а регионы разные по длине(по времени), то если регион
    сдвинулся в право то воспроизведение начнется от начала региона и закончиться не в конце региона как должно быть,а в том месте, где изначально был конец региона до перемещения, а если регион сдвинулся в лево то воспроизведение остановится и больше не включится, включится только в том месте , где был регион до перемещения, а если мы передвинем куда то далеко регионы, то курсор будет скакать по тем местам, где изначально был конец региона.

    На счет региона пустышки, он добавляется чуть дальше последнего региона, не обращая внимания на айтемы, а должен наверное я думаю за пределами последнего(дальнего) айтема в проекте.

    Ну и осталось что то придумать с пустыми регионами, если пустой(без имени) то как то обзывать наверно его, ну и с пресетами что то.

    Ну и по визуальной части:
    Когда мы жмякаем по названию региона (в скрипте), если жмякнем по центру, то вроде все норм, а вот если куда то в угол, то уж сильно далеко перемещается имя региона, текст перемещается к мыши, а надо бы задать какие то одни не большие параметры, а если мы вышли за пределы прямоугольника с нажатой ЛКМ то имя должно потянутся, как сейчас и есть.
    К шрифтам можно добавить шрифты на задний план со смещением другова цвета (теней и объема добавить )
    Бегущую полосу плэя можно сделать, что бы она принимала цвет региона или айтема, айтемов может быть много в регионе, лучше наверно региона
    Подсветочку кнопок, регионов при наведении мыши

    Вроде все: больше пока не чего не заметил
     
    Aleksandr Oleynik нравится это.
  32. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    Не праздный вопрос: опишите цель, для чего двигать регионы в проекте?
     
  33. andy felon

    andy felon Well-Known Member

    Регистрация:
    19 окт 2006
    Сообщения:
    2.546
    Симпатии:
    729
    А я вот тоже не пойму что за задача такая двигать регионы или менять их местами? Это от нечего делать?
     
  34. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Всякие ситуации могут быть при работе!
    И подвести эти ситуации могут Очень серьёзно.
    Я всего лишь описываю эти недочеты, которые заметил при тесте.
    Мне этот скрипт все равно не пригодится.
    Если хотите пользоваться костылями? Пожалуйста!

    Вот из-за таких как вы и существует куча программ, с кучей багов.
    Сделали тяп-ляп, работает, да и ладно. А как работает? наплевать!
     
    Последнее редактирование: 20 авг 2018
    Alx_g нравится это.
  35. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    @Archchie, Спокойней реагируйте на замечания по поводу ваших замечаний :).
    Спасибо, что тестите и пишите свои замечаеия!
    Смысл данного скрипта - составить плэй лист (плэй листы) из ГОТОВОГО списка композиций.
    Проект с таким списком (регионами), после того как скрипт запущен, менять нельзя. Не представляю зачем бы это было нужно, но, КСТАТИ, могу вовсе запретить скриптом что либо в проекте, пока скрипт запущен, менять - от шаловливых ручек, от случайно задетого.... подумаю.
    Определённая логика в вами намисанном есть!, но она касается изменерий проекта после сохранения Пресетов. Вот тут траблы могут быть, можно тупо забыть, что э
    менять проект нельзя.... и порушить все Пресеты.
    Понятно, что сделать защиту пресетов можно только - сканируя их все при запуске скрипта на предмет соответствия проекту... ну и если обнаруживается не соответствие - править. Вот только что считать "не соответствием", а что сломанным нафиг проектом?
    Если пользователь какому то Региону поменяет Имя, начало и конец и порядковый номер - ни один Кашпировский не разберётся, Пресет прийдётся удалять!
     
    Archchie нравится это.
  36. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    @patt, @andy felon,
    Дело в том, что @Archchie почти всё пишет правильно! Грамотный бэта тестер не менее важная персона, чем програмист!
    Грамотно написанная программа не должна ломаться ни от каких действий Пользователя или должна запрещать (блокировать) их.
    Но, скрипт не всесильный, не от всех не обдуманных действий Пользователя можно защититься...., но от тех что можно, обязательно нужно.
    --- добавлено 20 авг 2018 ---
    @Archchie заблокировать изменения в проекте при запущенном скрипте я смогу. Делал уже подобное в своих скриптах....
    А вот что делать если Проект после сохранения Пресетов поменяли - пока не знаю.
    Есть идеи?
    PS: Регионы без имени в скрипте работают нормально. Увидит пользователь, что они пустые - назовёт если захочет, а не захочет - скрипт работает и с ними, он не по имени работает.
    Могу при старте скрипта конечно предупредить, что обнаруженны Регионы без имени - назовиие их как нибудь...
    PSS: про регион пустышку - верное замечание, спасибо.
     
    Последнее редактирование: 20 авг 2018
    Archchie нравится это.
  37. andy felon

    andy felon Well-Known Member

    Регистрация:
    19 окт 2006
    Сообщения:
    2.546
    Симпатии:
    729
    @Aleksandr Oleynik, Саша ни кто не говорит про неграмотность программы, но из за многих не реальных ситуаций приходится очень сильно и многое усложнять что порой само собой ведет к меньшей надежности.

    @Archchie, эээ нее как раз изза того что от чего то требуют гораздо большее чем нужно. Я лично не представляю зачем делать те вещи которые вы описали. Нужен стабильный скрипт, а чем больше мы вводим условий различный тем более которыми пользоваться не будем тем он менее стабильным становится.
     
  38. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Во всех программах на земле львиную долю кода составляют УСЛОВИЯ :)
    И чем полнее их представляет Програмист при написании и чем меньше оставляет не учтённых им ситуаций на волю судьбы и Пользователя - тем менее глючной становится программа!
     
  39. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    С пресетами я думаю надо сделать вот такое поведение(Если сможете конечно),
    только наверное придется переписать пол скрипта.

    1. Запустили мы скрипт, он просканировал проект, как сейчас и есть,
    далее сохраняем пресет, пресет запомнил все регионы и все плюсики в скрипте(пресет 111)

    2. Запускаем мы скрипт в другом проекте, далее все то же самое
    сохраняем пресет, пресет запомнил все регионы и так же плюсики (пресет 222)

    Вот у нас есть уже два пресета, запускаем мы скрипт в третьем проекте,
    он отсканировал все как и положено, но если мы выбирим пресет 111 или 222, то
    все существующие в данный момент регионы удаляются и создаются те которые были
    сохранены в пресете, ну и активируются соответственно плюсики, не смотря есть там
    айтемы(песни) или нет.
    Вот это как мне кажется более правильное поведение пресетов
    --- добавлено 20 авг 2018 ---
    Первое что пришло в голову: Но ситуаций может быть море.
    Вы играете концерт, у вас составлен плэй лист, но по каким то, не предвиденным ситуациям не знаю(проплатили, запретили и т.д. и т.п) вам нужно заменить или добавить композицию, воспроизведения конечно вам останавливать нельзя.
    Если заменить композицию, если длина(время) композиции совпадают, то все норм, а если не совпадает, то все приплыли. Так же с ситуацией, если добавить композицию, вы добавили, сделали регион, а он не обнаруживается, потому что вам надо перезапустить скрипт.

    Это сравнимо с вот такой глупой ситуацией:
    Вы сидите дома или не дома, слушаете музыку через винамп,
    вам захотелось закинуть какой либо новый трек(и), вы берете,закидываете в плэй лист винампа, а винамп их не принимает, а говорит вам, меня надо выключить, и включить иначе я их не увижу.
    Это нормально?
    Я понимаю, что вы хотите как можно быстрее готовый скрипт, вот по этому куча скриптов и с багами, но если доводить этот скрипт до ума, я думаю он еще не месяц и не два будет делаться
     
    Последнее редактирование: 20 авг 2018
  40. andy felon

    andy felon Well-Known Member

    Регистрация:
    19 окт 2006
    Сообщения:
    2.546
    Симпатии:
    729
    @Archchie, смотрите я вижу так вот сколько в проекте песен столько и регионов, вот у меня чуть больше 30 и регионы созданы на все, что бы сынрать нужно только выбрать, а добавлять и убавлять быстро не получится.
     
    Aleksandr Oleynik и Archchie нравится это.
  41. Archchie

    Archchie Active Member

    Регистрация:
    24 окт 2017
    Сообщения:
    352
    Симпатии:
    175
    Пол:
    Мужской
    Ну предлагайте свои варианты (потому что тут тупик), а @Aleksandr Oleynik, будет смотреть что в его силах, и что лучше работает
    --- добавлено 20 авг 2018 ---
    Ну в принципе можно и так.

    Ну если не по имени и если с пустыми работает, то и называть их не надо.
    У меня в "v.22" с пустыми не работает, скрипт ломается
     
    Последнее редактирование: 20 авг 2018
  42. andy felon

    andy felon Well-Known Member

    Регистрация:
    19 окт 2006
    Сообщения:
    2.546
    Симпатии:
    729
    @Archchie, нет имеется ввиду что бы добавить трек в проект гемора много, это аудио и миди файлы плюс запись автоматизаций мидийных, так что на все треки есть регионы
     
    patt нравится это.
  43. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Так, пока исправил не возможность удаления Пресета с кирилическим именем!
    В этот раз перезаписать нужно будет не основной скрипт, а модуль Preset.lua в папке !_ConcertList/Modules/
    Теперь и удаляется и переименовывается.
     

    Вложения:

    • Presets.rar
      Размер файла:
      3,3 КБ
      Просмотров:
      7
    Последнее редактирование: 21 авг 2018
  44. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Неееееееее! Так делать НЕЛЬЗЯ! :)
    Вам Автор Проекта с Композициями, которые делались для концертной программы днём и ночью, голову оторвёт за такое поведение скрипта... :)
    НИ ЧЕГО Скрипт удалять из проекта НЕ ИМЕЕТ ПРАВА! Это полностью исключено.
    Он вообще с проектом НИ ЧЕГО НЕ ДЕЛАЕТ - он из него берёт список и как угодно его виртуально тасует - ВСЁ!!!!!
    Я сделаю также как и для своего Лайв Проекта - Скрипт будет сохранять Пресеты для каждого Проекта в своей отдельной подпапке с именем проекта.
    Ну и естественно будет загружать ТОЛЬКО Пресеты сохранённые для данного Проекта.
    Это первое.

    Второе - я запрещу Пользователю что либо менять в Проекте, когда скрипт запущен.
    В Проекте, который используется для конкретной Концертной программы, должны присутствовать АБСОЛЮТНО все Композиции (Регионы) которые только могут (на Бис или случайно) понадобиться.
    Добавить или убрать или переместить по очереди любую Композицию Проекта мой скрипт может легко во время Концерта, даже при Плее. При этом он естествеен не трогает ни как сам Проект!
    А если ЧП, то закрывается ЭТОТ Проект, открывается другой - и вызывается другой Пресет или по быстрому создаётся!

    Третье - что делать с Пресетами проекта, который Пользовател изменил после сохранения этих Пресетов - ПОКА НЕ ЗНАЮ! Для меня это самый сложный вопрос, так как сценариев может быть много.
    --- добавлено 20 авг 2018 ---
    Посмотрю ещё внимательнее.
    Могу заставить Пользователя их назвать при запуске скрипта.
    --- добавлено 20 авг 2018 ---
    Не нормально и мой скрипт так не работает - ни чего не нужно перегружать - закидывайте что угодно в Трэк лист прям при плее концерта - БЕЗ ПРОБЛЕМ!
    Вот только вы не понимаете, что для Концертного Плэй Листа Архив Композиций это ТО, что лежит в Проекте и больше он НИ ЧЕГО о существовании чего либо другого и знать не должен.
    Как только вы поймёте, что перечень композиций которые можно сыграть на Концерте - это ТО, что вы закинули в Проект - всё встанет на свои места.
    Если Композиции в Проекте НЕТ, то её на 99,9% вообще нет, её создавать нужно, а это НЕ ВОЗМОЖНО сделать во время Концерта.
    Ну это так-же как для Винампа списком композиций, которые вы в него можете закинуть, является список файлов на вашем компе (если он в инет не подключен и флэшку в него вставить нельзя) - если файла на компе нет, вы его в винамп и не закинете.
     
    Последнее редактирование: 21 авг 2018
  45. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    Пока решил так -
    Ни чего не делать, не открывать пресеты и сообщать Пользователю, что он «балбес».
    Я сделаю так, чтобы в пресет писалась информация о проекте в котором Пресет делался, важная для нормальной работы Пресета инфа - имя проекта, кол-во регионов, их наименование, их стартовые и конечные точки ( может придумаю какую то контрольную сумму по этим параметрам) - и при вызове Пресета буду сравнивать с текущим проектом - совпадает - открываем, не совпадает - в сад.
     
  46. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    Ну так этот скрипт позволяет это сделать "на лету". Зачем регионы двигать?

    Вот тут разъясните: что значит время совпадает? Все песни плюс-минус пол минуты, ну минута максимум... Это не критично для любого выступления, мне кажется.

    Не понял. У меня все композиции уже в проекте. Я их никуда не добавляю. Я только в плейлист добавляю регион (заранее созданный) с композицией. Никуда физически его (регион) не перемещая.
    Опишите, плз, ваш алгоритм работы.

    Нее, я просто хочу работающий скрипт, могу и потерпеть.

    Да, этого будет достаточно.
     
  47. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    @patt, я думаю, что я сумел уже @Archchie всё пояснить....
    Если принять как Аксиому, что Пресет будет работать ТОЛЬКО если проект после его создания НИ КАК не был изменён, все вопросы @Archchie отпадают!
     
    patt нравится это.
  48. patt

    patt Member

    Регистрация:
    10 мар 2010
    Сообщения:
    75
    Симпатии:
    16
    Пол:
    Мужской
    Я просто хотел логику его работы понять. Для общего развития.
     
  49. Aleksandr Oleynik

    Aleksandr Oleynik Well-Known Member

    Регистрация:
    16 янв 2007
    Сообщения:
    16.914
    Симпатии:
    9.168
    Пол:
    Мужской
    Адрес:
    Киев
    @patt, он не работает с плэйбэками, на сколько я понял - он просто знает скрипты и потестил работу моего.
     
    patt нравится это.
  50. Valery

    Valery Well-Known Member

    Регистрация:
    2 окт 2004
    Сообщения:
    2.055
    Симпатии:
    671
    Пол:
    Мужской
    Адрес:
    Москва
    @Aleksandr Oleynik, Не было времени прочитать внимательно последние 2 страницы. Может это обсуждалось уже?
    Баг такой: если первым в плейлисте идет последний (по маркерам) трек, то после него воспроизведение останавливается, хотя скобки все стоят.
    Скрипт в.22, тест проводил на проекте из 4 коротких (10-15 с.) треков, все действия производил "одной рукой".
     
    Последнее редактирование: 21 авг 2018

Поделиться этой страницей