this slowpoke moves

Input Line Wave Recorder

Das folgende Beispiel zeigt, wie man das eingehende Audiosignal auf Windows aufnehmen kann. Dazu müssen natürlich die richtigen Audiotreiber installiert sein. Das Signal kann über den Eingang oder Stereo-Mix sowohl als auch über das Mikrofon erfasst werden.

Aufgenommen wird die Wave Datei in zwei Bitraten 8 oder 16 und in zwei Channels Stereo oder Mono.

Es wird benötigt : 3xButton; 1xEditBox, 2xRadioButton, 1xSaveDialog, 1xCheckBox

uses MMSystem

//

procedure TForm1.Button1Click(Sender: TObject);
begin
  Button1.Enabled := False;
  Button2.Enabled := True;
  mciSendString('close all', nil, 0, 0);
  mciSendString('open new type waveaudio alias capture', nil, 0, 0);
  mciSendString('seek capture to start', nil, 0, 0);

  // Very poor sound quality by default
  If CheckBox1.Checked = True Then
  mciSendString('set capture samplespersec 44100', nil, 0, 0);

  //Sound quality very poor by default
  If CheckBox1.Checked = False Then
  mciSendString('set capture samplespersec 11100', nil, 0, 0);
  // Number of bits (8 or 16)
  mciSendString(PChar('set capture bitspersample ' + ComboBox1.Items[ComboBox1.ItemIndex]) , nil, 0, 0);

  //Channel (1 = Momo, 2 = Stereo)
  If RadioButton1.Checked = True Then
  mciSendString('set capture channels 2', nil, 0, 0);

  //Channel (1 = Momo, 2 = Stereo)
  If RadioButton2.Checked = True Then
  mciSendString('set capture channels 1', nil, 0, 0); 
  mciSendString('record capture', nil, 0, 0);

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  button1.Enabled := True;
  button2.Enabled := False;
  mciSendString(PChar('save capture "' + edit1.Text + '"'), nil, 0, 0);
  mciSendString('stop capture', nil, 0, 0);
  mciSendString('close capture', nil, 0, 0);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  SaveDialog.Execute;
  Edit1.Text := Copy(SaveDialog.Files.Text,1,length(SaveDialog.Files.Text)-2) + '.wav';
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  ComboBox1.ItemIndex := 0;
end;

Keine Kommentare:

Kommentar veröffentlichen

Beliebte Posts

Translate