Cloudflare; Workers, Durable Objects ve konteyner teknolojilerini bir araya getirerek canlı video akışlarında dinamik bindirme ve altyazı işlemlerini yöneten Streamline geliştirici projesini açık kaynak olarak yayımladı.
Üç noktada haber
Streamline mimarisi; oturum denetimi için Workers, eşgüdüm için Durable Objects ve FFmpeg barındıran Go tabanlı bir konteyner motoru kullanıyor.
Sistem; RTMPS canlı yayın girişlerini, Cloudflare Stream HLS manifestolarını ve web kamerası akışlarını girdi olarak kabul edebiliyor.
Açık kaynaklı projenin yerel geliştirme ortamında çalışabilmesi için Go 1.25.4, Docker ve Node.js 22.12 sürümleri gerekiyor.
Cloudflare, geliştiricilerin canlı video yayınlarına dinamik grafikler, saydam bindirmeler ve gömülü altyazılar eklemesini kolaylaştırmak amacıyla Streamline adlı yeni geliştirici ortamını açık kaynak olarak yayımladı. Şirketin paylaştığı bilgilere göre proje; Cloudflare Workers, Durable Objects ve Cloudflare Containers bileşenlerini bir araya getirerek sunucusuz mimaride uzun soluklu bir medya işleme hattı kurmayı mümkün kılıyor. Geliştiriciler bu sistem sayesinde harici ve karmaşık medya sunucusu altyapılarına bağımlı kalmadan, doğrudan platform üzerinden video akışlarını gerçek zamanlı olarak dönüştürebiliyor.
Üç Katmanlı Mimari ve Sürekli İşleme Döngüsü
Streamline mimarisi temelde iki ana parçadan oluşuyor: medya giriş ve çıkış işlemlerini yürüten bir medya motoru ile oturumları oluşturan, yapılandıran ve durduran bir denetim uygulaması. Medya motoru, Go diliyle yazılmış bir sunucu ve FFmpeg, CA sertifikaları ile Liberation ve DejaVu yazı tiplerini içeren bir konteyner içinde çalışıyor. Cloudflare'in açıklamasına göre konteynerler, tahmin edilebilir bellek ve işlemci kapasitesi sunarak dakikalar ya da saatler süren video akışları için uzun ömürlü bir çalışma ortamı sağlıyor. Oturumu başlatan Workers uygulaması bağlantıyı kesse dahi, konteyner üzerindeki etkinlik süresi geri çağırma işlevi sayesinde işlem sonlandırılmıyor ve video hattı çalışmayı sürdürüyor. Bununla birlikte sistemin kontrolsüz biçimde açık kalmasını önlemek amacıyla oturumlara azami bir süre sınırı tanımlanıyor.

Arşiv fotoğrafı: Cloudflare ofisinde lav lambası duvarı yer almaktadır.
Desteklenen Protokoller ve Güvenlik Modeli
Medya motoru, Cloudflare Stream Live üzerinden RTMPS akışlarını çekip işleyerek farklı bir RTMPS hedefine canlı olarak aktarabiliyor. Bunun yanında sistem, Cloudflare Stream üzerinde barındırılan videolardan HLS bildirimlerini ve parçalarını alarak gömülü altyazıları video üzerine metin olarak basabiliyor ya da web kamerasından gelen görüntü parçalarını kabul edebiliyor. Düşük gecikmeli önizleme çıktısı gerektiğinde ise konteyner fMP4 parçalarını bir Durable Object bileşenine gönderiyor ve denetleyici uygulama bu veriyi WebSocket bağlantısıyla anlık olarak izleyebiliyor. Ancak Cloudflare, bir işleme oturumu devam ederken ilgili konteyner örneğinin başka uygulamalar tarafından kullanılamayacağını ve sistemin çok kullanıcılı genel bir hizmet için değil, tekil kullanıcıya ayrılmış özel bir model olarak kurgulandığını belirtiyor.

Arşiv fotoğrafı: Cloudflare ofisinde lav lambası duvarı yer almaktadır.
Yerel Geliştirme Gereksinimleri ve Açık Kaynak Dağıtımı
GitHub üzerinde yayımlanan açık kaynak kod deposu, konteyner sunucusunun yanı sıra yeniden kullanılabilir Workers ve Durable Objects paketlerini içeriyor. Projeyi yerel ortamda çalıştırmak isteyen geliştiricilerin sistemlerinde Go 1.25.4 veya üzeri sürüm, Docker ve Node.js 22.12 ya da daha yeni bir sürüme sahip olması gerekiyor. Yerel testlerde Durable Objects ve erişim denetimleri kullanılmazken, doğrudan yerel Docker örneğine bağlanılabiliyor. Güvenlik tarafında ise canlı yayın anahtarlarının tarayıcıya veya denetleyici uygulamaya sızmaması için anahtarlar Worker sırları içinde ya da Durable Object depolamasında salt yazılır olarak saklanıyor. Cloudflare, mimarinin modüler yapısı sayesinde ilerleyen dönemde mevcut medya motorunun özel kodlama çözümleriyle değiştirilebileceğini ifade ediyor.
Neden önemli?Geliştiriciler harici medya sunucusu kurma zorunluluğu olmadan, RTMPS ve HLS yayınlarını bulut üzerinde doğrudan işleyip WebSockets üzerinden düşük gecikmeyle önizleyebilecek.
Cevabı beklenen sorular
- Cloudflare'in modüler konteyner motorunu gelecekte bağımsız ve donanım hızlandırmalı kodlama ürünleriyle ne zaman güncelleyeceği henüz açıklanmadı.
Kaynaklar ve belgeler
Bu haberde kullanılan belgelere aşağıdaki bağlantılardan ulaşabilirsiniz.



