Algoreve: bagaimana programer mengadakan pesta


Sumber

Pengembang masa depan tidak hanya menulis kode - mereka menciptakan sambutan algoritmik. Algorave adalah penulisan dan penggunaan algoritma yang menghasilkan musik dance secara real time di depan audiens yang hadir secara fisik.

Musik generatif bukanlah fenomena baru. Diketahui bahwa bahkan jaringan saraf mampu menciptakan musik yang sulit dibedakan dari karya seorang komposer berbakat. Namun, Algorave memiliki fitur tersendiri.

Jika pekerjaan seorang DJ tradisional dibangun di sekitar pencampuran trek yang benar (tentu saja, jika ia tidak memutar campuran siap dari flash drive), maka algo-river berimprovisasi, membuat dan memperbaiki kesalahan tepat selama pertunjukan. Pada saat yang sama, livecoder menyiarkan apa yang terjadi di layar laptop.

Subkultur Pemrogram




Komunitas pembuat musik live beragam dan bersemangat untuk berpartisipasi dalam berbagai praktik artistik, termasuk seni audiovisual, robotika, tari, penelitian dan pendidikan, menggabungkan praktik-praktik ini bersama-sama.

Bagaimana jika, alih-alih menganggap "rave" sebagai "acara", "hiburan" atau "pesta musik", memperlakukannya seperti aliran informasi yang dapat Anda hubungkan secara real time? Algo ravers tidak selalu "ravers" karena itu, mereka tidak menganggap diri mereka "masa depan musik dansa", tetapi terinspirasi oleh semangat "semi-anonim" bermain untuk penyatuan budaya kerumunan yang tidak disebutkan namanya.

Misalnya, musisi Aphex Twin dan Autechre telah lama menggunakan pendekatan algoritmik dalam musik mereka, tetapi dalam pengertian yang lebih tradisional. Jadi, dalam penampilan mereka, pemirsa, selain kode yang diproyeksikan, dapat mengamati efek visual, dan bahkan robot menari. Semua elemen pertunjukan tidak harus direkam secara langsung - tugas utamanya adalah mengerjakan komponen musik yang beragam.

Hampir setiap perwakilan dari subkultur ini menggunakan perangkat lunak open source gratis. Di kalangan sempit, aplikasi yang merayakan ulang tahun ke 15 secara perlahan berkembang. Namun, beberapa musisi lebih suka menulis program untuk mereka sendiri.

Algoreyv secara bertahap menjadi lingkungan untuk pertukaran ide - siapa pun dapat menggunakan semua perangkat lunak yang tersedia atau menulis sesuatu sendiri.

Efek visual dan suara



Platform Hydra menghasilkan efek kesalahan perjalanan-visual.

Dari sudut pandang praktis, semuanya terjadi cukup sederhana: ia memuat, misalnya, kitBleepFtech, memberikan perintah highGlobalDensity , dan ruangan dipenuhi dengan gemuruh bass. Musisi menciptakan suara-suara terpisah (drum, bass) di komputernya, dan perangkat lunak khusus menggabungkan suara berdasarkan algoritma.

Dalam simbiosis manusia dan mesin seperti itu, masih ada ruang besar untuk kreativitas. Jika Anda mencoba membuat trek yang sama di lain waktu, menggunakan elemen yang sama, komposisi akan terdengar asing, tetapi akan mendapatkan struktur yang berbeda.

Selain musik, banyak perhatian diberikan kepada VJ. Menulis campuran video yang berinteraksi secara harmonis dengan musik adalah bentuk seni terpisah dalam subkultur.

Jadi, Hydra, dibuat menggunakan WebRTC dan WegGL, memungkinkan setiap browser, perangkat atau orang yang terhubung untuk mengeluarkan sinyal atau streaming video, serta menerima dan mengubah aliran dari browser, perangkat, atau orang lain. API didasarkan pada sintesis modular analog, di mana banyak sumber visual (osilator, kamera, jendela aplikasi) dapat dikonversi, dimodulasi, dan digabungkan.

Siaran langsung dari Times Square + siaran dari kode akuarium + di Hydra: https://ojack.imtqy.com/articles/hydra/times-square.mp4

Dalam Hydra, elemen dasar adalah konversi koordinat ke warna. Fungsi lain mengonversi koordinat atau warna.

Demonstrasi "hydra" selama Algorave di konferensi internasional tentang pengkodean langsung, Spanyol, Madrid, 2019:



Lingkungan pemrograman yang mendukung pengodean langsung memerlukan kemampuan untuk membuat, menyalin, dan menggandakan konten audiovisual dengan cepat, serta memberikan umpan balik kepada artis dan pemirsa. Karena alasan ini, banyak lingkungan pengkodean langsung menggunakan bahasa yang spesifik, unik, dan fleksibel. Di bawah ini kita akan melihat beberapa program Algorev unggulan.

Membuat musik




SuperCollider adalah mesin audio open source lintas-platform yang sangat kuat dan bahasa pemrograman yang digunakan untuk membuat musik, menghasilkan efek visual dan live coding. Versi pertama muncul pada tahun 1996. Sekarang didukung dan dikembangkan oleh komunitas di bawah Lisensi Publik Umum GNU.

Bahasa ini berorientasi objek, berdasarkan Smalltalk dengan sintaks C. Server sintesis SuperCollider bekerja secara independen dan dapat dikontrol menggunakan bahasa lain, misalnya, Haskell.

SuperCollider memiliki tiga komponen utama:

  • Scsynth adalah server audio real-time. Ini memiliki ratusan generator (UGens) untuk menganalisis, mensintesis dan memproses audio. Anda dapat menulis UGens Anda sendiri di C ++, dan menambahkan ke repositori.
  • Sclang adalah bahasa pemrograman yang ditafsirkan yang berfokus pada suara, tetapi tidak terbatas pada area tertentu. Sclang mengontrol Scsynth melalui protokol paket Open Sound Control. Ini dapat digunakan untuk mencari metode baru sintesis suara, untuk menghubungkan aplikasi ke peralatan eksternal, termasuk pengontrol MIDI, untuk menulis antarmuka grafis dan tampilan visual, serta untuk eksperimen pemrograman. Memiliki sekumpulan ekstensi khusus yang disebut Quark.
  • Scide adalah editor untuk Sclang dengan sistem bantuan terintegrasi.

Chuck


Bahasa pemrograman lintas platform untuk sintesis suara dan produksi musik waktu nyata. ChucK mendukung visualisasi, MIDI, Open Sound Control, perangkat HID, suara multi-channel, dan juga memiliki kemampuan untuk menambah dan mengubah kode tanpa mengganggu proses menghasilkan musik.

Mudah dipelajari dan menawarkan alat pemrograman yang kuat untuk membuat dan bereksperimen dengan program analisis dan sintesis suara real-time yang kompleks.

Fluxus


Lingkungan prototyping yang cepat untuk grafik 3D, suara dan game. Memperluas kemampuan Racket bahasa multi-paradigma dengan bantuan perintah grafis, dapat digunakan di lingkungan pengkodean langsung Anda sendiri atau di DrRacket IDE.

Al-jazari


Lingkungan pemrograman yang ditulis dalam Fluxus adalah live coding di dalam live coding. Itu dikendalikan menggunakan gamepad, menggunakan bahasa grafis sederhana. Dimungkinkan untuk mengirim perintah ke robot di layar untuk interaksinya satu sama lain dan bergerak di sekitar medan yang dipenuhi pemicu audio. Kode kerja ditampilkan dalam bentuk gelembung di atas setiap robot, dan dapat diedit.

Beberapa pengguna dapat bekerja (atau bermain) dalam program pada saat yang sama (dalam versi pertama, yang muncul pada 2008, empat orang bisa sekaligus).

Kode, model, dan tekstur Al-Jazari dirilis secara gratis, namun, program ini tidak dimaksudkan untuk digunakan sebagai perangkat lunak yang sudah selesai, oleh karena itu, untuk mengonfigurasi, Anda perlu mengkompilasi dan menginstal berbagai program pengguna (lihat halaman proyek untuk lebih jelasnya).

Dari teori ke praktik


Algorev adalah seni di mana elemen peretasan, pengembang game, dan cyberpunk saling terkait. Komunitas pengkodean langsung mendorong peningkatan diri, sehingga semua alat tersedia dan terus diperbarui. Tautan yang disediakan dalam artikel ini, Anda akan menemukan informasi lebih lanjut tentang bagaimana melakukan live coding sendiri. Anda juga dapat mencoba bekerja dengan TidalCycles , alat untuk membuat pola algoritmik.

Source: https://habr.com/ru/post/id464713/


All Articles