Fon |
Отправлено: 03.09.2004, 16:19 |
|
Не зарегистрирован
|
Добрый день.
Подскажите, пожалуйста, как написать такую программу. Ранее с подобными задачами я не сталкивался.
Например, есть файл A.wav. Необходимо выдать его на аудио-выход и одновременно с этим начать забирать информацию с аудио-входа, записывая ее, например, в файл B.wav. Напишите, пожалуйста, какие подводные камни тут могут быть.
|
|
Sl@Sh |
Отправлено: 03.09.2004, 19:03 |
|
Мастер участка
Группа: Участник
Сообщений: 383
|
Это должно тебе помочь, извини, что на паскале.
uses mmSystem;
{....}
procedure TForm1.Button1Click(Sender: TObject); // 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;
procedure TForm1.Button2Click(Sender: TObject); // Stop
begin
mciSendString('STOP mysound', nil, 0, Handle)
end;
procedure TForm1.Button3Click(Sender: TObject); // 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;
|
|
Fon |
Отправлено: 04.09.2004, 18:27 |
|
Не зарегистрирован
|
Спасибо за совет.
С воспроизведением все более менее ясно. Но возникли проблемы с записью. Как правильно произвести запись в wav файл используя MCI интерфейс. Пусть, например, в течении двух минут на аудио вход поступает сигнал, который необходимо записать, как это правильно сделать?
Заранее спасибо. |
|
Sl@Sh |
Отправлено: 04.09.2004, 20:03 |
|
Мастер участка
Группа: Участник
Сообщений: 383
|
Используй таймер. Например введи некую переменную k типа char равную нулю. Когда таймер включается, то увеличивается на 1, но при этом следует проверить, не равно ли её значение 2 и больше. Если всё таки равно, то глушим таймер, а вместе с ним и запись. Интервал таймера для двух минут = 120000. Удачи!
|
|
|