Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.17;
Скачать: CL | DM;

Вниз

Создание WAV файла   Найти похожие ветки 

 
Konstantin_   (2002-06-16 18:28) [0]

Привет всем!

Кто подскажет,как создать пустой файл .WAV

Проблема в том,что компонента MedyaPlayer работает только с созданным файлом,а не позволяет его создать.


 
sevylor ©   (2002-06-19 01:30) [1]

type TWaveHeader = record
Marker1: Array[0..3] of Char;
BytesFollowing: LongInt;
Marker2: Array[0..3] of Char;
Marker3: Array[0..3] of Char;
Fixed1: LongInt;
FormatTag: Word;
Channels: Word;
SampleRate: LongInt;
BytesPerSecond: LongInt;
BytesPerSample: Word;
BitsPerSample: Word;
Marker4: Array[0..3] of Char;
DataBytes: LongInt;
end;

procedure CreateWavFile(const aSampleRate,aDuration,aBits,aChannels:integer;
const aName:String);

implementation


procedure CreateWavFile(const aSampleRate,aDuration,aBits,aChannels:integer;
const aName:String);
var WaveHeader:TwaveHeader;
f:file of byte;
DataBytes:integer;
begin
// for Duration=0 (in ms) DataBytes=0
DataBytes := aChannels;
DataBytes := DataBytes * aSampleRate;
DataBytes := DataBytes * aBits;
DataBytes := DataBytes div 8;
DataBytes := DataBytes * aDuration;
DataBytes := DataBytes div 1000;

WaveHeader.Marker1 := "RIFF";
WaveHeader.BytesFollowing := DataBytes + 36;
WaveHeader.Marker2 := "WAVE";
WaveHeader.Marker3 := "fmt ";
WaveHeader.Fixed1 := 16;
WaveHeader.FormatTag := 1;
WaveHeader.SampleRate := aSampleRate;
WaveHeader.Channels := aChannels;
WaveHeader.BytesPerSecond := aChannels;
WaveHeader.BytesPerSecond := WaveHeader.BytesPerSecond * aSampleRate;
WaveHeader.BytesPerSecond := WaveHeader.BytesPerSecond * aBits;
WaveHeader.BytesPerSecond := WaveHeader.BytesPerSecond div 8;
WaveHeader.BytesPerSample := aChannels * aBits div 8;
WaveHeader.BitsPerSample := aBits;
WaveHeader.Marker4 := "data";
WaveHeader.DataBytes := DataBytes;
AssignFile(f,aName);
Rewrite(f);
BlockWrite(f,WaveHeader,SizeOf(WaveHeader));
CloseFile(f);
end;

end.



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

Текущий архив: 2002.10.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
8-56241
Шишков Илья
2002-06-15 20:48
2002.10.17
DXDraw


3-55969
EugeneP
2002-09-25 12:21
2002.10.17
Есть следующая задача. Хотелось бы послушать размышления.


14-56275
Undert
2002-09-22 21:17
2002.10.17
Просьба ко ВСЕМ!


1-56202
Barman
2002-10-06 19:49
2002.10.17
PopupMenu


1-56082
yaJohn
2002-10-08 16:10
2002.10.17
Проверить доступность МИДАС - сервера.