Файли проектів

Каталог Source також містить один підкаталог на кожну платформу Проектні та компонувальні файли використовують вихідний код, розташований в каталозі Common

Windows

для Visual C + + 42 та Visual C + + 50 Для того щоб відкомпілювати проект, вам необхідно скопіювати весь каталог Source (включаючи всі підкаталоги) на ваш жорсткий диск Якщо ви зміните відносне положення файлів проектів та вихідних текстів, вам доведеться видалити всі файли з проекту і заново додати їх

UNIX

Компоновочне файл сумісний з GNU gmake Він повинен підійти з незначними змінами і для інших програм компонування Даний файл припускає, що ви використовуєте компілятор GCC 272:

 ‰   ÐμÑ Ð »Ð ¸  Р² Ñ <Â Ñ ... Ð ¾ Ñ, Ð ¸ Ñ, Ðμ  Р¾ Ñ, Ð º Ð ¾ Ð ¼ Ð ¿Ð ¸ л Ð ¸ Ñ € Ð ¾ Ð ² Ð ° Ñ, ÑŒ  Р¸ Ñ Ñ ... Ð ¾ Ð'Ð ½ Ñ < Ðμ Â Ñ "Ð ° Ð ¹ л Ñ <,  Р² Ñ < Р¼ Ð ¾ Ð ¶ ÐμÑ, Ðμ  Р¿ÐμÑ € ÐμÐ ¹ Ñ, Ð ¸

в каталог, що містить компоновочне файл, використовуючи команду cd, і на-

брати make

 ‰  ÐμÑ Ð »Ð ¸  Р² Ð ° Ð ¼  Р½ ÐμÐ ¾ Ð ± Ñ .. Ð ¾ ÐÐ ¸ Ð ¼ Ð ¾  Р¿Ð ¾ ÐÐ ¿Ñ € Ð ° Ð ² Ð ¸ Ñ, ÑŒ  Р¾ Ð ¿Ñ † Ð ¸ Ð ¸  Рº Ð ¾ Ð ¼ Ð ¿ Ð ¸ Ð »Ñ Ñ, Ð ¾ Ñ € Ð °,  Р½ уР¶ Ð ½ Ð ¾ Â Ñ Ð º Ð ¾ Ð ¿Ð ¸ Ñ € Ð ¾ Ð ² Ð ° Ñ, ÑŒ

компоновочне файл на жорсткий диск і внести відповідні зміни

 ‰  ÐμÑ Ð »Ð ¸ Ð ² Ð ° Ð ¼ Ð ½ уР¶ Ð ½ Ð ¾ Ð ¸ Ð · Ð ¼ ÐμÐ ½ Ð ¸ Ñ, ÑŒ Ð ¸ Ñ Ñ .. Ð ¾ ÐÐ ½ Ñ <Ðμ Ñ" Ð ° Ð ¹ Ð »Ñ <, Ð ½ ÐμÐ ¾ Ð ± Ñ ... Ð ¾ Ð'Ð ¸ Ð ¼ Ð ¾ Ñ Ð º Ð ¾ Ð ¿Ð ¸ Ñ € Ð ¾ Ð ² Ð ° Ñ, ÑŒ Ñ Ð ¾ Ð'ÐμÑ € -

жимое каталогу Common на жорсткий диск і відповідним чином під-

правити компоновочне файл

За замовчуванням компоновочне файл переглядає каталог Common вглиб на два рівня в пошуках вихідних файлів і зберігає їх у каталозі / tmp Якщо ви зміните відносне положення компоновочного файлу і файлів з вихідними текстами, то вам буде потрібно підправити макрос SRCDIR в компонувальному файлі Зауважимо, що компоновочне файл не створює каталоги OBJDIR і BINDIR перед компіляцією вам слід упевнитися, що вони існують

Крім того, програма playsnd НЕ компілюватиметься, якщо не встановлені бібліотеки та заголовки NAS Якщо вони не знаходяться в області стандартного шляху пошуку вашого компілятора, потрібно відредагувати макрос LIBS так, щоб повідомити компілятору, де їх можна знайти Якщо у вас не встановлені файли NAS, спробуйте замість playsnd використовувати програму playtoau, яка працює точно так само, але здійснює виведення

16-бітного файлу AU в stdout замість програвання його через гучномов-

тель Забезпечення NAS для різних систем можна знайти наftp://ftpxorg/

contrib/audio/

Інші системи

Якщо ви використовуєте систему або компілятор, які відрізняються від перерахованих вище, вам буде потрібно або відповідним для вашої системи чином перетворити компоновочне файл UNIX, або створити новий проект з нуля Файли в каталозі Common фактично створюють декілька різних програм Нижче наведено опис кожної програми і перераховуються вихідні файли, необхідні для їх побудови (Якщо ви хочете знати подробиці, перегляньте компоновочне файл UNIX)

Програмаplaysnd  це основна демонстраційна програма Вона відкриває файл, визначає, чи відноситься він до підтримуваних типам, а потім програє його Для компіляції використовуються наступні файли:

‰ основні: audiocpp, audioh, aplayercpp, aplayerh

‰ службові: opencpp, openh

‰ підтримка компресії: compresscpp,compressh,dpcmcpp,dpcmh,

g711cpp, g711h, imaadpcmcpp,imaadpcmh, mpegcpp,mpegh

‰ підтримка файлових форматів: aiffcpp, aiffh, aucpp, auh,

iffcpp, iffh, voccpp, voch, wavcpp, wavh

‰ музична підтримка: instrumth, midicpp, midih, modcpp,

modh, pluckedcpp, pluckedh, sampledcpp, sampledh

‰  системніЯкщо ви використовуєте Win32, вам знадобляться: winmaincpp,

winplayrh і winplayrcpp Якщо ви працюєте в Mac OS, вам потребу-

ються: macmaincpp, macplayrh, macplayrcpp і файл ресурсів play-

soundμrsrc (який розташований в проектному каталозі CW11) Якщо

ви використовуєте Networked Audio System в UNIX, вам знадобляться: nas-

maincpp, nasplayrh і nasplayrcpp

Програма playtoau робить те ж саме, що і наведена вище playsnd, але замість програвання через гучномовець вона спрямовує файл формату AU в stdout Це дозволяє перетворювати файл будь-якого формату в формат AU, що корисно, якщо у вас є окрема утиліта, яка може програвати файли AU, або якщо ваша система занадто повільна для програвання файлового формату (такого як MPEG) в реальному режимі часу Ha виході завжди буде

16-бітна ІКМ Програма компілюється з тих же файлів, що й playsnd, але використовує файл playtoaucpp замість файлу з системного набору, показаного вище

Програмарlаyau(Див розділ 4) читає файл AU зі стандартного потоку введення і програє його через гучномовець Щоб відкомпілювати його, вам використовуються загальні і системні файли, перераховані для playsnd, а також файли: aucpp, auh, compresscpp, compressh, g711cpp і g711h

Програма autoau (Див розділ 16) читає файл AU через cin і виводить інший

файл AU через cout Ha виході завжди 16-бітна ІКМ Щоб відкомпілювати

його, використовуйте загальні файли playsnd, а також файли: autoaucpp, auh,

aucpp, compresscpp, compressh, g711cpp і g711h

Тестова nporpaммaplaynote  розглядалася в розділі 21 Щоб откомпілі-

ровать її, вам будуть потрібні загальні і системні файли, використовувані для програми playsnd, а також файли: playnotecpp, instrumth, sampled, cpp,

sampledh, pluckedcpp і pluckedh

Тестова програмаsinetoau  описана в розділі 4 Щоб відкомпілювати її,

застосовуйте загальні файли playsnd, а також файли: sinetoaucpp, sinewavecpp, aucpp, auh, g711cpp і g711h

Програма logtest (Див главу 11) обчислює справжнє значення відносини сигнал / шум для різних сигналів, використовуючи логарифмічне кодування G711 і ІКМ-кодування Ця програма застосовувалася для оформлення рис 112 Компілюється вона за допомогою файлів: logtestcpp, audiocpp, audioh, g711cpp,

g711h і compressh

Програмаtestmatrix  (Див главу 14) демонструє розбіжності у швидкості між-

ду різними реалізаціями операцій матрицирования MPEG

Коротка програмаfftmain  читає дані з cin, реалізує БПФ стосовно до них, а потім виводить дані в cout Щоб відкомпілювати програму застосовуйте файли fftmaincpp, fftсрр і ffth

Програмаifftmain   аналогічна вищенаведеному прикладу, але реалізує

зворотне ШПФ Для комііляціі використовуйте fftmaincpp, fftcpp і ffth

Зауважимо, що всі перераховані програми мають простий текстовий інтерфейс користувача: playsnd і testmatrix були протестовані на багатьох системах, а інші розроблялися в демонстраційних цілях, і, можливо, для їх правильної компіляції у вашій системі доведеться трохи поекспериментувати

Джерело: Кінтцель Т Керівництво програміста по роботі зі звуком = A Programmers Guide to Sound: Пер з англ М: ДМК Пресс, 2000 432 с, іл (Серія «Для програмістів»)

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*