2 puan yazan GN⁺ 2025-10-15 | 1 yorum | WhatsApp'ta paylaş
  • Strudel REPL, web tarayıcısında çalışan açık kaynaklı ve ücretsiz bir müzik canlı kodlama ortamıdır
  • Ayrı bir yazılım kurulumu olmadan yalnızca tarayıcı üzerinden gerçek zamanlı müzik üretimi ve düzenleme yapılabilir
  • Temelde REPL (Read–Eval–Print Loop) yaklaşımıyla çalışır; kullanıcı kod girdiğinde ses desenleri anında çalınır
  • Başlıca özellikler

    • Kullanıcılar "s(\"[bd ]*2\").bank(\"tr909\").dec(.4)" gibi kod komutlarıyla desen dizileme, enstrüman seçimi ve ses ayarlamayı kolayca yapabilir
    • Çeşitli davul sampler'ları (bank) ve decay (dec) ayarları gibi ayrıntılı müzikal kontrol mümkündür
    • Kodun gerçek zamanlı olarak değiştirilip sonucun anında duyulabilmesi, anlık geri bildirim açısından güçlü bir avantaj sağlar
  • Erişilebilirlik ve kullanım alanı

    • DAW (dijital ses iş istasyonu) veya karmaşık müzik yazılımları olmadan, basit kodlarla müzik üretimi ve denemeler yapılabilir
    • Müzik ve programlamaya yeni başlayanlar da düşük giriş eşiği sayesinde eğlenceli ve yaratıcı bir deneyim yaşayabilir
    • Açık kaynak yapısı ve topluluk desteği, gelecekte genişletilebilirlik ve iş birliği potansiyeli de sunar
  • Karşılaştırma ve avantajlar

    • Mevcut canlı kodlama platformlarına (TidalCycles, Sonic Pi vb.) kıyasla web tabanlı yapısı sayesinde erişilebilirlik ve kullanım kolaylığı daha yüksektir
    • Ayrı bir kurulum/yapılandırma süreci olmadan herkes anında müzik canlı kodlama deneyimine başlayabilir

1 yorum

 
GN⁺ 2025-10-15
Hacker News görüşleri
  • YouTube'da Strudel ile yapılmış gerçekten çok iyi canlı kodlama oturumları var; örnek olarak şu videoyu öneririm
    • Özellikle Switch Angel'ın videoları etkileyici; bu kişinin Instagram eğitimlerine de bakmaya değer
    • Benim en sevdiğim videolardan biri de, voice filter sayesinde anlatımın parçanın bir bölümü gibi hissettirdiği şu video; özellikle çok eğlenceliydi
    • Birisi bu videonun sesini (vokaller dahil) remixlese çok eğlenceli olabilir
    • Aynı link iki kez eklenmiş gibi görünüyor; aslında kastedilen ikinci linkin ne olduğunu merak ediyorum, onu da görmek isterdim
  • Strudel, TidalCycles'in (Haskell) JavaScript portu; TC'nin synth olarak SuperCollider kullanmasının aksine, Strudel sanki superdough adında kendi implementasyonunu kullanıyor; şu anda SuperCollider sclang öğreniyorum ve bir sürüm yükseltmesi olursa bunu HN'de paylaşmak isterim; bu konuda hep derin tartışmalar oluyor; ama sclang, müzik dünyasının PHP'si gibi, daha çirkin ve daha az tutarlı; yine de güçlü ve eğlenceli
    • SuperCollider forumlarında wasm ile SuperCollider'ı port etme konuşmaları var (WebAssembly desteğiyle ilgili gönderi); bunun ileride burada kullanılıp kullanılamayacağını merak ediyorum
    • Ben de TidalCycles ile biraz uğraşmıştım ve Haskell sözdizimini sevdiğim için kullanmak istemiştim, ama Strudel arayüzü o kadar akıcı ki JS sözdizimine katlandım; bu sayede superdough diye bir şey olduğunu öğrendim, daha önce hiç görmemiştim, merak uyandırdı
    • Eskiden SuperCollider kullanırken Overtone kullanıyordum; Overtone her şeyi Closure API ile sarıyor, böylece sclang yerine s-expression'larla ses tanımlayabiliyorsunuz; Overtone'un bugünlerde hâlâ aktif olarak sürdürülüp sürdürülmediğinden tam emin değilim ama biraz hareket hâlâ var gibi görünüyor (resmi site)
    • Benim deneyimimde sclang, Smalltalk ve Ruby'nin bir hibriti gibiydi; tam anlamıyla "tutarsızlık" demekti, yabancı ama garip biçimde tanıdık geliyordu; yine de bence PHP'den çok daha zarif
  • Strudel'in harika olmasının nedeni, mevcut müzik araçlarının biraz yaşlı ve NIH (not invented here) sendromuna kapılmış gibi hissettirmesine karşılık, aslında ihtiyaç duyulan şeyin JS üzerinde çalışan bir çözüm olması; önceki nesil araçlar (sonic pi vb.) çıktığında bunu yapmak zordu ama şimdi zamanlama tam yerinde; bir sonraki nesilde görselleştirmelerle kodun gerçekten çift yönlü iletişim kurduğu bir arayüz olmasını isterim; şu anki slider'ların gerçekten harika bir unsur olduğunu düşünüyorum; Bret Victor da muhtemelen gurur duyardı
  • flok diye bir araç da var; Strudel repl'i Hydra görselleriyle birleştiriyor, sclang gibi başka algorave ortamları da sunuyor ve her şey senkronize oluyor (muhtemelen CRDT'lerle); arkadaşlarla uzaktan jam yapmak için çok iyi (flok linki)
  • Benim müzikal yeteneğim pek yok ama şöyle bir şey yaptım
    $: arrange(
     [4, "<sh09_bd>(4,8)"],
     [4, "<sh09_bd>(4,8)"],
     [1, "<sh09_bd mfb512_sd>(6,6)"]
    ).s().fast(2).layer(x=>x.add("0,2")).gain(".4!2 .5").phaser(2).phasercenter("<4000 800 4000 4000>")
    
    $: s("gm_tinkle_bell").distort("<1 2 1 2:.5>").crush("<8 8 8 6 6 8 8>").chop(4)
    
    $: arrange(
     [2, "<c4 e4 g4>(3,8)"], 
     [1, "<f4 a4 c5>(3,8)"], 
     [1, "<c4 e4 g4>(3,8)"] 
    ).note().chop(4).fast(4).distort("<3:.5>").phaser(4).phasercenter("<800>").fm(4).fmdecay("<.05 .05 .1 .2>").fmsustain(.4)._scope()
    
    Burada ne olup bittiğinin ben de yarısını anlamıyorum ama gerçekten çok eğlenceliydi ve muhtemelen yaptığım projeler arasında en sevdiğim buydu; ayrıca en keyifli tarafı, referans dokümantasyonun doğrudan sayfanın içinde olması sayesinde rastgele şeyler deneyip sonucu anında görebilmekti
  • Şu hata mesajını alıyorum
    Uncaught (in promise) ReferenceError: AudioContext is not defined
     ln https://strudel.cc/_astro/spectrum.Bf7jMx6O.js:1
     W https://strudel.cc/_astro/spectrum.Bf7jMx6O.js:1
     un https://strudel.cc/_astro/spectrum.Bf7jMx6O.js:1
     c https://strudel.cc/_astro/spectrum.Bf7jMx6O.js:1
    
    Bunun çalışması için güvenlik ayarlarımda neyi değiştirmem gerektiğini merak ediyorum
  • DJ_Dave'in Array parçasının benim (Lil Data) remix versiyonumu paylaşıyorum (Strudel mix, YouTube videosu)
  • Bu tanıtım videosunu beğendim (YouTube linki)
  • Strudel metin tabanlı olduğu için, yapay zekanın müziği otomatik üretmesi gerçekten çok kolaylaşıyor; müziği Strudel notasyonuna dökebilen bir Strudel agent'ının çıkmasını bekliyorum
    • Ben kendi elimle beste yapmayı seviyorum ama yapay zeka yalnızca prompt girerek sound design işini de çözebilse ("XYZ parçanın lead synth'ine benzesin ama biraz daha buzzy olsun, ayrıca ABC parametresi de ayrı ayarlanabilsin") devrim niteliğinde olurdu
    • Yakında agent'ların müziğin kendisini dinleyip, bizim daha önce onu nasıl değerlendirdiğimizi bile analiz edebileceğini düşünüyorum
  • Geçenlerde YouTube'da Strudel arayüzünü gördüm; ilk bakışta konsol gibi dursa da slider gibi öğeler de içerdiği için eğlenceli gelmişti