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

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

28.12.2018, 17:04. Просмотров 476. Ответов 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
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.12.2018, 17:04
Ответы с готовыми решениями:

Какая минимальная частота воспроизведения звука функции Beep?
Здравствуйте. У меня есть вопрос. Какая минимальная частота воспроизведения звука функции Beep?...

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

Подскажите аналог file_get_contents в C++
Привет. Подскажите аналог функции file_get_contents в С++. Или как вообще можно запросить...

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

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

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

Подскажите функцию аналог memcpy()
Функция memcpy() копирует из одного массива в другой первые size элементов. А есть аналогичная...

подскажите аналог конструкции pascal в c
Начал изучать язык Си без плюсов. подскажите, пожалуйста, аналог такой конструкции pascal ...

Happy Birthday с beep()
может у кого есть эта мелодия, или знает как написать


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

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

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