Como gravar arquivos wave (*.wav)? – Show Delphi

DICAS

Visite a biblioteca de dicas da comunidade.

Saiba mais

ARTIGOS

Abordagens detalhadas sobre assuntos diversos.

Saiba mais

INICIANTES

Aprenda a programar de um modo simples e fácil.

Saiba mais

DOWNLOADS

Acesse os materiais exclusivos aos membros.

Saiba mais
voltar

PARA QUEM GOSTA DE DELPHI

Como gravar arquivos wave (*.wav)?

 

Esta dica mostra como podemos gravar sons com o Delphi.
O Sons gravados são do formato wave.

Crie uma nova aplicação e adicione três botões.
Após isso declare mmSystem na seção uses,
em versões unicode declare Winapi.MMSystem.

E deixe os eventos OnClick dos botões conforme o exemplo abaixo:

Iniciando a gravação.

1
2
3
4
5
6
7
8
9
10
11
procedure TForm1.Button1Click(Sender: TObject);  // Gravar, Record
begin
  mciSendString('OPEN NEW TYPE WAVEAUDIO ALIAS mysound', nil, 0, Handle);
  mciSendString('SET mysound TIME FORMAT MS ' +     // set time
    'BITSPERSAMPLE 8 ' +                // 8 Bit
    'CHANNELS 1 ' +                     // MONO
    'SAMPLESPERSEC 8000 ' +             // 8 KHz
    'BYTESPERSEC 8000',                 // 8000 Bytes/s
    nil, 0, Handle);
  mciSendString('RECORD mysound', nil, 0, Handle);
end;

Parando a gravação.

1
2
3
4
procedure TForm1.Button2Click(Sender: TObject); // Parar, Stop
begin
  mciSendString('STOP mysound', nil, 0, Handle);
end;

Salvando o áudio, neste caso o arquivo é salvo junto com o executável.

1
2
3
4
5
6
7
8
procedure TForm1.Button3Click(Sender: TObject); // Salvar, Save
var
  verz: String;
begin
  GetDir(0, verz);
  mciSendString(PChar('SAVE mysound ' + verz + '/test.wav'), nil, 0, Handle);
  mciSendString('CLOSE mysound', nil, 0, Handle);
end;

A função foi testada no Windows 8.1 e funcionou muito bem.

Dúvidas ou sugestões deixe nos comentários do post.

Facebook Comments

Posts Relacionados

  • Administrador
  • 466 views
  • 0 comentários
  • 18 de abril de 2015

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Ir ao topo

© 2016 Infus Soluções em Tecnologia - Todos os Direitos Reservados