Upload
bozhidar-bozhanov
View
405
Download
7
Embed Size (px)
DESCRIPTION
Презентация в рамките на RogueConf 2013 за проекта http://computoser.com и за предизвикателствата пред компютърно-генерираната музика
Citation preview
Компютри, музика и интердисциплинарност
Vanity Slide
• Божо• Програмист, от миналата седмица
безработен• Stackoverflow “celebrity”• Живея в центъра
До момента?
• Генериране на музика vs signal processing• 57-ма година “Illiac Suite”• Множество експерименти• Компютърно-асистирана композиция• Университетски проекти - Iamus• Open-source проекти – SoundHelix• Като цяло – аз не съм доволен от
резултатите
Подходи
• Рекомбиниране на семпли – unleash the fruity loops. Още Моцарт на времето...
• Интерпретиране на математически функции, редици, и др.
• Еволюционни (самообучаващи се) алгоритми• Статистически подход• Композиторски правила в алгоритъма• Използване на външна информация – туитове,
околен шум, движения, снимки, и др.
Защо нищо не работи?
• Какафония • Липса на вариативност – при краен брой
семпли• Безинтересна музика – при екслузивно
базиране на статистика.• Външни данни = готин начин за seed-ване
на random-а.
Математически подход
• Музиката „под повърхността“– хармонични редици– равно-темпериран строй
• Композицията без музикални правила = шум
Computoser.com
• Става ли?
Моят подход
• Статистика – анализ на база от произведения за извеждане на вероятности (интервали, продължителности). Намалява нуждата от еволюционен алгоритъм, невронни мрежи и др.
• Вериги на Марков – сложно име за простото използване на горната статистика за вземане на решения
• Множество композиторски правила, които рамкират избора на характеристиките на следващия тон.
Цел?
• Създаване на мелодии, приятни за слушане• Даване на база на композитори за
надграждане над генерираната музика (creative commons)
• Почти безплатно stock audio
Технически особености
• Java • midi (JMusic) ->• wav (javax.sound) ->• MP3 (ffmpeg) ->• HTML5/flash browser player• EC2• Real-time? Тежко...• Scheduled job
Защо не Open Source?
• Щото съм алчен • Защото практиката до момента е показала,
че такива нишови проекти не печелят много от факта, че са open source.
• Защото кодът на места е грозен и да не се излагам
• В един момент може би ще стане open source
Защо този проект е интересен?
• Open-ended – няма момент, в който да се обяви за „завършен“. Няма подход, приет за „верен“.
• Изисква много специфични знания в област, различна от програмиране (domain knowledge)
• Нещо различно от бизнес-софтуера, за който ни плащат да работим.
Интердисциплинарност
• Бизнес софтуер; задълбочени знания в различни области.
• Експерти в различни области?• Областта на софтуера ви интересна ли ви?• Комбинацията между общо софтуерно
инженерство и нишова област е мотивираща...поне за мен.
• Иска четене и гимнастика на мозъка
• Въпроси и разсъждения?