Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 28.12.2018
Сообщений: 2
1

Подскажите аналог Beep(.);

28.12.2018, 17:04. Показов 788. Ответов 2
Метки нет (Все метки)

Подскажите, пожалуйста, аналог функции Beep(...); который сразу же возвращает управление следующей строке, не дожидаясь сигнала. Если это невозможно, подскажите, как сделать непрерывную мелодию при нажатии на клавишу.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
void zvuk(DWORD k1);
void piano(void) {
    printf_s("Нажимайте клавиши для воспроизведения звуков\n\n");
    printf_s("Нажмите ESC для завершения программы\n");
    while (true) {
        int iKey = 67;
        while (iKey != 13) // Выход по клавише Enter
        {
            if (_kbhit()) {
                iKey = _getch();
                switch (iKey) {
                case 27: //клавиша ESC
                    return; //завершение программы
                default: {
                    zvuk(iKey);
                }
                }
            }
        }
    }
}
void zvuk(DWORD k1) {
    k1 = 250 + 5 * k1;
    double c = k1;
    double b = 10000 * M_PI * (1 / c);
    printf("%.20lf  %i\n", b, k1);
    DWORD k2 = b;
    Beep(k1, k2); //играет прерывно, что не подходит
}
примерно в таком стиле. Заранее благодарен. Работаю с visual studio 2017.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.12.2018, 17:04
Ответы с готовыми решениями:

Аналог функции Beep
Всем ку! Совсем недавно начал изучать C++ и в частности воспроизведение звука. Набрел на функцию...

Подскажите аналог uptime.ru
Был такой хороший сервис UPTIME.RU, но его к сожалению закрыли. Подскажите, пожалуйста, его аналог....

Подскажите аналог DG-104SH
День добрый! Вообщем есть VoIP шлюз D-Link DG-104SH как говорится - тот еще фрукт, порты виснут,...

Подскажите аналог WebBrowser
Подскажите аналог webbrowser с поддержкой куков и прокси, спасибо

2
26 / 26 / 3
Регистрация: 13.04.2012
Сообщений: 61
30.12.2018, 13:21 2
Функция Beep() не подходит для вашей задачи, т.к. это синхронная функция. И даже если вы вынесете её в отдельный поток, вы не сможете контролировать её. Проигрывается строго определенный звук строго определенное время без возможность прерывания и продления. Реализация лежит в системном драйвере.
Для ваших целей подойдут функции воспроизведения заранее подготовленных аудиофайлов, либо библиотеки, способные генерировать и выводить звук в реалтайме.
1
0 / 0 / 0
Регистрация: 28.12.2018
Сообщений: 2
01.01.2019, 07:01  [ТС] 3
Тогда какие библиотеки можно посмотреть для данной темы?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.01.2019, 07:01

Подскажите аналог setbuf в с++
Мне нужно увеличить буфер при записи в файл, как это устроить помимо setbuf

Подскажите аналог MsgBox
Help! Kto znajet, podskaschite. Analog (dla Excel) MsgBox , no tak, 4toby ne schdat'...

Подскажите аналог linerel
В задании нужно нарисовать линию с помощью linerel, но дружить с graphics.h не особо хочу. Как это...

Подскажите аналог программы
У меня на винде стояла программа,что с одного компа делает как бы 2) тоесть к одному системнику...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.