BİRÇOK DÜNYA. TEK BİR İNSAN.EN
← Tüm yazılar

/ 5 dk okuma / Türkçe

Claude, şarkı söyleyen bir çatıyı nasıl yaptı?

Talya Roofing için yayımladığım 43 saniyelik Protein Roof videosunda şarkı hazırdı. Claude'un yaptığı işi, ritme oturan çatı kaplamaları ve sonradan değişen bir ağız üzerinden anlatıyorum.

Yazan: Samed Güvenç

Kahvede protein var, atıştırmalıkta protein var. Peki çatıda neden olmasın? Talya Roofing kanalında yayımladığım 43 saniyelik videonun çıkış noktası bu saçmalık. Bir ev şarkı söylüyor, çatısına gelen paketle kaslanıyor, ekranda “150 gram” yazıyor. Sonra bütün bu gösteri duruyor ve video kendi sorusunu cevaplıyor: Çatının gerçekten proteine ihtiyacı var mı? “No.”

“Bunu Claude yaptı” demek kolay. Ama o cümle, hazır olanla sonradan yapılanı birbirine karıştırıyor. Şarkı zaten vardı. Claude'un katkısı, o şarkının üzerine hareketli görüntüler koymanın ayrıntılarında: hangi vuruşta kaplama gelecek, hangi anda ekran boşalacak, şarkıyı söyleyen evin ağzı nasıl çalışacak? Bu yazıda üçüne yakından bakacağım. Çünkü ortaya çıkan işi anlamak için kullanılan araçların listesinden çok, bu kararların görüntüyü nasıl kurduğu ve sonradan nasıl düzeltilebildiği önemli.

YouTube'daki adı Everything Has Protein Now. Even Your Roof? Aşağıdan izleyebilirsiniz. Oynatıcı, yalnızca yüklemeyi seçtiğinizde YouTube'a bağlanıyor.

TALYA ROOFING / PROTEIN ROOF

Everything Has Protein Now. Even Your Roof?

Şarkı hazırdı; sahnenin zamanı hazır değildi

Başlangıç dosyası, “150 grams of Protein” adlı yaklaşık 43 saniyelik bir ses kaydı. Bu üretimde Claude'un şarkıyı bestelediğini ya da vokali oluşturduğunu söyleyemem. Eldeki kayıt alınmış; sözleri, vuruşları ve sesin değişimi çıkarılarak animasyonun zaman çizelgesi kurulmuş.

Bunun için iki ayrı bilgi gerekiyor. İlki, hangi kelimenin ne zaman söylendiği. Bilgisayarda çalışan faster-whisper ile çıkarılan ham metin, düzeltilmiş sözlerden ayrı tutulmuş. Ham çözümlemede marka adının yanlış anlaşılması ve sonradan Talya Roofing olarak düzeltilmesi küçük ama belirleyici bir örnek. Altyazıyı tam zamanında göstermek, yanlış kelimeyi doğru yapmıyor.

İkincisi, müziğin hareketi. Librosa ile tempo ve vuruşlar analiz edilmiş; tahmin edilen tempo yaklaşık 129 BPM. Ama videoyu kuran bilgi, parçanın sadece hızlı ya da yavaş oluşu değil. Çatıdaki bir hareketi başlatacak vuruşun tam yeri gerekiyor. Böylece şarkı, görüntünün arkasında çalan bir dosya olmanın yanında sahnelerin ne zaman değişeceğini belirleyen bir ölçüye dönüşüyor.

Bir davul vuruşu, bir sıra çatı kaplaması

İlk somut örnek, evin dönüşümü. Kendi küçük yağmur bulutunun altında duran, çatısında parçalar eksik bir ev görüyoruz. Paket geliyor, eski kaplama dağılıyor, yenileri yerlerine uçuyor. Kaynak kodda bu parçaların gelişi trampet vuruşlarına bağlanmış. Protein sayacı yükselirken çatının dolması da müzikteki ilerleyişe eşlik ediyor.

Bu ayrıntı sayesinde şarkıdaki abartılı güçlenme iddiasının ekranda bir karşılığı var. Ev sadece bir anda sağlam görünmeye başlamıyor; dönüşümü parça parça izliyoruz. Aynı karakterin önce sırılsıklam, sonra kaslarını gösterir halde görünmesi de hikâyeyi takip etmek için uzun bir açıklamaya ihtiyaç bırakmıyor.

Yaklaşık 23. saniyede nakaratla birlikte görüntü iyice büyüyor: ışınlı arka plan, iri yazılar, kas gösteren ev. Birkaç saniye sonra ise bunun tersi oluyor. Takviye etiketi parodisinden sade bir soru kartına, oradan siyah zemindeki tek kelimelik “No.” cevabına geçiyoruz.

İkinci örnek bu duruş. Bütün sahneler aynı yoğunlukta sürseydi cevap da diğer yazılardan biri olarak kalabilirdi. Ekranın boşalması ona ayrı bir ağırlık veriyor. Ardından gelen “Ama Talya Roofing'e ihtiyacı olabilir” cümlesi, protein şakasını çatı işiyle buluşturuyor. Burada zamanlama, sözlerin ekrana yetişmesinden fazlasını yapıyor: önce iddiayı büyütüyor, sonra onu bozacak yere alan açıyor.

Bir ağız değişince kadraj da değişti

Üçüncü örnek, üretimin iki sürümü arasındaki fark. İlkinde evin ön kapısı ağız gibi hareket ediyormuş. Yayımlanan sürümde kapı yerinde duruyor; gözlerle kapının arasında ayrı bir çizgi film ağzı var. Bu değişiklik, Claude'un katkısını tek bir sonuç karesinden daha açık gösteriyor: karakterin nasıl çizildiği değiştirilebilmiş ve aynı sahneler bu değişiklikle yeniden üretilmiş.

Ev ve çevresindeki nesneler Python koduyla çizilmiş. Pencereler göz, panjurlar göz kapağı, tenteler kaş olarak kullanılıyor. Pycairo şekilleri çiziyor; karakterin konumu, ölçeği ve yüz ifadesi zamana göre hesaplanıyor. Mevcut Talya logosu da bu çizimlerin içine yerleştirilmiş. Dolayısıyla ağız, bitmiş görüntünün üzerine sonradan yapıştırılan bir ayrıntı olarak kalmıyor; karakterin hareket eden parçalarından biri oluyor.

Yeni ağız, kelime zamanlarını ve yaklaşık heceleri kullanıyor. Bazı seslerde kapanıyor, bazılarında açılıyor veya yuvarlanıyor; açılma miktarı sesin gücünden de etkileniyor. Bu, konuşmayı kusursuz çözen bir sistem değil. Yazımdan ağız biçimlerine giden kurallarla bu karakter için hazırlanmış bir eşleme. Şarkı aralarında da sahneye göre gülümseme veya üzgün ifade devreye giriyor.

Ağız için yer açılınca evin gövdesi uzamış. Ardından bazı sahnelerde karakter aşağı alınmış ya da küçültülmüş; çatının ucu büyük yazılara değmesin diye konumlar ayarlanmış. Bu düzeltme zinciri önemli: ağzı değiştirme kararı, bütün kadrajla birlikte ele alınmış. Kodla kurulmuş sahnenin pratik değeri burada görülüyor. Karakteri değiştirmek mümkün, ama değişen karakterin diğer parçalarla ilişkisini de yeniden kontrol etmek gerekiyor.

Bitmiş videoya geri dönebilmek

Üç açılış sürümü var. Yayımladığım, “Everything has protein now” yazısıyla başlayan sürüm. Diğerlerinde giriş yazısı değişiyor, videonun gövdesi aynı kalıyor. Bunların hangisinin daha iyi izlendiğine dair bir karşılaştırma yok; üç dosyanın bulunması bir performans sonucu sayılmaz. Buradaki somut imkân, bütün videoyu yeniden tasarlamadan başlangıcı değiştirebilmek.

Son kareler FFmpeg ile kaynak sesle birleştirilmiş; ana dosya 1080 × 1920, saniyede 30 kare. Ama elimde kalan yalnızca bu video dosyası değil. Kelime zamanları, sahne çizimleri ve karakter hareketleri ayrı kaynaklarda duruyor. Ağız değişikliğinde olduğu gibi, bitmiş görünen bir ayrıntıya geri dönüp onu yeniden üretmek mümkün.

Bu yüzden bu videoyu anlatırken, Claude'un kaç farklı araç kullandığından çok bir ayrıntının nasıl değiştirilebildiğine bakıyorum. Hazır şarkının süresi aynı kalırken evin yüzü değişmiş; o yüzle birlikte kadraj da yeniden düzenlenmiş. Çıktının yanında böyle bir kaynak bulunması, bir sonraki düzeltmenin nereden başlayacağını da gösteriyor. İlk sonuç son söz olmak zorunda kalmıyor.

Çatının proteine ihtiyacı yok. Ama şarkıdaki o saçma fikrin bir karaktere ve doğru zamanda gelen bir cevaba ihtiyacı var. Claude, karakteri ve şarkıdaki cevabın ekranda nasıl belireceğini kurmuş; ayrıca karakterin yüzü değiştiğinde aynı şakayı yeniden sahneleyebilecek bir yapı bırakmış. “Videoyu yaptı” derken kastettiğim iş bu: hazır bir şarkıya görüntü vermek ve o görüntüyü düzeltmeye açık tutmak.