Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.223.196.171] |
|
Сообщ.
#1
,
|
|
|
как я понял мне нужно waveform API,
directX в данном вопросе слишком громоздкий. что сделано: 1.) определение наличие звуковой карты всё просто - одна декорация, одно сравнение! 2.) что далее может помочь, API Guide на запрос о waveInStart указал на интересный пример. Но я так и не понял, что надо отправить в модуль. И в место двух кнопок c именем , скажем : СТАРТ и СТОП и с выводом переменой в текстбокс - ЭТОГО мне было бы достаточно! В коде я обнаружил чекбоксы, таймер и тонна кода P.S. Меня интересует поток звука шумов включенного микрофона, для последующей передачи в переменную, изменения которой можно увидеть-анализировать в текстбоксе |
Сообщ.
#2
,
|
|
|
В чем заключается вопрос? Случаем, не в нарушении п. 3 правил раздела?
|
Сообщ.
#3
,
|
|
|
Уважаемый B.V. это не контрольная, и не просьба написать задание оно сложное
я же прошу помощи разобраться как правильно использовать waveInStart. касаемо проекта, я пытаюсь на основании собранных мной данных, написать распознавание русской речи... микрофон это датчик, подключоный к устройству (звуковая карта - АЦП) неужели чтоб получить данные с датчика мне надо написать около 20 констант и с 10-ок деклораций... к примеру com порт: 1.определили handle устройства 2.открыли порт 3.приём данных 4.закрыли порт всё понятно и минимум кода например с поиском устройства Private Declare Function waveInGetNumDevs Lib "winmm.dll" () As Long Private Sub Command1_Click() ret& = waveInGetNumDevs If ret& > 0 Then Label1.Caption = ret& Else MsgBox "No soundcard detected !" End If End Sub ВСЁ просто! но дальше waveIn неясен? Добавлено уточню все найденные описания waveform API на английском я не могу разобраться через описания api guide в функциях waveIn... куда уходит (в какую переменную) поток данных Я надеялся на совет, какие из них мне будут нужны их много, но мне вроде как нужно только waveInStart и waveInStop |
Сообщ.
#4
,
|
|
|
Цитата astrolit @ я же прошу помощи разобраться как правильно использовать waveInStart. Хорошо. С какого места в документации у тебя возникли затруднения понимания работы waveform API? Добавлено Цитата astrolit @ уточню все найденные описания waveform API на английском Программист обязан знать технический английский Цитата astrolit @ но мне вроде как нужно только waveInStart и waveInStop Тебе нужно waveInOpen, waveInPrepareHeader, waveInAddBuffer, waveInStart, waveInReset, waveInUnprepareHeader и, собственно, waveInClose |
Сообщ.
#5
,
|
|
|
Цитата B.V. @ Хорошо. С какого места в документации у тебя возникли затруднения понимания работы waveform API? ну во первых при записи в проекте: Private Declare Function waveInOpen Lib "winmm.dll" (lphWaveIn As Long, ByVal uDeviceID As Long, lpFormat As WAVEFORMAT, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal dwFlags As Long) As Long выдает ошибку user defined type not defined второе к примеру я вижу в параметрах функции uDeviceID которое указывает ID устройства ввода, вроде. И я могу запистать uDeviceID=2 или как я его могу определить там же предлагается использовать WAVE_MAPPER - Функция выбирает аудио вход устройства способного записывать в указанный формат. вроде как бы так перевод. И что за в указанный формат. когда мне лишь надо поток-набор бинарных данных с микрофона? |
Сообщ.
#6
,
|
|
|
Цитата astrolit @ выдает ошибку user defined type not defined Ты не определил UD-тип перед сигнатурой функции. Это основы.. Цитата astrolit @ второе к примеру я вижу в параметрах функции uDeviceID которое указывает ID устройства ввода, вроде. И я могу запистать Почему ты не читал ремарки? Цитата MSDN Use the waveInGetNumDevs function to determine the number of waveform-audio input devices present on the system. The device identifier specified by uDeviceID varies from zero to one less than the number of devices present. Цитата astrolit @ И что за в указанный формат Формат звука wave, определяемый в структуре WAVEFORMATEX. Аудио -- это не просто поток данных, это поток данных строго определенного битрейта и количества каналов |
Сообщ.
#7
,
|
|
|
Цитата astrolit @ я пытаюсь на основании собранных мной данных, написать распознавание русской речи... Здравствуйте! Меня интересует эта тема. Ищу возможность написать небольшую програмку на VB для распознавания речи. Не высокого качества, типа как в смартфонах для диктовки СМС. Желательно чтобы работала офлайн! Не могли бы вы подсказать, возможно ли это в принципе? |
Сообщ.
#8
,
|
|
|
Цитата Altairhappystar @ Ищу возможность написать небольшую програмку на VB для распознавания речи. Это можно сделать через стандартный TTS-контрол от MS. |
Сообщ.
#9
,
|
|
|
B.V.B.V.B.V.
Цитата B.V. @ через стандартный TTS-контрол от MS. Благодарю за ответ! Но я не профи в VB и не знаю как это прикрутить (TTS-контрол) к форме. Я умею создавать формы и писать коды для обработки объектов, а вот в этих элементах никогда не работал... Это сложно? |
Сообщ.
#10
,
|
|
|
Сдается мне, нужно уже в шапку положить пару исходников.
1:(на Api) - получение отчетов - в фурье(ну или что-нить попроще) - простая обработка - обратное фурье - воспроизведение. 2:( на каких-то контролях)- подключаем контрол - что-то там делаем(распознание, обработка) - воспроизведение. И какого бы плана вопрос не был, можно будет сослаться на исходник и часть в коде. Типа смотри вот этот проект, вот там. ПС Я сам хотел одно время сделать на апи обработку на лету. Все уперлось в невозможность обратного преобразования и воспроизведения. Если просто на экран вывести результат в виде графика - то всё огонь( простую компрессию делал, типа WDRC). Интересно, есть ли у кого-нить такие исходники? Было бы здорово. |