как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых ))
хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола
Как это делается? подскажите пожалуйста
Здравствуйте, Аноним, Вы писали:
А>как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых )) А>хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола
Немного не ожидаемый ответ, но все-таки:
Представьте, что помимо вас в комнате сидит еще несколько человек и у них периодически пищат программы по причине наступления чрезвычайно важных по мнению разработчиков программ (но не пользователей!!!) событий. Или, вы сидите и слушаете музыку, а параллельно программа о чем-то своем периодически сообщает .
Есть такой анек: "Водитель, помни, довольно часто не сигнализация пищит потому, что стекло выбили, а стекло выбили потому, что сигнализация пишит."
В общем, если есть желание позаниматься "музицированием" в проге, которая очевидно таким функционалом обладать не должна, стоит:
1. предварительно опробовать (в смысле, заставить с ней хотя бы недельку плотно поработать) такую прогу на знакомых, которые если и будут бить, то не больно ;
2. сделать музыкальные настройки отключаемыми (причем по умолчанию их включать не желательно).
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Re[2]: Как озвучить программу?
От:
Аноним
Дата:
13.11.09 14:36
Оценка:
Здравствуйте, Александр Кузнецов, Вы писали:
АК>Здравствуйте, Аноним, Вы писали:
А>>как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых )) А>>хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола
АК>Немного не ожидаемый ответ, но все-таки: АК>Представьте, что помимо вас в комнате сидит еще несколько человек и у них периодически пищат программы по причине наступления чрезвычайно важных по мнению разработчиков программ (но не пользователей!!!) событий. Или, вы сидите и слушаете музыку, а параллельно программа о чем-то своем периодически сообщает . АК>Есть такой анек: "Водитель, помни, довольно часто не сигнализация пищит потому, что стекло выбили, а стекло выбили потому, что сигнализация пишит." АК>В общем, если есть желание позаниматься "музицированием" в проге, которая очевидно таким функционалом обладать не должна, стоит: АК>1. предварительно опробовать (в смысле, заставить с ней хотя бы недельку плотно поработать) такую прогу на знакомых, которые если и будут бить, то не больно ; АК>2. сделать музыкальные настройки отключаемыми (причем по умолчанию их включать не желательно).
Я вполне с Вами соглашусь если этим баловацца черезмерно, но что вы возразите по поводу звуков в самой винде?
я хочу привлечь внимание при достаточно рискованных операциях и при длительных — процесс окончания
Здравствуйте, Аноним, Вы писали:
А>как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых )) А>хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола А>Как это делается? подскажите пожалуйста
Не рассказывайте ему про DirectX Managed, функцию API PlaySound и интерфейс IUserNotification!
Надоели музыкальные шкатулки, которые брякают, динькают и хрюкают вместо того, чтобы делом заниматься.
Единственные программы, где должны быть звуки — это аудио- и виделплейеры.
Здравствуйте, Аноним, Вы писали:
А>как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых )) А>хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола А>Как это делается? подскажите пожалуйста
В принципе, системные звуки можно проиграть с помощью PlaySound из winmm.dll. Список алиасов хранится в HKEY_CURRENT_USER\AppEvents\EventLabels, каждый подключ — отдельный псевдоним.
Здравствуйте, vmpire, Вы писали:
V>Не рассказывайте ему про DirectX Managed, функцию API PlaySound и интерфейс IUserNotification! V>Надоели музыкальные шкатулки, которые брякают, динькают и хрюкают вместо того, чтобы делом заниматься. V>Единственные программы, где должны быть звуки — это аудио- и виделплейеры.
У меня ни одна программа, включая ОС, не брякает, не динькает и даже не хрюкает — у меня звук выключен
Здравствуйте, Мизантроп, Вы писали:
М>У меня ни одна программа, включая ОС, не брякает, не динькает и даже не хрюкает — у меня звук выключен
А у меня включён, когда я музыку слушаю. И тут оно КАК ДИНЬКНЕТ!
Re[2]: Как озвучить программу?
От:
Аноним
Дата:
13.11.09 17:25
Оценка:
Здравствуйте, Мизантроп, Вы писали:
М>Здравствуйте, Аноним, Вы писали:
А>>как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых )) А>>хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола А>>Как это делается? подскажите пожалуйста
М>В принципе, системные звуки можно проиграть с помощью PlaySound из winmm.dll. Список алиасов хранится в HKEY_CURRENT_USER\AppEvents\EventLabels, каждый подключ — отдельный псевдоним.
Здравствуйте, Мизантроп, Вы писали:
М>Здравствуйте, Аноним, Вы писали:
А>>как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых )) А>>хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола А>>Как это делается? подскажите пожалуйста
М>В принципе, системные звуки можно проиграть с помощью PlaySound из winmm.dll. Список алиасов хранится в HKEY_CURRENT_USER\AppEvents\EventLabels, каждый подключ — отдельный псевдоним. SystemSounds
Re[3]: Как озвучить программу?
От:
Аноним
Дата:
13.11.09 18:53
Оценка:
Здравствуйте, IDecember, Вы писали:
ID>Здравствуйте, Мизантроп, Вы писали:
М>>Здравствуйте, Аноним, Вы писали:
А>>>как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых )) А>>>хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола А>>>Как это делается? подскажите пожалуйста
М>>В принципе, системные звуки можно проиграть с помощью PlaySound из winmm.dll. Список алиасов хранится в HKEY_CURRENT_USER\AppEvents\EventLabels, каждый подключ — отдельный псевдоним. ID>SystemSounds
Здравствуйте, Аноним, Вы писали:
А>как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых )) А>хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола А>Как это делается? подскажите пожалуйста
Для нотификации и прочего можно использовать Text2Speech. Нужные классы есть в 3.5, разобраться просто. Довольно свежо и оригинально + возможность легкой настройки пользователем (можно заставить программу говорить все, что угодно).
Здравствуйте, Аноним, Вы писали:
А>Я вполне с Вами соглашусь если этим баловацца черезмерно, но что вы возразите по поводу звуков в самой винде? А>я хочу привлечь внимание при достаточно рискованных операциях и при длительных — процесс окончания
Пример 1: некоторые антивирусы считают важным пищать при обнаружении вируса. А у меня на старой работе не могли год извести вирусняк, заражающий флешки. Закономерный итог — вставляешь флешку, побывавшую в компе на старой работе в комп с нормальным антивирусом (все остальные, на которых флешка использовалась) и получаешь по ушам. Иногда достаточно громко. Нет, я понимаю, что вирус — это СОБЫТИЕ. Но я и так о нем знаю
Пример 2: DС++ (менеджер закачек для пиринговых сетей) считает очень важным оповещать об уходе с закачки каждого из сидов, при том, что сама закачка продолжается. А еще, кричит об окончании закачки каждого файла вне зависимости от того, качаю я 1 большой файл, или папку с 10000 килобайтных файлов.
Поэтому лично у меня звуковые оповещения в программах обычно отключены полностью. Если честно, то программу в которой реально постоянно нужно было бы звуковое оповещение, вспомнить затрудняюсь.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Re[4]: Как озвучить программу?
От:
Аноним
Дата:
13.11.09 22:01
Оценка:
Здравствуйте, Александр Кузнецов, Вы писали:
АК>Здравствуйте, Аноним, Вы писали:
А>>Я вполне с Вами соглашусь если этим баловацца черезмерно, но что вы возразите по поводу звуков в самой винде? А>>я хочу привлечь внимание при достаточно рискованных операциях и при длительных — процесс окончания
АК>Пример 1: некоторые антивирусы считают важным пищать при обнаружении вируса. А у меня на старой работе не могли год извести вирусняк, заражающий флешки. Закономерный итог — вставляешь флешку, побывавшую в компе на старой работе в комп с нормальным антивирусом (все остальные, на которых флешка использовалась) и получаешь по ушам. Иногда достаточно громко. Нет, я понимаю, что вирус — это СОБЫТИЕ. Но я и так о нем знаю АК>Пример 2: DС++ (менеджер закачек для пиринговых сетей) считает очень важным оповещать об уходе с закачки каждого из сидов, при том, что сама закачка продолжается. А еще, кричит об окончании закачки каждого файла вне зависимости от того, качаю я 1 большой файл, или папку с 10000 килобайтных файлов.
АК>Поэтому лично у меня звуковые оповещения в программах обычно отключены полностью. Если честно, то программу в которой реально постоянно нужно было бы звуковое оповещение, вспомнить затрудняюсь.
Приличные люди используют звуки схемы рабочего стола и ежели уж юзеру надоедают какието звуки — он отключает их в настройках звуков схемы
Re[2]: Как озвучить программу?
От:
Аноним
Дата:
13.11.09 22:08
Оценка:
Здравствуйте, Мизантроп, Вы писали:
М>Здравствуйте, Аноним, Вы писали:
А>>как-то в наш век мультимедиа уже становится моветоном разрабатывать тихушные аппликухи для глухонемых )) А>>хочется иметь всякие там звуки предупреждения, нотификации и т.п. из текущей темы рабочего стола А>>Как это делается? подскажите пожалуйста
М>В принципе, системные звуки можно проиграть с помощью PlaySound из winmm.dll. Список алиасов хранится в HKEY_CURRENT_USER\AppEvents\EventLabels, каждый подключ — отдельный псевдоним.
Спасибо всем кто старался этого не допкустить!
Вот результат:
public class WSounds
{
[DllImport("WinMM.dll")]
public static extern bool PlaySound(string fname, int Mod, int flag); // these are the SoundFlags we are using here, check mmsystem.h for more
// flag values for SoundFlags argument on PlaySound
public int SND_SYNC = 0x0000; // play synchronously (default)
public int SND_ASYNC = 0x0001; // play asynchronously
public int SND_NODEFAULT = 0x0002; // silence (!default) if sound not found
public int SND_MEMORY = 0x0004; // pszSound points to a memory file
public int SND_LOOP = 0x0008; // loop the sound until next sndPlaySound
public int SND_NOSTOP = 0x0010; // don't stop any currently playing sound
public int SND_NOWAIT = 0x00002000; // don't wait if the driver is busy
public int SND_ALIAS = 0x00010000; // name is a Registry alias
public int SND_ALIAS_ID = 0x00110000; // alias is a predefined ID
public int SND_FILENAME = 0x00020000; // name is file name
public int SND_RESOURCE = 0x00040004; // name is resource name or atom
public int SND_PURGE = 0x0040; // purge non-static events for task
public int SND_APPLICATION = 0x0080; // look for application specific association
public void Play(string fname, int SoundFlags)
{
PlaySound(fname, 0, SoundFlags);
}
public void StopPlay()
{
PlaySound(null, 0, SND_PURGE);
}
}
Здравствуйте, Александр Кузнецов, Вы писали:
АК>Поэтому лично у меня звуковые оповещения в программах обычно отключены полностью. Если честно, то программу в которой реально постоянно нужно было бы звуковое оповещение, вспомнить затрудняюсь.
Вообще не понятно, зачем Вы отвечали на вопрос автора поста? Он не просил проголосовать, кто за и против озвучки проги, а просто просил привести примеры возможности воспроизведения звуков в программе.
Это тоже самое, что спросить сколько стоит хлеб, и вместо того, чтобы услышать цену, Вы услышите какой он вкусный и с чем его лучше есть.
Здравствуйте, Александр Кузнецов, Вы писали:
АК>Поэтому лично у меня звуковые оповещения в программах обычно отключены полностью. Если честно, то программу в которой реально постоянно нужно было бы звуковое оповещение, вспомнить затрудняюсь.
Вообще не понятно, зачем Вы отвечали на вопрос автора поста? Он не просил проголосовать, кто за и против озвучки проги, а просто просил привести примеры возможности воспроизведения звуков в программе.
Это тоже самое, что спросите сколько стоит хлеб, и, вместо того, чтобы услышать цену, Вы услышите какой он вкусный и с чем его лучше есть.
Re[5]: Как озвучить программу?
От:
Аноним
Дата:
14.11.09 15:50
Оценка:
Здравствуйте, mrjeka, Вы писали:
M>Здравствуйте, Александр Кузнецов, Вы писали:
АК>>Поэтому лично у меня звуковые оповещения в программах обычно отключены полностью. Если честно, то программу в которой реально постоянно нужно было бы звуковое оповещение, вспомнить затрудняюсь.
M>Вообще не понятно, зачем Вы отвечали на вопрос автора поста? Он не просил проголосовать, кто за и против озвучки проги, а просто просил привести примеры возможности воспроизведения звуков в программе. M>Это тоже самое, что спросить сколько стоит хлеб, и вместо того, чтобы услышать цену, Вы услышите какой он вкусный и с чем его лучше есть.
Тут просто наверно очень много одесситов ))
Я уже не в первый раз вижу кучу тредов в которых вместо того чтобы помочь автору — люди обсуждают свои болячки )))
Здравствуйте, Воронков Василий, Вы писали: ВВ>Для нотификации и прочего можно использовать Text2Speech. Нужные классы есть в 3.5, разобраться просто. Довольно свежо и оригинально + возможность легкой настройки пользователем (можно заставить программу говорить все, что угодно).
У меня есть подозрение, что делать этого категорически не нужно. Ненавязчивый аудио-фидбек помогает улучшить "ощущение" от интерфейса.
Представь себе, что твой автомобиль стал вдруг озвучивать включение поворотников не "тиканьем" (которое, если кто не знает, сейчас делается искусственно — реле перестали применять в незапамятные времена), а через TTS. А?
Вот то-то же.
Стандартная звуковая схема в Win7 была пересмотрена в сторону "облегчения", чтобы не звучать слишком назойливо.
Поэтому я бы рекомендовал придерживаться трёх основных стратегий:
1. Уважать пользователя: Как можно больше звуков брать из текущей звуковой схемы. Есть ли событие, которое заслуживает прямо совсем-совсем отдельного звука?
2. Уважать пользователя: Отключать звуки, если они отключены для системы в целом.
3. Уважать пользователя: сделать отключение звуков лёгким для пользователя (например, как в Скайпе, где есть mute all)
4. Уважать пользователя: поставить громкость звуков в своей программе не на максимум (в тех виндах, где микшер позволяет рулить громкостью на уровне приложения), а потише.
5. Ну и вообще, помнить о том, что существует более чем один сценарий работы:
— пользователь работает с текстом/кодом, в наушниках/изолированном офисе. Ему можно помогать заметить фоновые события, а также предоставлять аудио-фидбек на его работу с UI (озвучка drag-n-drop, переключения контролов, етк)
— пользователь работает с текстом/кодом на ноутбуке (без наушников) в open space. Ему можно сообщать о важных фоновых событиях, а вот всяких призвякиваний лучше поменьше (иначе он вообще отключит звук и вся фича пойдёт мимо кассы)
— пользователь смотрит кино или слушает новый альбом Металлики. К нему лучше не лезть со своими ding.wav.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Sinclair, Вы писали:
ВВ>>Для нотификации и прочего можно использовать Text2Speech. Нужные классы есть в 3.5, разобраться просто. Довольно свежо и оригинально + возможность легкой настройки пользователем (можно заставить программу говорить все, что угодно). S>У меня есть подозрение, что делать этого категорически не нужно. S>Ненавязчивый аудио-фидбек помогает улучшить "ощущение" от интерфейса. S>Представь себе, что твой автомобиль стал вдруг озвучивать включение поворотников не "тиканьем" (которое, если кто не знает, сейчас делается искусственно — реле перестали применять в незапамятные времена), а через TTS. А? S>Вот то-то же.
Навигация вот разговаривает и всем это нравится. Представь, что у тебя навигация вместо приятного женского голоса начнет пищат с разной частотой, а по частоте пищания ты будешь определять правильно ты едешь или нет. Представил, понравилось?
Так что может не стоит проводить неуместные аналогии.
S>Стандартная звуковая схема в Win7 была пересмотрена в сторону "облегчения", чтобы не звучать слишком назойливо. S>Поэтому я бы рекомендовал придерживаться трёх основных стратегий: S>1. Уважать пользователя...
Уважать пользователя — значит дать ему возможность настроить приложение, как он хочет. И какие бы "звуковые сигналы" не издавала программа, это никак не исключает банальной возможности их отключить.
Здравствуйте, Sinclair, Вы писали:
S>Представь себе, что твой автомобиль стал вдруг озвучивать включение поворотников не "тиканьем" (которое, если кто не знает, сейчас делается искусственно — реле перестали применять в незапамятные времена), а через TTS. А?
Сорри за оффтопик, но реле для поворотников применяют до сих пор на самых современных машинах, просто они не щелкают громко, да и расположены где нибудь под капотом.
S>Стандартная звуковая схема в Win7 была пересмотрена в сторону "облегчения", чтобы не звучать слишком назойливо.
Я детально не исследовал, но установка семерки заставила меня вспомнить, что винда умеет всяко булькать. Виста квакала пореже.
... << RSDN@Home 1.2.0 alpha 4 rev. 1464 on Windows 7 6.1.7600.0>>