Csound

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

Csound — це мова програмування, призначена для роботи над музичним звуком, розробку якого було засновано Barry Vercoe в Масачусенському технологічному університеті в 1984 році. Csound отримав чисельні відгуки від дослідників та музикантів зі всього світу.

Десь близько 1991 року, John ffitch портував Csound на Microsoft DOS. Тепер ця програма працює на різноманітних версіях UNIX та Linux, Microsoft DOS та Windows та на всіх версія Mac OS, включаючи Mac OS X.

Попри те що з'явилися новіші програми, як то Max/MSP, PD, jMax чи Open Sound World, що мають графічні редактори патчів, чи такі що використовують більш розвинені техніки в розробці программ (об'єктно-орієнтований SuperCollider), але Csound все ще має найбільший та найрізноманітніший набір генераторів, найкраще документований та може працювати на найбільшій кількості платформ. Можливо зкомпілювати Csound для роботи з арифметикою подвійної точності для найвищої якості звуку, тож можна сказати напевно, що Csound є одним з найпотужніших інструментів коли-небудь створених.

Додатково до класичних версій Csound та CsoundAC, існує багато інших версій та фронтендів, багато з яких можна знайти на www.csounds.com

Запуск Csound з командного рядка[ред.ред. код]

Csound генерує звук із двох файлів — файла оркестра та файла нот (.orc та .sco відповідно), або з одного уніфікованого .csd файлу. Csound розроблявся для запуску з під терміналу або вікна DOS, але може бути запущеним з простішого у використанні фронтенду. Нотний файл (.sco) може бути в одному з різних форматів, залежно від налаштувань користувача. Трансляція, сортування та форматування в можливий до виконяння оркестром формат виконується препроцессорами; увесь нотний файл, чи його частина потім відсилаються в оркестр. Виконання оркестром залежить від командних флагів, що встановлюють кількість відображаємої інформації та повідомлення консолі, файли для введення/виведення, частоту дескретизації та розрядність семплів та описують real-time введення/виведення.

Опції для Csound можуть бути вказані у п'яти місцях, що обробляються в наступному порядку:

  1. Власні налаштування Csound за замовчуванням.
  2. Файл вказаний у системній змінній CSOUNDRC, або ж файл .csoundrc в домашній теці
  3. Файл .csoundc в поточній теці
  4. Тег в .csd файлі
  5. Параметри передані за допомогою командної строки

Пізніші опції за пріоритетом вищі за більш ранні. З версії 5.01 Csound, частота семплів та контролерів, встановлена де завгодно за допомогою флагів -r та -k , вища за пріоритетом ніж sr,kr та ksmps визначені в заголовці .orc файлу.

Синтаксис командного рядка[ред.ред. код]

Наступним за командою csound йде перелік прапорців та ім'я файлів оркестра (.orc) та нот (.sco) або ж уніфікованого файлу .csd (він містить і оркестр й ноти).

Прапорці, що контролюють введення та виведення, можуть з'явитись будь-де в командному рядку, окремо чи разом. Прапорець, якому потрібно ім'я або число знайде його в цьому аргументі, або ж в безпосередньо наступному. Тож такі командні рядки еквівалентні:

csound -nm3 orchname -Sxxfilename scorename
csound -n -m 3 orchname -x xfilename -S scorename

Всі прапорці та імена не є обов'язковими. Значенням за замовчуванням є командний рядок:

csound -s -otest -b1024 -B1024 -m7 -P128 orchname scorename

де orchname то ім'я файлу оркестру, а scorename — стандартний числовий файл нот, що опціонально може бути відсортованим та підданий змінам аа часом.

Якщо файл нот не вказано, є два варіанти стандартних опцій:

  1. якщо очікується real-time введення (наприклад прапорці -L, -M, -iadc або -F) то файл нот заміняється на команду «f 0 3600» (тобто: приймати ноти з real-time введення на протязі часу)
  2. В іншому випадку Csound використовує попередньо обробленний score.srt в поточній теці

На різних стадіях роботи з партітурою та оркестром Csound інформує про стан виконання, проводить різні синтаксичні перевірки. Щойно розпочалося виконання, будь-яку помилку буде відображено, де б вона не з'явилась — в партитурі чм безпосередньо в генераторах.

Запуск зразків програм, з інструкції до Csound[ред.ред. код]

Більшість зразків з інструції до Csound готові до запуску без додавання будь яких флагів командного рядка, тому що вонт вже вказані всередені .csd файлу у тезі , тож вам лише набрати щось на зразок:

csound oscil.csd

всередені теки, де міститься зразок і отримати аудіо реального часу.

Посилання[ред.ред. код]

  • Official website contains FAQs, manuals, programming examples, other front end programs, and misc other goodies. The mailing list archive is also a good place to find detailed information.
  • Project site at Sourceforge
  • The Csound Manual
  • MacCsound is an integrated Csound programming environment for Macintosh.
  • Csound for MacOS Classic
  • Csound Editor is an integrated programming environment for Csound [Windows].
  • WinXoundPro another IDE for Csound.
  • Dex Tracker Dex Tracker a tracker style front end for csound Including a grid editor and code generation tools, and the ability to save your favorite sounds and rhythms as presets
  • blue A music composition environment for Csound.
  • Bol Processor A music composition environment for Csound and MIDI
  • Automated CSound Orchestra Automated Csound orchestra building from individual instruments in csd format, convert midi to CSound, and record to Csound in real time (windows program)
  • AlgoScore An algorithmic composition environment where one works in a graphical score, for Csound and MIDI.
  • Csound-OLPC The Csound page in the OLPC wiki, with extra tutorials and XO-specific information and Dr.B's TOOTs
  • The Csound Book edited by R Boulanger and the 3500+-instrument Csound Catalog
  • Cecilia a production frontend for Csound.
  • Lettuce a Windows frontend/editor for Csound5.
  • Csound Helpers A list of links to Csound helper applications, mostly for Linux.