1993’ün klasiği Doom, bu kez bir çift kulaklığın içine sığdı. Sydney merkezli web geliştiricisi Arin Sarkisian, “DoomBuds” adını verdiği projeyle oyunu PineBuds Pro kulaklıklarda çalıştırdı ve kulaklıkları internete bağlayarak tarayıcı üzerinden sıraya giren herkesin uzaktan oynamasını mümkün kıldı.
PineBuds Pro’nun tercih edilme sebebi açık kaynaklı yazılıma sahip az sayıdaki kulaklıktan biri olması. Sarkisian, kulaklığın işlemcisini 300 MHz’e sabitleyip düşük güç modunu kapatarak oyunu çalışabilir hâle getirdi; performans ise yaklaşık 18 FPS civarında.
Ekran olmadığı için görüntü akışı ayrı bir mühendislik gerektiriyor. Bluetooth bant genişliği yetersiz kaldığından veri aktarımı için kulaklığın temas noktalarındaki USB–UART bağlantısı kullanılıyor. Doom’un 320×200 piksellik görüntüsü MJPEG olarak sıkıştırılıp seri hat üzerinden aktarılıyor; teoride 20–27 FPS mümkün olsa da, kulaklığın sınırlı JPEG kodlama gücü pratikte hızı 18 FPS civarına sabitliyor.
Hafıza tarafında da ince işler var. Ortak işlemci devre dışı bırakılınca kullanılabilir RAM yaklaşık 992 KB’a çıkıyor; Doom ise normalde 4 MB istiyor. Kod ve veri tarafında yapılan optimizasyonlar bu ihtiyacı düşürüyor. Depolama için de shareware sürümün 4,2 MB’lık WAD dosyası yerine 1,7 MB’lık “Squashware” paketi kullanılarak kulaklığın 4 MB’lık flaşına sığması sağlanmış.
Projeyi denemek isteyenler DoomBuds sitesinde sıraya girip tarayıcıdan oynayabiliyor. Yayın, kulaklıktan gelen akış önce Twitch’e aktarılacak şekilde gömülü duruyor; sırada ilk beşe gelindiğinde görüntü düşük gecikmeli MJPEG akışına otomatik geçiyor. Kontroller WASD ve yön tuşlarıyla, etkileşimler E ile yapılıyor.
Kurcalamak isteyen meraklılar için kaynak kodu da açık. DoomBuds ve DoomBuds‑JS depoları, kulaklıkla tarayıcı arasındaki iletişimden görüntü sıkıştırmaya kadar tüm parçaları içeriyor; temelinde ise garip platformlara port etmeyi kolaylaştıran “doomgeneric” projesi yatıyor.
Ne ifade ediyor?
Doom’un “her yerde çalışır” efsanesine yeni bir halka ekleyen DoomBuds, gömülü donanımda bant genişliği, bellek ve depolama sınırlarına yaratıcı çözümlerle yaklaşmanın iyi bir örneği. Üstelik kendi PineBuds Pro’nuz varsa, aynı yolu izleyerek bu deneyi evde tekrarlamak mümkün.
Kaynak: www.techspot.com