Вниз
Скачать: CL | DM;

Как создать пустой wav-файл   Найти похожие ветки 

 
Виктор_2   (2002-10-21 17:39) [0]

Формат 16 bit mono 44100
Help me please:)


 
apay ©   (2002-10-23 00:48) [1]

заполни RIFF заголовок, если не ошибаюсь, 44 байта и сохрани.
усли влом чинать про RIFF, используй SoundRecorder.


 
SCHMaster ©   (2002-10-27 02:22) [2]

The TMediaPlayer может открыть звуковой файл, если он содержит, по крайней мере, один байт данных.
Нижеприведенный код создаст звуковой файл размером 1 байт. Конечно это криво, но это работает. Вам необходимо лишь добавить MMSYSTEM ко всем модулям, использующим данную функцию.

function CreateNewWave(NewFileName: String): Boolean;


var
DeviceID: Word;
Return: LongInt;
MciOpen: TMCI_Open_Parms;
MciRecord: TMCI_Record_Parms;
MciPlay: TMCI_Play_Parms;
MciSave: TMCI_SaveParms;
MCIResult: LongInt;
Flags: Word;
TempFileName: array[0..255] of char;


begin
MediaPlayer.Close;


StrPCopy(TempFileName, NewFileName);
MciOpen.lpstrDeviceType := "waveaudio";
MciOpen.lpstrElementName := "";
Flags := Mci_Open_Element or Mci_Open_Type;
MCIResult := MciSendCommand(0, MCI_OPEN, Flags, LongInt(@MciOpen));


DeviceID := MciOpen.wDeviceId;


MciRecord.dwTo := 1;
Flags := Mci_To or Mci_Wait;
MCIResult := MciSendCommand(DeviceID, Mci_Record, Flags, LongInt(@MciRecord));


mciPlay.dwFrom := 0;
Flags := Mci_From or Mci_Wait;
MciSendCommand(DeviceId, Mci_Play, Flags, LongInt(@MciPlay));


mciSave.lpfileName := TempFilename;
Flags := MCI_Save_File or Mci_Wait;
MCIResult := MciSendCommand(DeviceID, MCI_Save, Flags, LongInt(@MciSave));


Result := MciSendCommand(DeviceID, Mci_Close, 0, LongInt(nil)) = 0;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
14-29043
OxOTHuK
2003-01-23 22:32
2003.02.10
операторы передачи управления и особенности их использования


14-29003
Феликс
2003-01-27 00:20
2003.02.10
Бывают ли тайные общества?


14-29085
Феликс
2003-01-24 01:44
2003.02.10
Кому нравятся модели?


1-28914
Gayrus
2003-01-29 03:30
2003.02.10
fmod.dll


3-28584
Стас
2003-01-21 14:26
2003.02.10
Фигня с TDateTime




   Наверх