[Приложение] Sound Direct Manager
Модератор: immortal
- Bagir
- Сообщения: 1613
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
Отлично! Рад что понравилось. Дальше будет больше. Этот вариант я выложил просто посмотреть. Он не доделан, даже скорее только начат. Сейчас добавил команду переключение музыки, чтобы Алиса могла это делать. Выглядит так:
-outputchannel:1 -takemusic:2
то есть мы выводим на канал 1 музыку, которая играет на канале 2. Вместо двойки можно еще передать хендл играющего трека. Возможно так будет проще реализовать идею следования музыки. А то каждый раз придется запоминать на какой канал мы переключили нашу песню. О способах получения хендла музыки мы поговорим чуть позже. Скорее всего это будет ответ GET запроса на команду -playmusic. И еще вариант с отдельным вопросом. Например мы в какой то момент решили, что наша музыка должна следовать за нами. Но Handle (метку) этой задачи не знаем. Мы спрашиваем SDM командой, к примеру, -takehandle, а ответ придет вызовом метода Алисы. После этого, зная Handle, можно пулять музон куда надо (точнее куда решит Алиса)
-outputchannel:1 -takemusic:465486
-outputchannel:2 -takemusic:465486
-outputchannel:8 -takemusic:465486
и т.д.
Кнопка Пауза действительно в этой сборке пустая. Но в следующей сборке она будет работать. И добавится соответственно команда для Алисы. Наверное будет
-outputchannel:1 -pausemusic:0
-outputchannel:1 -pausemusic:1
или
-outputchannel:1 -pausemusic
-outputchannel:1 -continuemusic
Кто доберётся раньше до обучения Алисы ставить трек на паузу, пишите как удобнее, сделаем.
А теперь о грустном кнопка 0. Она есть, просто я специально скрыл её. Действительно если мы не указываем атрибут -outputchannel или отправим ноль -outputchannel:0, то музыка будет загружена с параметром для всех каналов. Но такую музыку в дальнейшем не получится переключить на нужный канал. А если мы загрузили музыку на конкретный канал, то на все каналы мы её тоже вывести уже не можем.
Пока я не нашел вариантов решения. И скорее всего прога в релиз на первую страничку пойдет с этим ограничением. Но как оно обычно бывает, ищешь одно, а находишь другое. Так что в будущем может и попадется рабочий пример.
Нужно ещё допилить обратную связь с Алисой по средствам вызова метода, и уменьшение громкости музыки при появлении сообщений. Добавив возможность играть музыку, я невольно попал на тему громкости. Уже давно можно задавать как общую громкость, так и для отдельного сообщения. Эти же аргументы работают и для музыки. Но для музыки нам обязательно понадобится возможность изменять громкость в процессе воспроизведения. Причём для каждого канала индивидуально. Так что в будущем надо будет подумать как это всё красиво оформить.
И ещё будет отдельная тема. Сейчас можно самому выбирать устройство вывода звука вне зависимости какое выбрано в системе по умолчанию. Долго я за это боролся, но оно того стоило. По умолчанию у меня на этом компе выбрана другая звуковая карта. И если я включу какой нибудь плеер, то звук не летит в оповещатели по всему дому, а играет в колонках у сервера. Это весьма удобно.
Но зачем ограничиваться одной звуковой картой? 8 каналов конечно вполне достаточно для дома, но ситуации бывают разные. От сюда вопрос, нужна ли поддержка сразу нескольких звуковых карт. Технически это возможно, и я уже попробовал, но придется много чего переделывать.
-outputchannel:1 -takemusic:2
то есть мы выводим на канал 1 музыку, которая играет на канале 2. Вместо двойки можно еще передать хендл играющего трека. Возможно так будет проще реализовать идею следования музыки. А то каждый раз придется запоминать на какой канал мы переключили нашу песню. О способах получения хендла музыки мы поговорим чуть позже. Скорее всего это будет ответ GET запроса на команду -playmusic. И еще вариант с отдельным вопросом. Например мы в какой то момент решили, что наша музыка должна следовать за нами. Но Handle (метку) этой задачи не знаем. Мы спрашиваем SDM командой, к примеру, -takehandle, а ответ придет вызовом метода Алисы. После этого, зная Handle, можно пулять музон куда надо (точнее куда решит Алиса)
-outputchannel:1 -takemusic:465486
-outputchannel:2 -takemusic:465486
-outputchannel:8 -takemusic:465486
и т.д.
Кнопка Пауза действительно в этой сборке пустая. Но в следующей сборке она будет работать. И добавится соответственно команда для Алисы. Наверное будет
-outputchannel:1 -pausemusic:0
-outputchannel:1 -pausemusic:1
или
-outputchannel:1 -pausemusic
-outputchannel:1 -continuemusic
Кто доберётся раньше до обучения Алисы ставить трек на паузу, пишите как удобнее, сделаем.
А теперь о грустном кнопка 0. Она есть, просто я специально скрыл её. Действительно если мы не указываем атрибут -outputchannel или отправим ноль -outputchannel:0, то музыка будет загружена с параметром для всех каналов. Но такую музыку в дальнейшем не получится переключить на нужный канал. А если мы загрузили музыку на конкретный канал, то на все каналы мы её тоже вывести уже не можем.
Пока я не нашел вариантов решения. И скорее всего прога в релиз на первую страничку пойдет с этим ограничением. Но как оно обычно бывает, ищешь одно, а находишь другое. Так что в будущем может и попадется рабочий пример.
Нужно ещё допилить обратную связь с Алисой по средствам вызова метода, и уменьшение громкости музыки при появлении сообщений. Добавив возможность играть музыку, я невольно попал на тему громкости. Уже давно можно задавать как общую громкость, так и для отдельного сообщения. Эти же аргументы работают и для музыки. Но для музыки нам обязательно понадобится возможность изменять громкость в процессе воспроизведения. Причём для каждого канала индивидуально. Так что в будущем надо будет подумать как это всё красиво оформить.
И ещё будет отдельная тема. Сейчас можно самому выбирать устройство вывода звука вне зависимости какое выбрано в системе по умолчанию. Долго я за это боролся, но оно того стоило. По умолчанию у меня на этом компе выбрана другая звуковая карта. И если я включу какой нибудь плеер, то звук не летит в оповещатели по всему дому, а играет в колонках у сервера. Это весьма удобно.
Но зачем ограничиваться одной звуковой картой? 8 каналов конечно вполне достаточно для дома, но ситуации бывают разные. От сюда вопрос, нужна ли поддержка сразу нескольких звуковых карт. Технически это возможно, и я уже попробовал, но придется много чего переделывать.
-
- Сообщения: 44
- Зарегистрирован: Чт янв 28, 2016 8:18 pm
- Благодарил (а): 13 раз
- Поблагодарили: 5 раз
Re: Sound Direct Manager
На мой взгляд, пока можно ограничиться поддержкой одной карты, чтобы не тратить время и силы. Возможно, правильнее будет довести до ума теперешнюю версию, добавить радио...
Я собираюсь ставить систему в загородном доме, и даже там 8 каналов с головой хватит:)
Есть одна проблема с Бета версией SDM, я как-то не пробовал распознавание в ней, а сейчас вот включил и оно работает с ошибкой, то есть первую команду отрабатывает хорошо и на ней зацикливается. Что бы после этой команды не пытался распознать, ответ получаю всё равно самую первую команду.
Хотел пройти по ситуации включения света. Сказал "включи", распознало как "включи". Потом спросила: "что именно", я ответил: "свет", а программа всё равно распознала "включи". Я думаю, это какой-то мелкий баг, жду полную версию программы:)
Я собираюсь ставить систему в загородном доме, и даже там 8 каналов с головой хватит:)
Есть одна проблема с Бета версией SDM, я как-то не пробовал распознавание в ней, а сейчас вот включил и оно работает с ошибкой, то есть первую команду отрабатывает хорошо и на ней зацикливается. Что бы после этой команды не пытался распознать, ответ получаю всё равно самую первую команду.
Хотел пройти по ситуации включения света. Сказал "включи", распознало как "включи". Потом спросила: "что именно", я ответил: "свет", а программа всё равно распознала "включи". Я думаю, это какой-то мелкий баг, жду полную версию программы:)
Последний раз редактировалось redmax144 Ср май 11, 2016 10:37 am, всего редактировалось 1 раз.
-
- Сообщения: 44
- Зарегистрирован: Чт янв 28, 2016 8:18 pm
- Благодарил (а): 13 раз
- Поблагодарили: 5 раз
Re: Sound Direct Manager
Вот хотел кстати уточнить, у вас получилось смоделировать ситуацию?...Bagir писал(а):Да, довольно странно почему не отрабатывает команду "Свет" со второго терминала. Я попробую смоделировать эту ситуацию у себя.
И ещё одно пожелание.. На компьютерах с небольшой диагональю нижнюю часть программы совсем не видно, может быть расширить программу, а не удлинять? Или добавить прокрутку...
Вот о чем я:
СпойлерПоказать
- Bagir
- Сообщения: 1613
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
Не добрался я до момента с шаблонами. Музыка отняла всё время. Сегодня постараюсь допились необходимые моменты с музыкой и будем разбираться с шаблонами поведения.
Бетка, по части распознавания речи, полностью рабочая. Там ничего не менялось. На всякий случай я проверил сейчас. всё работает. Нужно искать неисправность. Для начала надо проверить так:
Самому нажать на кнопку Record, Произнести любую фразу, не относящуюся к шаблонам, и посмотреть в окне истории SDM что будет распознано. Алиса должна будет сказать "Неизвестная команда". Затем опять нажать на Record и сказать что нибудь другое. И опять же смотреть в истории SDM. Если там всё правильно, значит что то не так с настройкой шаблонов поведения.
Интерфейс я переделаю. Расширим вправо чтобы всё влезало по высоте. Ближе к ночи выложу бетку перед релизом на первой страничке.
Бетка, по части распознавания речи, полностью рабочая. Там ничего не менялось. На всякий случай я проверил сейчас. всё работает. Нужно искать неисправность. Для начала надо проверить так:
Самому нажать на кнопку Record, Произнести любую фразу, не относящуюся к шаблонам, и посмотреть в окне истории SDM что будет распознано. Алиса должна будет сказать "Неизвестная команда". Затем опять нажать на Record и сказать что нибудь другое. И опять же смотреть в истории SDM. Если там всё правильно, значит что то не так с настройкой шаблонов поведения.
Интерфейс я переделаю. Расширим вправо чтобы всё влезало по высоте. Ближе к ночи выложу бетку перед релизом на первой страничке.
- Рейтинг: 2.33%
- Bagir
- Сообщения: 1613
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
Любые идеи как оформить громкость на каналах! Карта 8 каналов. Громкость сообщений и громкость музыки. + общая громкость. Итого 17 ползунков. Выглядит очень громоздко.
Размышления: Общую громкость можно как есть оставить на главной форме.
Сейчас громкость сообщений может быть задана параметром, например -volumemessage:50, а если его нет, то берется из ini файла volumeMessage=70. Но громкость музыки может потребоваться как больше так и меньше громкости сообщений. К тому же полезно будет иметь возможность её изменять в процессе, причём на каждом канале индивидуально.
Ужал по высоте. Посмотрите что получилось.
Размышления: Общую громкость можно как есть оставить на главной форме.
Сейчас громкость сообщений может быть задана параметром, например -volumemessage:50, а если его нет, то берется из ini файла volumeMessage=70. Но громкость музыки может потребоваться как больше так и меньше громкости сообщений. К тому же полезно будет иметь возможность её изменять в процессе, причём на каждом канале индивидуально.
Ужал по высоте. Посмотрите что получилось.
- Вложения
-
- SDM.zip
- Бетка. Добавлена команда переключения музыки.
-outputchannel:2 -takemusic:1
переключить на второй канал музыку с первого канала. - (144.11 КБ) 186 скачиваний
- Рейтинг: 1.16%
-
- Сообщения: 44
- Зарегистрирован: Чт янв 28, 2016 8:18 pm
- Благодарил (а): 13 раз
- Поблагодарили: 5 раз
Re: Sound Direct Manager
Маленький вопрос. Если музыка, к примеру, играет в двух фронтальных колонках (F). Я её хочу переключить на одну какую-нибудь колонку, пишу запрос -outputchannel:4 -takemusic:F
Вылетает ошибка: Type mismatch.
С цифрами работает стабильно, но с буквами не хочет переключать (к примеру с R2 на F, с любого канала на F).
Однако, если использовать кнопки в самой программе, а не команды, всё работает хорошо)
Вылетает ошибка: Type mismatch.
С цифрами работает стабильно, но с буквами не хочет переключать (к примеру с R2 на F, с любого канала на F).
Однако, если использовать кнопки в самой программе, а не команды, всё работает хорошо)
- Bagir
- Сообщения: 1613
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
упс, верно! Там у параметра тип long. В следующем обновлении обязательно исправлю. И еще поговорим о том, как получить хендл играющего трека. Чтобы можно было отправлять его на любой канал несколько раз, не запоминая куда отправили.
- Рейтинг: 1.16%
- Bagir
- Сообщения: 1613
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
Переделал очередь сообщений. Внешне измениться ничего не должно. Но теперь и в очереди поддерживаются сообщения на обе колонки сразу.
Изменил имена каналов для двух колонок на цифровые. Так проще и понятней. У имён кнопок каналов есть подсказки.
Еще думаю будет полезно рассказать о некоторых моментах. Например
Добавил приглушение музыки на канале при появлении в очереди сообщения. Работает немного жёстко. Потом попробую сделать плавное убавление и прибавление. Момент с громкостью вообще буду переделывать. Вероятно это будут три ползунка. Общая громкость программы, громкость сообщений на канале, и громкость музыки на канале. Ползунки будут запоминать положение при переключении каналов. Как то так..
Обращаю внимание, что если мы открываем музыку с помощью кнопок, а не командой, то и обратной связи с Алисой тоже не будет (её сейчас еще вообще нет). А так же трек не будет удалён из списка по завершению проигрывания. Но если мы ставим на этот канал новый трек, то он заменит уже играющий.
Потестируйте, и если что найдёте, обязательно пишите.
Изменил имена каналов для двух колонок на цифровые. Так проще и понятней. У имён кнопок каналов есть подсказки.
Еще думаю будет полезно рассказать о некоторых моментах. Например
Правила очереди сообщенийПоказать
Существует массив каналов 0, 1-8, 12, 34, 56, 78, в который загружаются сообщения из очереди, проигрываются и уничтожатся. Пока канал занят, следующее сообщение будет ждать своей очереди.
Список очереди просматривается снизу вверх.
Если задача для канала 1-8, то ждать освобождения каналов 0 и 1-8 соответственно
Если задача для канала 12 (Front), то ждать освобождения каналов 0 и 1,2 каналов
34 – 0,3,4; 56 – 0,5,6; 78 – 0,7,8 соответственно
Если задача общая, то ждать освобождения всех каналов.
Озвучить сообщение и удалить его из очереди.
Список очереди просматривается снизу вверх.
Если задача для канала 1-8, то ждать освобождения каналов 0 и 1-8 соответственно
Если задача для канала 12 (Front), то ждать освобождения каналов 0 и 1,2 каналов
34 – 0,3,4; 56 – 0,5,6; 78 – 0,7,8 соответственно
Если задача общая, то ждать освобождения всех каналов.
Озвучить сообщение и удалить его из очереди.
Обращаю внимание, что если мы открываем музыку с помощью кнопок, а не командой, то и обратной связи с Алисой тоже не будет (её сейчас еще вообще нет). А так же трек не будет удалён из списка по завершению проигрывания. Но если мы ставим на этот канал новый трек, то он заменит уже играющий.
Потестируйте, и если что найдёте, обязательно пишите.
- Вложения
-
- SDM.zip
- ver 1.60 beta
- (140.11 КБ) 259 скачиваний
- Рейтинг: 1.16%
- Amarok
- Сообщения: 1425
- Зарегистрирован: Пт дек 14, 2012 12:24 pm
- Откуда: Россия, Нижняя Тура
- Благодарил (а): 460 раз
- Поблагодарили: 126 раз
- Контактная информация:
Re: Sound Direct Manager
Ох, дядюшко Багир, не то крутишь)
Лучше голосовое управление)))
Лучше голосовое управление)))
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165
- Bagir
- Сообщения: 1613
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
Так с голосовым управлением вроде как всё хорошо уже. Я давно пользуюсь. Вполне приемлемо работает. Постепенно добавляю в шаблоны поведения новые команды. Вот только кодовое слово, да, дело табак. Пока без вариантов. Может чего еще и попадется под руку.