VPS'te 7/24 Yayın mı, Yönetilen Bulut Hizmeti mi?
FFmpeg ile bir VPS'te 7/24 yayın yapmak; oynatma listesi başa sarana, süreç gece çökene ya da ikinci bir hedef giden trafiğinizi ikiye katlayana kadar basit görünür. Kendin yap yönteminin gerçekte neler gerektirdiğini ve yönetilen bir hizmetin ne zaman daha mantıklı olduğunu anlatıyoruz.
Yaklaşık 6 dk okuma
Bu yazıda
FFmpeg ile bir VPS'te 7/24 yayın yapabilirsiniz: videolarınızı kiraladığınız bir sunucuya yükler, bir concat oynatma listesi yazar ve bunu bir platformun RTMP adresine döngüyle gönderirsiniz. Bu yöntem çalışır ve iyi bir öğrenme projesi de olabilir. Asıl maliyet ise kodlamaya, çökme sonrası kurtarmaya, izlemeye ve bant genişliği planlamasına harcadığınız zamandır.
Kendin yap yönteminin gerçekte neler gerektirdiğini ve yönetilen bir hizmetin saatlerinizi ne zaman daha iyi değerlendirdiğini aşağıda bulabilirsiniz.
Öne çıkanlar
- Basit bir FFmpeg döngüsü hızla kurulur; asıl iş onu aylarca ayakta tutmaktır.
- Uyumsuz kare hızları veya zaman damgaları, kopyalama modundaki bir oynatma listesini çökertip başa sarabilir.
- FFmpeg kendini yeniden başlatmaz ve sizi uyarmaz.
- Eklenen her hedef, bit hızının tamamını giden trafiğe ekler.
Kendin yap VPS kurulumu neye benzer?
Tipik bir kendi sunucunda yayın altyapısı dört parçadan oluşur:
- Bir Linux VPS: Video kütüphaneniz için disk alanı ve hiç durmayan bir yayın için yeterli giden veri aktarımı sunan bir sunucu.
- Video dosyalarınız: SFTP ile yüklenmiş ya da bir depolama alanından senkronize edilmiş dosyalar.
- Bir oynatma listesi dosyası: FFmpeg'in concat demuxer'ı için hazırlanmış liste.
- Bir FFmpeg komutu: Oynatma listesini gerçek zamanlı okuyan, döngüye alan ve
rtmp://a.rtmp.youtube.com/live2gibi bir alım (ingest) adresine yayın anahtarınızla birlikte gönderen komut.
Çoğu rehber, FFmpeg'in videoyu ve sesi yeniden kodlamadan olduğu gibi aktardığı stream copy (kopyalama) modunu kullanır. İşlemci kullanımı çok düşük kalır, bu yüzden küçük bir sunucu yeterli olur ve ilk yayını başlatmak gerçekten hızlıdır.
Sorun şu: Kopyalama modu yalnızca her dosya teknik olarak tutarlı olduğunda sorunsuz çalışır ve uzun vadeli emeğin büyük kısmı tam da buraya gider.
Kodlama ve zaman damgaları: FFmpeg oynatma listeleri neden başa sarar?
Stream copy kullanıldığında FFmpeg dosyaları oldukları gibi birbirine ekler; bu yüzden tek bir aykırı dosya geçişleri bozar. Sık görülen nedenler:
- Kare hızı uyumsuzlukları: 30 fps dosyaların yanında 29.97 fps dışa aktarılmış bir video ya da değişken kare hızlı bir telefon kaydı gibi.
- Farklı çözünürlükler veya ses formatları: 1080p dosyaların arasında duran 720p bir klip gibi.
- Tuhaf zaman tabanları veya eksik zaman damgaları: Bazı düzenleme programlarının ve ekran kaydedicilerin bıraktığı izler.
Belirtiler, günlükteki uyarılardan donan görüntüye ve FFmpeg'in kapanmasına kadar uzanır. Süreç yeniden başladığında oynatma listesi ilk videodan başlar; izleyiciler de aynı ilk saati tekrar tekrar görür.
Çözüm, her şeyi oynatma listesine girmeden önce tek bir profile göre yeniden kodlamaktır: aynı çözünürlük, sabit kare hızı, aynı anahtar kare aralığı ve aynı ses formatı. Ayrıntılar için 7/24 yayın için kodlama ayarları yazımıza göz atın.
Çökmeler, yeniden başlatmalar ve izleme tamamen size kalır
FFmpeg mükemmel bir araçtır, ancak ayakta kalmayı dert edinmeyen tek bir süreçtir. Platform bağlantıyı kopardığında, ağda anlık bir kesinti olduğunda ya da bir dosya hata tetiklediğinde süreç kapanır ve aşağıdakileri kendiniz kurmadıysanız onu hiçbir şey geri getirmez:
- Bir denetleyici (supervisor): Örneğin otomatik yeniden başlatma ayarlı bir systemd servisi.
- Konum takibi: Böylece yeniden başlatma, oynatma listesini en baştan başlatmaz.
- Sağlık kontrolleri: Platformun gerçekten görüntü aldığını doğrular; çünkü çalışan bir süreç bile çevrimdışı görünebilir.
- Uyarılar: Telefonunuza gelen bildirimler sayesinde gece 3'teki bir kesinti kahvaltıya kadar sürmez.
Bir de bakım işleri vardır: güncellemeler, yeniden başlatmalar, günlük dosyalarıyla dolan diskler ve düz metin betiklerde duran yayın anahtarları. Bunların hiçbiri tek başına zor değildir; hepsi bir araya geldiğinde ise yarı zamanlı bir işe dönüşür. Neleri takip etmeniz gerektiğini görmek için yayın sağlığını ve çalışma süresini izleme yazımıza bakın.
Tek sunucudan bant genişliği ve birden fazla hedef
Kesintisiz bir yayın, insanların tahmin ettiğinden fazla veri harcar. 30 gün boyunca çalışan tek bir 6 Mbps yayın yaklaşık 1,9 TB veri gönderir. Aynı yayını üç platforma gönderdiğinizde sunucu günün her saati yaklaşık 18 Mbps iter; bu da ayda 6 TB'a yakın demektir. Sağlayıcınızın giden veri aktarımı kotasını ve aşım koşullarını mutlaka kontrol edin.
Çok hedefli FFmpeg kurulumlarının da kendine özgü tuhaflıkları vardır. Her platform için bir süreç, denetlenmesi gereken birden fazla süreç demektir. FFmpeg'in tee muxer'ı tek bir girişi birden fazla çıkışa gönderir; ancak her çıkış hataya dayanıklı olacak şekilde ayarlanmadıysa, eski bir anahtarı reddeden bir platform gibi tek bir hatalı hedef tüm süreci çökertebilir.
Platformlara özgü sorunlar da sizin sorumluluğunuzdadır; örneğin sıradan bir döngünün hiç hesaba katmadığı YouTube'un 12 saatlik arşiv sınırı.
Kendin yap VPS yayını ne zaman doğru tercihtir?
Aşağıdakilerin çoğu sizin için geçerliyse kendi sunucunuzda yayın yapmak mantıklıdır:
- Linux komut satırında rahatsınız ve sistem yönetmekten keyif alıyorsunuz.
- Tek bir hedefe yayın yapıyorsunuz ya da birden fazla hedef için hata yönetimini kendiniz kurgulamaya hazırsınız.
- Kütüphaneniz küçük ve sabit; her dosyanın nasıl dışa aktarıldığını siz kontrol ediyorsunuz.
- Oynatma listesinin ara sıra en baştan başlaması izleyicileriniz için büyük bir sorun değil.
- Yayıncılığın arka planda nasıl çalıştığını öğrenmek istiyorsunuz.
Yayın bir geliri ya da markayı destekliyorsa, sık sık video ekliyorsanız, birkaç platforma ihtiyacınız varsa veya zamanınızı içeriğe ayırmanız daha değerliyse yönetilen bir hizmet daha mantıklıdır. Adil karşılaştırma şudur: sunucu faturası artı kurulum saatleri ve gece yarısı müdahaleleri, bu sorunları zaten çözmüş bir hizmete karşı.
Aynı 7/24 döngüyü StreamHouse'ta çalıştırmak
StreamHouse, bu altyapının her parçasının yerini alır. Yüklemeler önceden tek ve tutarlı bir kodlama profiline göre hazırlanır; bu da bit hızını ve zaman damgalarını sabit tutar, böylece uyumsuz bir dosya oynatma listenizi başa sarmaz. Oynatma listesini tarayıcıda oluşturun; YouTube, Twitch, Rumble, Facebook, özel RTMP veya SRT gibi hedefleri ekleyin ve Başlat'a basın ya da bir zaman planlayın.
Döngü bulutta 7/24 çalışır ve platform ya da ağ kaynaklı aksaklıklardan sonra otomatik olarak yeniden bağlanır. Yayın sürerken videoları ekleyin, kaldırın veya yeniden sıralayın; değişiklikler bir sonraki videoda uygulanır. Ek hedefler ek yayın hakkı tüketmez. Bağlı bir YouTube kanalında ise kayıt koruması, ilk yayını seçtiğiniz bir noktada kapatıp oynatma listesini yeniden başlatmadan yeni bir yayında devam edebilir.
Abonelikleri ve kullandıkça öde kredilerini fiyatlandırma sayfasında karşılaştırın.
Sık sorulan sorular
FFmpeg ile bir VPS'te 7/24 YouTube yayını yapabilir miyim?
Evet. YouTube'un RTMP adresine yönlendirilmiş, döngüye alınmış bir FFmpeg komutu kanalı canlı tutar. Zor olan, yayını haftalarca sağlıklı tutmaktır: tutarlı kodlama, otomatik yeniden başlatmalar, izleme ve uzun yayınların arşivlenmesi tamamen size kalır.
FFmpeg oynatma listem neden sürekli baştan başlıyor?
Genellikle bir dosya diğerleriyle uyuşmuyordur; kare hızı, çözünürlüğü veya ses formatı farklıdır. Kopyalama modunda zaman damgaları bozulur, FFmpeg kapanır ve ilk videodan yeniden başlar. Her dosyayı tek ve sabit bir profile göre yeniden kodlayın.
7/24 bir yayın ayda ne kadar bant genişliği kullanır?
30 gün boyunca kesintisiz çalışan tek bir 6 Mbps yayın için yaklaşık 1,9 TB; daha yüksek bit hızlarında veya ek hedeflerde bu miktar orantılı olarak artar. Aynı bit hızında üç platform, 6 TB'a yakın demektir; bu yüzden önce sunucunuzun veri aktarımı kotasını kontrol edin.
7/24 yayın için güçlü bir VPS gerekir mi?
Dosyaları önceden kodlayıp çok az işlemci gücü gerektiren stream copy modunu kullanıyorsanız gerekmez. Sunucuda gerçek zamanlı 1080p kodlama ise farklıdır: Ayrılmış çekirdekler ister ve küçük paylaşımlı paketler çoğu zaman gerçek zamanlı hıza yetişemez.


