İçeriğe atla
TubePress — ücretsiz, kendi sunucunda & aktif olarak geliştirilen
Medya ve transkodlama

Depolama ve medya dağıtımı

Yerel depolama, harici depolama sunucuları (S3, FTP, WebDAV) ve güvenli medya proxy'si.

TubePress, yüklenen her videoyu, dönüştürülmüş sürümlerini ve önizleme dosyalarını diske kaydeder; bunları şeffaf biçimde bir veya daha fazla harici depolama sunucusuna aktarabilir. Bu sayfa dosyaların nerede bulunduğunu, medya depoları sisteminin bunları arka uçlara nasıl dağıttığını ve medyanın ham dosyalarınızı açığa çıkarmadan izleyicilere nasıl ulaştığını açıklar.

Depolama, /admin/settings?tab=storage altında yapılandırılır. Tamamen yerel diskten çalışabilir ya da FTP, S3 uyumlu ve WebDAV arka uçları ekleyerek TubePress'in bunları sırayla doldurmasına izin verebilirsiniz.

TubePress medyayı nasıl depolar

Yüklemeler public/uploads/ altında bulunur. Her video, dönüştürücünün ürettiği her sürümü ve oynatıcının ihtiyaç duyduğu küçük dosyaları orijinal kaynakla birlikte tutan kendi klasörüne sahiptir — videonun video_folder'ı:

public/uploads/
  videos/
    a1b2c3d4.../        one folder per video (video_folder)
      video.mp4         original upload (source)
      video_1080p.mp4   processed source rendition
      video_720p.mp4    transcoded rendition
      video_480p.mp4    transcoded rendition
      timeline.vtt      scrub-preview sprite map
      preview.mp4       hover-preview clip
  thumbnails/           poster images
  watermark/            watermark PNG
  intros/               pre-roll / post-roll clips
  branding/             logo, favicon, background

Dönüştürücü, en yüksek video_<height>p.mp4 dosyasını arayarak kaynağı bulur; bulamazsa ham video.mp4, .webm veya .ogg dosyasına geri döner. Daha düşük sürümler aynı klasöre yazılır; dolayısıyla tek bir dizin bir videonun ihtiyaç duyduğu her şeyi içerir. Bu sürümlerin nasıl oluşturulduğu için bkz. Dönüştürme.

CDN ayarlandığında yerel alan geçici çalışma alanıdır. Harici bir varsayılan depolama ile her yükleme yerel olarak işlenir ve arka uçta güvenli biçimde saklandıktan sonra uygulama sunucusundan silinir — yerel videos/ dizini yalnızca hâlâ yüklenmekte veya dönüştürülmekte olan öğeleri barındırır.

Harici depolama sunucuları

Medya depoları sistemi, istediğiniz sayıda arka ucu kaydetmenize olanak tanır. Yeni videolar her zaman varsayılan depoya gider; bir depo disk eşiğini aştığında TubePress, yeni yüklemeleri otomatik olarak bir sonraki kullanılabilir depoya yönlendirir. Mevcut videolar, her video kendi storage_id değerini kaydettiğinden yazıldıkları yerden sunulmaya devam eder.

Dört arka uç türü desteklenmektedir — başka hiçbiri:

TürKullanım amacıBağlantı alanları
YerelTek sunucu veya başlangıç içinYok — public/uploads'tan sunulur
FTPUcuz depolama VPS veya seedboxAna bilgisayar, port (21), kullanıcı, şifre, uzak yol, SSL/TLS, pasif
S3AWS S3, DigitalOcean Spaces, Backblaze, MinIOErişim anahtarı, gizli anahtar, kova, bölge, uç nokta, önek
WebDAVNextcloud ve diğer WebDAV ana bilgisayarlarıWebDAV URL, kullanıcı, şifre

Her uzak depolama aynı zamanda birkaç işlemsel ayar taşır:

Medya URL
Ziyaretçilerin dosyaları yüklediği genel HTTP adresi — FTP/S3 kontrol adresi değil.
Durum
Aktif (yeni videoları kabul eder), Salt Okunur (yalnızca mevcut dosyaları sunar) veya Devre Dışı (çevrimdışı).
Maksimum disk kullanımı
%50–99 (varsayılan 90). Ulaşıldığında, yeni yüklemeler otomatik olarak bir sonraki depoya geçer.
Güvenli URL'ler
Medya bağlantılarını süresi dolan bir belirteçle imzalar — aşağıdaki Güvenli medya teslimi bölümüne bakın.

Depolama arka ucu ekleme

  1. Depolama düzenleyicisini açın. /admin/settings?tab=storage adresine gidin ve Depolama Ekle'ye tıklayın.
  2. Bir tür seçin ve adlandırın. Yerel, FTP, S3 veya WebDAV'ı seçin. Form, yalnızca o türün ihtiyaç duyduğu alanları gösterecek şekilde değişir.
  3. Medya URL'sini ve kimlik bilgilerini girin. Genel Medya URL'sini, ardından arka uç için ana bilgisayar/anahtar/yolu ayarlayın. Kayıtlı şifreyi korumak için düzenlerken şifreyi boş bırakın.
  4. İşlemsel seçenekleri ayarlayın. Durumu, maksimum disk kullanımı eşiğini ve URL'lerin imzalanıp imzalanmayacağını seçin.
  5. Test edin ve kaydedin. Kaydetme işlemi önce bir bağlantı testi çalıştırır (ve sağladıysanız bir izleme komut dosyası kontrolü). Başarısız olan her kontrolü düzeltin, ardından kaydedin. İsteğe bağlı olarak yeni yüklemelerin buraya gelmesi için varsayılan olarak işaretleyin.
Medya URL'si ve kontrol adresi. Medya URL'si, tarayıcıların getirdiği şeydir (örneğin https://cdn.example.com). FTP/S3 uç noktası değildir — bu ikisini karıştırmak, bir geçişten sonra bozuk oynatmanın en yaygın nedenidir.

Depolama izleyicisi

Uzak arka uçlar için TubePress, depolama kutusuna yüklediğiniz küçük bir PHP komut dosyası kullanarak disk alanını ve sağlığı takip edebilir. Depolama düzenleyicisinin Disk İzleme panelinde, İzleme komut dosyasını indir'e tıklayın (/api/storage-monitor-download adresinden sunulur), uzak sunucunuza yükleyin, ardından genel URL'sini İzleme komut dosyası URL'si alanına yapıştırın.

Bağlandıktan sonra düzenleyici, canlı disk kullanımını ve son kontrol zamanını gösterir; otomatik geçiş eşiği de bir arka ucun ne zaman dolduğunu anlamak için bu okumaları kullanır. Komut dosyası, yalnızca CMS'nizin sorgulayabileceği şekilde anahtarlanmıştır.

Her CDN kutusunda yapılmaya değer. İzleyici olmadan TubePress, uzak disk kullanımını okuyamaz; dolayısıyla maksimum kullanım otomatik geçişi yalnızca ölçebildiği depolarda işlem yapabilir.

Güvenli medya teslimi

Güvenli URL'ler bir depolama için açık olduğunda, TubePress hiçbir zaman doğrudan dosya yolu vermez. Bunun yerine /media/ üzerinden yönlendirilen kısa, süreli bir bağlantı imzalar:

/media/{token}/{expires}/{path}
token
Yol ve son kullanma tarihinin 16 karakterlik HMAC-SHA256'sı, o depolamanın özel gizli anahtarıyla imzalanır.
expires
Bir Unix zaman damgası; geçtikten sonra bağlantı 403 döndürür. Varsayılan ömür altı saattir.
path
uploads/videos/… altındaki istenen dosya.

Belirteç, her istekte sunucu tarafında yeniden hesaplanır ve kontrol edilir. Yerel depolama için TubePress, dosyayı HTTP aralık desteğiyle doğrudan akıtır (böylece ileri-geri sarma çalışır); uzak depolama için belirteci doğrular ve ardından CDN'deki dosyaya 302 yönlendirmesi yapar. Ham video ayrıca web sunucusu katmanında hız sınırlıdır: depolama düzenleyicisi, ilk birkaç megabayttan sonra akışı sınırlandıran ve bir anahtarla dönüştürme işçilerinin tam hızda çekmesine izin veren yapıştırmaya hazır bir nginx kod parçası oluşturur.

Belirteçler yola, son kullanma tarihine ve gizli anahtara bağlıdır. Bir depolamanın gizli anahtarını döndürmek mevcut tüm bağlantıları geçersiz kılar; süresi dolan bağlantılar da kendi kendine çalışmayı durdurur. Anlamlı bir kazıma önleme engeli için güvenli URL'leri hız sınırı kod parçasıyla eşleştirin. Bkz. Güvenlik.

CDN & Cloudflare

TubePress, Cloudflare'in arkasında rahatça çalışacak şekilde tasarlanmıştır. İki şey önemlidir:

  • Parçalı yüklemeler 100 MB sınırını aşar. Dönüştürme sonuçları, /api/transcode-upload-chunk üzerinden parça parça CMS'ye geri akıtılır; bu sayede bireysel istekler, sürümün boyutu ne kadar büyük olursa olsun Cloudflare'in ücretsiz katmandaki 100 MB sınırının altında kalır.
  • Uzun önbellekli, önbellek-kırmalı varlıklar. Statik varlıklar uzun, değişmez önbellek başlıklarıyla sunulur ve her sürümde bir sürüm sorgusuyla önbelleği kırılır; böylece bir proxy, eski bir dosya sunmaksızın agresif biçimde önbelleğe alabilir.

Depolama başına nginx kod parçası, video için mantıklı expires başlıkları ve güvenli yerel teslimat tarafından kullanılan isteğe bağlı /media/ dahili konumunu ekler; böylece doğrudan site yapılandırmanıza ekleyebilirsiniz.

Sonraki adımlar

Hâlâ takıldınız mı?

Kontrol panelinizden bir destek talebi açın, ekibimiz size yardımcı olacaktır.

Canlı demoyu deneyin → TubePress'i indirin →