Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.07.18;
Скачать: [xml.tar.bz2];

Вниз

Wave-header   Найти похожие ветки 

 
GlavBOTan ©   (2004-04-30 22:20) [0]

Еще один вопрос про wave:
Опытным путем (открытием в блокноте :) было установленно, что в начале файла имеется какая-то служебная информация (то ли метод кодировки, то ли еще что-то). Кто знает, что это такое, и сколько места оно занимает в файле (например, 128 первых байт), пожалуйста отзовитесь. А еще лучше киньте мне ссылочку на ресурс с описанием (желательно на русском и для чайников, но на английском и для профи тоже приветствуется) wave-формата, если таковая есть. Заранее благодарен.


 
x3{neon}   (2004-04-30 22:44) [1]

Вот заголовок wav файла:
type WAVHeader = record

nChannels       : Word;
nBitsPerSample  : LongInt;
nSamplesPerSec  : LongInt;
nAvgBytesPerSec : LongInt;
RIFFSize        : LongInt;
fmtSize         : LongInt;
formatTag       : Word;
nBlockAlign     : LongInt;
DataSize        : LongInt;
end;

А вот формат:
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;
Может быть поможет


 
konstantinov ©   (2004-05-01 00:26) [2]

DataBytes := Channels;
DataBytes := DataBytes * SampleRate;
DataBytes := DataBytes * Resolution;
DataBytes := DataBytes div 8;
DataBytes := DataBytes * Duration;
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 := SampleRate;
WaveHeader.Channels := Channels;
WaveHeader.BytesPerSecond := Channels;
WaveHeader.BytesPerSecond := WaveHeader.BytesPerSecond * SampleRate;
WaveHeader.BytesPerSecond := WaveHeader.BytesPerSecond * Resolution;
WaveHeader.BytesPerSecond := WaveHeader.BytesPerSecond div 8;
WaveHeader.BytesPerSample := Channels * Resolution div 8;
WaveHeader.BitsPerSample := Resolution;
WaveHeader.Marker4 := "data";
WaveHeader.DataBytes := DataBytes;

Остальная часть файлы является звуковыми данными.


 
wicked ©   (2004-05-01 14:23) [3]

по сабж -
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_waveformatex_str.asp
а также функции mmioOpen/mmioDescend/mmioAscend/mmioRead/mmioClose (линк тот же, там должно быть меню слева)

2 [1] и [2]
и не стыдно неправильную информацию давать?...


 
GlavBOTan ©   (2004-05-01 21:29) [4]

Всем большое спасибо! Пойду разбираться...



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

Форум: "Media";
Текущий архив: 2004.07.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.036 c
3-1087422789
Novichok
2004-06-17 01:53
2004.07.18
Delphi и MySQL или что-нибудь еще


14-1088609735
Jeer
2004-06-30 19:35
2004.07.18
С днем сисадмина !


6-1082711135
turich
2004-04-23 13:05
2004.07.18
Как отправить файл при помощи IdSMTP?


3-1088060842
Blick
2004-06-24 11:07
2004.07.18
Русские буквы в dBASE(IV)


3-1087749934
REd_imp
2004-06-20 20:45
2004.07.18
Поддержка украинский символов в *.dbf файле.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский