Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Выковырять инфу из wav-ки [D6, WinXP]


Страницы:   1 2 3 4

AL2002_ ©   (2008-02-17 16:39:00) 

Просьба подсказать, как или чем можно извлечь инфу о частоте, длительности, громкости и тэпэ из звукового файла.

Задача: проиграть звуковой файл спукером.

Вот я отрыл код для турбопаскаля, но он работает или под досом или под 98-й. ХР посылаетъ.

Соответственно задача состоит в том, чтобы адаптировать этот код под дельфи и пропищать все это дело через какой-нить компонент, типа Ttone.

А вот код. Если бы я хоть немного шарил в асме, мож чо и понял. 8(

procedure TForm1.Button1Click(Sender: TObject);
Var
f : file;
b1: byte;
spd : word;
b : array [1..64500] of byte;
I, I1:Integer;
begin
RichEdit1.Lines.Clear;
assignFile(f,'Chimes8.wav');
{$I+}
reset(f,1);
blockread(f,b,64500,i);
closefile(f);
spd:=b[25]+(word(b[26]) shl 8);
spd:=$fffffff div longint(spd);
spd:=spd shr 7;
ToneGen1.Frequency:=300;
ToneGen1.Duration:=1;
ToneGen1.Play;
for i1:=44 to i do
       Begin
            asm
{     mov al,b1
    shr al,6
    and al,2
    out 61h,al
    in al,40h
    xchg al,ah
    in al,40h
    xchg al,ah
    mov dx,ax
    @m1:
    xor al,al
    out 43h,al
    in al,40h
    xchg al,ah
    in al,40h
    xchg al,ah
    push dx
    sub dx,ax
    cmp dx,spd
    pop dx
    jb @m1
}
            End;
       End;

end;

Под 98-й, по идее, работает. ХР все потуги на прямое управление железо через int обрубает на корню.
Просьба, адаптировать этот код под дельфи, чтобы можно было все это дело пропищать под ХР-виндой.


Сергей М,   (2008-04-26 20:27:00) [1]


> AL2002_   (26.04.08 14:35) [75]


> зачем вы тут флудите?


За надом)


> вопрос нормальным людям задавал


Ликбез тоже нормальным людям был адресован, а не ламерам)


> разобрался


Ну так сподобся уж, расскажи покажи психохамоватым флудерам, как ты его Нрешил) .. страсть как любопытно ж)


AL2002_   (2008-04-26 14:35:00) [2]

Сергей М, зачем вы тут флудите?

Я вопрос нормальным людям задавал, а не психам и хамам.

ЗЫ
Вопрос, хстате, закрыт.
Уже давно разобрался.


Сергей М,   (2008-04-09 20:48:00) [3]


> чего вы еще хотите?


Что хочет идиот ?)

Он хочет


> адаптировать этот код под дельфи, чтобы можно было все это
> дело пропищать под ХР-виндой


При этом он еще и туп.


Pavia   (2008-04-09 18:22:00) [4]

AL2002_  Помойму вам на все дали ответ чего вы еще хотите? Чего неясного?


AL2002_   (2008-04-09 18:05:00) [5]


> Сергей М. ©   (08.04.08 08:30) [71]
> Ба, да вы все еще кипятите ?!)))


Хватит флудить.


Сергей М.   (2008-04-08 08:30:00) [6]

Ба, да вы все еще кипятите ?!)))


AL2002_   (2008-04-07 22:30:00) [7]

> Сергей М. ©   (27.03.08 08:57) [69]
>Возьми да "раскрой" сам.
>Бесплатный ликбез давно окончен.


Вообще-то вопрос этот не к вам. Да и тема не для вас.
Вы ее только зафлудили напрасно. :(


Сергей М.   (2008-03-27 08:57:00) [8]

Возьми да "раскрой" сам.
Бесплатный ликбез давно окончен.


AL2002_   (2008-03-26 21:43:00) [9]

Up

тема конвертации звуковых волн в очередность герцов не раскрыта.


Сергей М.   (2008-03-13 19:21:00) [10]


> Вы не шарите


Куды ж нам, крестьянам, в лаптях по асфальту


AL2002_   (2008-03-13 18:22:00) [11]

№№64, 65

Вы не шарите.
Это - классика.


Сергей М.   (2008-03-13 10:22:00) [12]


> Знаетее, что меня больше всего бесит?
> Vahmurka


Вахмурка многих "бесит", не только тебя)


Jeer   (2008-03-13 10:08:00) [13]


> простому начинающему программисту

надо начинать с простых вещей, при этом постепенно

> перевернув сотни книг по программированию, и научившись
> программировать

отвечать на форумах за Мастера:)


AL2002_   (2008-03-13 01:08:00) [14]

>Сергей М. ©   (09.03.08 12:28) [62]
>Тебе уже все разжевано.

Знаетее, что меня больше всего бесит?
Vahmurka ©   (16.08.02 11:32)
А то, что ответы на вопросы Великие Мастера Дельфи присылают таким образом, что понять их можно только перевернув сотни книг по программированию, и научившись программировать гараздо лучше чем, отвечающий на этот вопрос человек. Тогда уже и нафиг мне не нужно задавать свой вопрос. Люди думаю так: "Ну раз я понимаю значит и ты поймешь". А простому начинающему программисту остаётся только репу чесать. Один мне на вопрос "Как соединить два компа по LPT?" выдал тераду какихто бесполезных для меня комманд на ассемблере. Блин как буддто я его про ассемблер спрашивал. А другой мне прислал файл с описанием работы портов на железном уровне... Ну не идиоты?

==========

ЗЫ

а действительно, где И. Шевченко, А. Подгорецкий?
Почему молчите? Мне помощь нужна. 8)


Сергей М.   (2008-03-09 12:28:00) [15]


> и программно преобразовать волну в герцы?....... не?


Тебе уже все разжевано.


AL2002_   (2008-03-08 22:14:00) [16]

>то без преобразования ИКМ->ШИМ никак не обойтись
...и программно преобразовать волну в герцы?....... не?.....


Сергей М.   (2008-03-07 09:49:00) [17]


> преобразование данных (тех, что в блоке байтов из wav) идет
> на аппаратном уровне. Так?
>


Если речь идет о ЦАП, то да. Практически любая, даже самая задрипаная бытовая аудиокарта имеет на своем борту аппаратный ЦАП, "умеющий" работать с АКМ-данными (см. [56]). Нет карты  - нет и ИКМ ЦАП. А раз нет ИКМ ЦАП, но есть спикер (считай что это ШИМ ЦАП), то без преобразования ИКМ->ШИМ никак не обойтись.


AL2002_   (2008-03-07 01:24:00) [18]

2СергМ.
>Но для осуществления задуманного эти самые "команды" должны быть
>результатом ИКМ->ШИМ-преобразования. А оно где ? Нет его)

Т.е. преобразование данных (тех, что в блоке байтов из wav) идет на аппаратном уровне. Так?


Jeer   (2008-03-06 12:38:00) [19]


> Сергей М. ©   (06.03.08 12:25) [57]


Тогда мы честно скажем, что сделали все, что могли и хотели.
А чего не хотели, того и не сделали:)


Сергей М.   (2008-03-06 12:25:00) [20]


> Jeer ©   (06.03.08 11:54) [56]


Сдается мне, что совместные усилия по ликбезу в очер.раз окажутся там же где и прежде - у кота под хвостом).. Как это ни печально ..


Страницы:   1 2 3 4

Наверх

Титульная страница Поиск, карта сайта Написать письмо