Ikuti dan bergabunglah dalam pemrograman musik - bahasa yang akan membantu melakukan ini

Dalam salah satu bahan sebelumnya, kami menulis tentang Sporth, yang dikembangkan untuk melakukan sesi musik live. Hari ini kita akan berbicara tentang alat lain untuk "pemrograman musikal" - bahasa Csound . Dan mari kita bicara tentang rekan-rekannya - SuperCollider dan Data Murni .


Artis Luput Foto / Cabut

Bagaimana Csound muncul


Bahasa ini memungkinkan Anda untuk memecahkan masalah pemrosesan sinyal audio dan merupakan alat yang populer untuk " pemrograman musik ." Istilah ini mengacu pada proses penulisan trek menggunakan perangkat elektronik: sequencer, synthesizer dan perangkat lunak.

Sejarah Csound berasal dari pertengahan abad terakhir. Dia adalah keturunan langsung dari keluarga bahasa MUSIC-N , versi pertama yang pada tahun 1957 diperkenalkan oleh insinyur Max Mathews dari Bell Labs. MUSIK dianggap sebagai salah satu solusi pertama untuk generasi gelombang suara digital. Dengan bantuannya, komposisi " Skala Perak " dan " Variasi Pitch " ditulis . Keduanya karya milik insinyur akustik dan ahli bahasa Newman Guttman, yang merupakan programmer musik pertama dalam sejarah.


Seiring waktu, kemungkinan MUSIC diperluas: versi bahasa yang baru muncul, dan basis pengguna meningkat. Pada pertengahan 80-an, kemampuan sistem tersebut menarik minat Barry Vercoe, seorang spesialis dari MIT Media Labs. Menggunakan prestasi rekan-rekannya dari Bell Labs, ia menyadari bahasanya dan menamainya Csound . Dia menulis kompiler di C dan memutuskan untuk mendistribusikan semuanya di bawah lisensi LGU LGPL. Sistem ini masih didukung dan dikembangkan oleh modul untuk pemrosesan sinyal.

Fitur Bahasa


Untuk menghasilkan suara , opcode khusus digunakan di sini . Kode-kode ini diperlukan untuk mengidentifikasi instrumen dalam file orkestra digital . Misalnya, untuk memasukkan osilator ke dalam orkestra, cukup tulis perintah berikut:

a1 oscil 10000, 440, 1

Tiga argumen masing-masing adalah amplitudo, frekuensi, dan bentuk gelombang.

Daftar catatan yang akan dimainkan ditempatkan dalam file skor terpisah , dibuat dalam editor teks biasa. Selanjutnya, kompiler mengatur skor berdasarkan waktu, menghitung nilai untuk tabel gelombang, dan memainkan musik.

Jika diinginkan, file orkestra dan skor dapat digabungkan menjadi satu dengan tag khusus. Wiki menyediakan contoh isi dokumen tersebut - ia menghasilkan gelombang sinus yang berlangsung satu detik dengan frekuensi 1 kHz.

<CsoundSynthesizer>

  <CsOptions>
    csound -W -d -o tone.wav
  </CsOptions>

  <CsInstruments>
    sr     = 96000           ; Sample rate.
    kr     = 9600            ; Control signal rate.
    ksmps  = 10              ; Samples per control signal.
    nchnls = 1               ; Number of output channels.

    instr 1
    a1     oscil p4, p5, 1   ; Oscillator: p4 and p5 are the arguments from the score, 1 is the table number.
    out a1                   ; Output.
    endin
  </CsInstruments>

  <CsScore>
    f1 0 8192 10 1           ; Table containing a sine wave. Built-in generator 10 produces a sum of sinusoids, here only one.
    i1 0 1 20000 1000        ; Play one second of one kHz at amplitude 20000.
    e
  </CsScore>

</CsoundSynthesizer>

Jika Anda ingin mengenal bahasa ini lebih dekat, maka, menurut untuk warga Hacker News, melakukan hal ini cukup mudah. Anda dapat mulai dengan dokumentasi resmi terperinci atau merujuk pada literatur subjek .

Siapa yang menggunakan


DJ Amerika Brian Transeau bekerja dengan Csound , yang menulis musik untuk Need for Speed: Underground dan film Blade 2, The Fast and the Furious. Dengan bantuan PL ini, ia menulis lagu " All That Makes Us Human Continues " dari album "This Binary Universe".


PL ini juga digunakan oleh komposer Swedia Tobias Enhus, yang karyanya dapat didengar dalam film Black Hawk. Menggunakan sistem ini, ia menulis lagu " Electric Priest ".

Bahasa itu juga berguna untuk implementasi proyek ilmiah dan penelitian. Spesialis dari Universitas Ilmu dan Teknik Kehidupan Norwegia telah mengembangkan efek khusus untuk menemukan metode baru dalam menulis musik.

Solusi alternatif


Keluarga MUSIK PL telah menjadi nenek moyang tidak hanya untuk Csound, tetapi juga untuk sistem generasi suara lainnya. Diantaranya adalah SuperCollider dan Pure Data .

SuperCollider adalah lingkungan virtual untuk sintesis audio real-time. Pada tahun 1996, ini dikembangkan oleh James McCartney (James McCartney) dan diposting di domain publik . Seiring waktu, beberapa insinyur bergabung dengan proyek ini, yang masih mendukungnya - di GitHub, SuperCollider memiliki lebih dari 3 ribu bintang .

SuperCollider memiliki banyak peluang untuk mengekspresikan diri, sehingga digunakan oleh sejumlah komposer yang cukup besar . Misalnya, musisi Amerika Jeremy van Buskirk (Jeremy Van Buskirk ) menulis " A Sigh Felt Across The Earth " di SuperCollider , dan Mark Ballora, profesor sekolah musik di University of Pennsylvania, memperkenalkan lagu " Singularity ".

Dipercaya bahwa pengembangan penuh SuperCollider akan memakan banyak waktu. Meskipun tutorial video resmi di YouTube dan panduan lainnya pasti akan membantu tugas ini .


Photo Escape Artiste / Unsplash

MengenaiPure Data, ini adalah bahasa pemrograman visual untuk mengimplementasikan karya multimedia interaktif. Ini adalah analog terbuka dari utilitasMax / MSP. Ini didasarkan pada aliran data yang melewati objek dan koneksi di antara mereka. Untuk alasan ini, sebuah program pada Data Murni disebut patch, mirip dengan synthesizer modular, di mana koneksi dibuat dengan kabel patch.

Contoh karya yang dijual menggunakan Pure Data dapat ditemukan di YouTube. Misalnya, karya Rino Petrozziello (Rino Petrozziello), yang disebut "Musik Algoritmik". Lebih banyak contoh adadi situs web resmi.



ยซ Hi-Fiยป:

Sporth โ€” live-
:
โ€”
:
:



:




All Articles