Фоновый звук приложения. Pascal
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
- Колядин Максим
- Сообщения: 297
- Зарегистрирован: 16 ноя 2006, 19:09
- Откуда: Seattle, WA
- Контактная информация:
Спасибо. Если можно, приведите пожалуйста пример программы, воспроизводящей фоновыый звук, ато, несмотря на то что вы мне подробно объяснили, я не пойму как создать все эти процедуры, инициализации и т.д. Если можно то, пожалуйста, напишите мне код, буду очень благодарен. И извините за то что занимаю ваше драгоценное время, вы мне уже какой раз помогаете.
- Колядин Максим
- Сообщения: 297
- Зарегистрирован: 16 ноя 2006, 19:09
- Откуда: Seattle, WA
- Контактная информация:
Ладно, с процедурами я уже сам разобрался, а теперь опять проблема - Wav какого формата там нужно воспроизводить???
______
Вот данные, с которыми мне советывали выоспроизводить
Качество звука - 176 кб.с
Размер аудио образца - 8 бит
Каналы - 1(моно)
Частота дискритизации - 22 кГц
Формат аудио - PCM
_________
Сделал wav-ку с этими данными, почему не воспроизводится, хотя файл-пример, с точно такими же данными проигрывается без проблем?
______
Вот данные, с которыми мне советывали выоспроизводить
Качество звука - 176 кб.с
Размер аудио образца - 8 бит
Каналы - 1(моно)
Частота дискритизации - 22 кГц
Формат аудио - PCM
_________
Сделал wav-ку с этими данными, почему не воспроизводится, хотя файл-пример, с точно такими же данными проигрывается без проблем?
Ты лучше свой код покажи
- Колядин Максим
- Сообщения: 297
- Зарегистрирован: 16 ноя 2006, 19:09
- Откуда: Seattle, WA
- Контактная информация:
Код слишком длинный, сюда не помещается, вот он в Zip.
(Wav-player.ZIP)
И вот ещё wav-файл, который воспроизводится этой программой.
(WAV.ZIP).
(Wav-player.ZIP)
И вот ещё wav-файл, который воспроизводится этой программой.
(WAV.ZIP).
- Вложения
-
- WAV.ZIP
- (4.92 КБ) 26 скачиваний
-
- Wav-player.ZIP
- (2.5 КБ) 25 скачиваний
Колядин Максим, оно тебе надо, так париться. Вот путь намного проще.
PlaybackReady - вызывается когда число проигранных сэмлов достигнет заданному в PlaySample значению.
InBuffer - подгружает внутренний буффер, модуль Audio сам делает своп (swap) двух буфферов, чтобы не было прерывания звучания.
Главное просто разобраться в модуле, не надо искать готовых решений - надо чуть-чуть подумать просто и тогда может ты еще проще реализуешь то, что тебе нужно.
Код: Выделить всё
uses Crt, Audio;
Type MySound = object(SoundBlasterPro)
procedure InBuffer(var Buffer; Size:Word); virtual;
procedure PlayBackReady; virtual;
end;
var
Aud : MySound;
Buf : Array [0..16383] of byte;
PlayEnd : boolean;
F : File;
procedure MySound.InBuffer(var Buffer; Size:Word);
var cnt : word;
begin
if not eof(F) then BlockRead(F, Buffer, Size, cnt);
end;
procedure MySound.PlaybackReady;
begin
PlayEnd := true;
end;
begin
Assign(F, 'Whitney.wav');
Reset(F, 1);
Aud.Init($220, 5, 1);
Aud.SetOutput(Mono, True);
ClrScr;
PlayEnd := false;
Aud.PlaySample(11025, filesize(F));
While (not keypressed) and (not PlayEnd) do
begin
GotoXY(1,1);
Writeln('Some idle process #',random(1000));
end;
Writeln('Playback finished');
end.
InBuffer - подгружает внутренний буффер, модуль Audio сам делает своп (swap) двух буфферов, чтобы не было прерывания звучания.
Главное просто разобраться в модуле, не надо искать готовых решений - надо чуть-чуть подумать просто и тогда может ты еще проще реализуешь то, что тебе нужно.
- Колядин Максим
- Сообщения: 297
- Зарегистрирован: 16 ноя 2006, 19:09
- Откуда: Seattle, WA
- Контактная информация:
Нихрена себе, - ИГРАЕТ!!!!!! Блин, откуда ты всё знаешь?? Настоящий профессилнал! !!!Огромное спасибо!!!
А ты говоришь просто надо в модуле разобраться, как ты это делаешь, если к нему не прилогается никакой инструкции? Например, откуда ты знаешь, что в модуле Audio.tpu значат какие процедуры? Ещё раз, спасибо.
А ты говоришь просто надо в модуле разобраться, как ты это делаешь, если к нему не прилогается никакой инструкции? Например, откуда ты знаешь, что в модуле Audio.tpu значат какие процедуры? Ещё раз, спасибо.
Ну так в том архиве что я выложил есть еще Audio.pas, там есть все процедуры и функции модуля. Просто прочитал и все..." писал(а):если к нему не прилогается никакой инструкции? Например, откуда ты знаешь, что в модуле Audio.tpu значат какие процедуры
- Колядин Максим
- Сообщения: 297
- Зарегистрирован: 16 ноя 2006, 19:09
- Откуда: Seattle, WA
- Контактная информация:
Понятно, вообщем проблема решена, ты мне снова очень помог, Спасибо!