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

Вниз

Звук (ошибка)   Найти похожие ветки 

 
MIA   (2004-04-20 21:17) [0]

Извеняюсь....
Долго лазил в инете и читал хелпы по теме вывод/ввод звука..
При открытии waveOutOpen, она возвращает 0(в пошаговой оладке)... т.е. всё окей, но если вызывается результат на проверку... возникает ошибка...
Проверял на двух компах 2000 и ХРю..
Где не доглядел...

uses MMSystem;  
procedure TForm1.Button12Click(Sender: TObject);
var
 f1: Cardinal;
 f: PHWaveOut;
 str: PWaveFormatEx;
begin
 FillChar(str, SizeOf(PWaveFormatEx), 0);

 str.wFormatTag := WAVE_FORMAT_PCM;
 str.nChannels := 1;
 str.nSamplesPerSec := 22050;
 str.wBitsPerSample := 16;
 str.nAvgBytesPerSec := 176400;
 str.nBlockAlign := 4;
 //открытие устройства воспроизведения
 f1 := waveOutOpen(f, WAVE_MAPPER, str, 0, 0, WAVE_ALLOWSYNC);
 if f1 = MMSYSERR_NOERROR then
   begin
     ShowMessage("");
   end;
end;


 
Evgeny V ©   (2004-04-21 07:05) [1]

str.nBlockAlign := 4????
nBlockAlign:=nChannels * wBitsPerSample div 8 для WAVE_FORMAT_PCM у тебя  -> 1*16/8=2 , соответственно надо пересчитать
nAvgBytesPerSec:=nSamplesPerSec * nBlockAlign(тоже странное число у тебя). Про флаг WAVE_ALLOWSYNC к сожалению сказать не могу, не пользовался, обычно открываю устройство в режиме сообщений для окна, или в режиме вызова callbak функции



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

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

Наверх




Память: 0.44 MB
Время: 0.039 c
4-1085377670
vint1978
2004-05-24 09:47
2004.07.04
Как узнать серийные номера сетевой карты и видеокарты программно?


11-1076154241
Sewix
2004-02-07 14:44
2004.07.04
Мне нужно создать n EditBox’ов


3-1086709980
Ven
2004-06-08 19:53
2004.07.04
Сохранение данных в БД InterBase


4-1085223150
Jel
2004-05-22 14:52
2004.07.04
Работа с ExtractIconEx - есть вопросы


1-1087820428
zep
2004-06-21 16:20
2004.07.04
StringGrid





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский