ALGUMA IDEIA PARA ESSE PROJETO???
Pessoal,
Estou desenvolvendo um projeto na area de FONOAUDIOLOGIA, gostaria de saber se alguem dispoe ou como eu fazer uma rotina que grave a voz do paciente a cada consulta que o mesmo realizar durante o tratamento.
Isso para quando no final do tratamento ou em uma determinada data, a FONOAUDIOLOGA compare e mostre ao paciente a voz no primeiro dia da consulta e como esta hoje.
Desde ja agradeço,
Mano
Estou desenvolvendo um projeto na area de FONOAUDIOLOGIA, gostaria de saber se alguem dispoe ou como eu fazer uma rotina que grave a voz do paciente a cada consulta que o mesmo realizar durante o tratamento.
Isso para quando no final do tratamento ou em uma determinada data, a FONOAUDIOLOGA compare e mostre ao paciente a voz no primeiro dia da consulta e como esta hoje.
Desde ja agradeço,
Mano
Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
Private Declare Function mciGetErrorString Lib "winmm.dll" Alias "mciGetErrorStringA" (ByVal dwError As Long, ByVal lpstrBuffer As String, ByVal uLength As Long) As Long
'retorna erro de retorno de STATUS
Private Sub PrintMCIStatus(Code As Long)
Dim ErrorMsg As String
ErrorMsg = String$(1024, vbNullChar) ' Reserve space for message
mciGetErrorString Code, ErrorMsg, 1024 ' Get message
ErrorMsg = Left(ErrorMsg, InStr(1, ErrorMsg, vbNullChar) - 1) 'trim away remaing null chars
Debug.Print ErrorMsg ' print message
End Sub
'retorna mensagens de PrinctMCIStatus
Public Sub StartRecord(ByVal hwnd As Long)
m_sFileName = "Temp"
PrintMCIStatus mciSendString("open new type waveaudio alias TempAudio wait", vbNullString, 0, 0)
PrintMCIStatus mciSendString("seek TempAudio to start wait", vbNullString, 0, 0)
PrintMCIStatus mciSendString("record TempAudio overwrite notify", vbNullString, 0, hwnd)
End Sub
Public Sub StopSaveRecord()
PrintMCIStatus mciSendString("stop TempAudio", vbNullString, 0, 0)
PrintMCIStatus mciSendString("save TempAudio " & Arquivo, vbNullString, 0, 0)
PrintMCIStatus mciSendString("close TempAudio", vbNullString, 0, 0)
End Sub
Private Declare Function mciGetErrorString Lib "winmm.dll" Alias "mciGetErrorStringA" (ByVal dwError As Long, ByVal lpstrBuffer As String, ByVal uLength As Long) As Long
'retorna erro de retorno de STATUS
Private Sub PrintMCIStatus(Code As Long)
Dim ErrorMsg As String
ErrorMsg = String$(1024, vbNullChar) ' Reserve space for message
mciGetErrorString Code, ErrorMsg, 1024 ' Get message
ErrorMsg = Left(ErrorMsg, InStr(1, ErrorMsg, vbNullChar) - 1) 'trim away remaing null chars
Debug.Print ErrorMsg ' print message
End Sub
'retorna mensagens de PrinctMCIStatus
Public Sub StartRecord(ByVal hwnd As Long)
m_sFileName = "Temp"
PrintMCIStatus mciSendString("open new type waveaudio alias TempAudio wait", vbNullString, 0, 0)
PrintMCIStatus mciSendString("seek TempAudio to start wait", vbNullString, 0, 0)
PrintMCIStatus mciSendString("record TempAudio overwrite notify", vbNullString, 0, hwnd)
End Sub
Public Sub StopSaveRecord()
PrintMCIStatus mciSendString("stop TempAudio", vbNullString, 0, 0)
PrintMCIStatus mciSendString("save TempAudio " & Arquivo, vbNullString, 0, 0)
PrintMCIStatus mciSendString("close TempAudio", vbNullString, 0, 0)
End Sub
nao posso te passar o projeto onde uso isso...
mas basta colocar isto em um modulo...
quando for iniciar a gravacao chama a funcao StartRecord
Quando for finalizar a gravacao chama a funcao StopSaveRecord...
tive de adaptar para mandar para vc entao na rotina StopSaveRecord coloque um parametro de entrada chamado Arquivo do tipo string indicando o nome e caminho do arquivo que deseja gravar...
e em start record vc pode tirar a primeira linha m_sFileName = "Temp"
o hwnd de entrada do StartRecord eh o hwnd do form principal de sua aplicacao
mas basta colocar isto em um modulo...
quando for iniciar a gravacao chama a funcao StartRecord
Quando for finalizar a gravacao chama a funcao StopSaveRecord...
tive de adaptar para mandar para vc entao na rotina StopSaveRecord coloque um parametro de entrada chamado Arquivo do tipo string indicando o nome e caminho do arquivo que deseja gravar...
e em start record vc pode tirar a primeira linha m_sFileName = "Temp"
o hwnd de entrada do StartRecord eh o hwnd do form principal de sua aplicacao
Tópico encerrado , respostas não são mais permitidas