Steam fragmanları HLS'tir: MP4 tarayıcında birleştirilir
Bir Steam fragmanı kapıp alabileceğin bir dosya değil — parçalardan oluşan bir çalma listesidir. İndirici çalma listesinin kalitelerini okur ve tarayıcın bunları tek bir MP4'te birleştirir.
Steam eskiden fragmanları düz MP4 ve WebM dosyaları olarak yayınlardı ve o alanlar hâlâ mağaza API'sinde var. Artık her zaman boşlar. Steam'in yerine yayınladığı şey bir HLS ana çalma listesi: fragmanın sürümlerini tanımlayan ve her biri birkaç saniyelik parçalara işaret eden küçük bir metin dosyası.
Önce çalma listesi, sonra parçalar
Çözücünün işi burada erken biter. Mağaza sayfasının üst verisini okur, fragmanın ana çalma listesi URL'sini alır, onu ayrıştırır ve her sürüm için çözünürlüğü, bit hızı ve kare hızıyla bir satır döndürür. Video parçalarını asla almaz ve hiçbir şeyi birleştirmez — bu, tüm videoyu sebepsiz yere bir sunucudan geçirmek olurdu.
| Çözücünün okuduğu | Sonra tarayıcının yaptığı |
|---|---|
| Ana çalma listesi: sürümler, çözünürlükler, bit hızları, ses grubu | Seçtiğin sürümü seçer |
| Çalma listesinin içindeki parça şablonu | O sürümün parçalarını Steam'in CDN'inden alır ve birleştirir |
| Ana listenin adlandırdığı ses grubu | Video ile AAC ses kanalını tek bir MP4'te birleştirir |
Birleştirme, zaten açık olan sekmede, Steam'in kendi CDN'inden (video.akamai.steamstatic.com) yapılır. İki dakikalık bir fragman kabaca doksan parçadır, bu yüzden normal bir bağlantıda ilerleme çubuğu birkaç saniye içinde dolar.
Kalite listesini okumak
- Her satır, fragmanın gerçekten taşıdığı bir sürümdür, en yüksek çözünürlük başta.
- Satırlar çözünürlüğü ve bit hızını gösterir, çünkü iki sürüm aynı çözünürlüğü paylaşıp onu destekleyen veri miktarında farklılaşabilir.
- Steam fragmanları çoğu zaman 1920×1080'e ulaşır, ama küçük bir bağımsız fragmanı çok daha aşağıda kalabilir.
- Fragmanlar ve oynanış klipleri birlikte listelenir; her biri bir kapak görseli taşır, böylece indirmeden önce ayırt edebilirsin.
Parçalar bitmiş MP4'e birebir kopyalanır. Görüntü ve ses, Steam'in kendi istemcisinin o çözünürlükte oynattığının tam olarak aynısıdır — birleştirme bir kap değişikliğidir, yeniden kodlama değil, bu yüzden yolda hiçbir şey yumuşamaz.
Neler ters gidebilir
İki şey, ikisi de videoyla değil ağla ilgili. Steam'in mağaza üst verisi cevap vermezse çözücü bir hata bildirmeden önce bir kez yeniden dener. Çalma listesinin kendisi ayrıştırılamazsa aynı yeniden deneme geçerlidir — ve yine başarısız olursa sayfa, bitmeyecek bir indirme sunmak yerine bunu söyler.
Videosu olmayan bir oyun sayfası no_video döndürür. Buna, tek medyası bir ekran görüntüsü galerisi olan sayfalar da dahildir; bu, çıkmamış oyunlar için yaygındır.
Kısa özet
- Steam artık düz fragman dosyaları sunmuyor; HLS tek yol.
- Çözücü çalma listesini okur; tarayıcın parçaları alır ve birleştirir.
- Bitmiş MP4, akışın bir kopyasıdır, yeniden kodlama değil.
- Bu siteden hiçbir şey geçmez ve hiçbir şey saklanmaz.
Sorular
İndirilen fragman Steam'in oynattığından daha düşük kalitede mi?
Hayır. Parçalar MP4'e birebir kopyalanır, yani görüntü ve ses seçtiğin sürümle eşleşir — Steam'in kendi istemcisinin o çözünürlükte oynattığı akışın aynısı.
Bir Steam indirmesi neden ilerleme çubuğu gösterirken Pinterest'inki göstermiyor?
Çünkü Steam'in CDN'i tarayıcının parçaları okumasına izin verir, yani sayfa gerçekten dosyayı indiriyordur ve ilerlemeyi bildirebilir. Pinterest'in CDN'i izin vermez, bu yüzden o indirme düz bir yönlendirme olmak zorundadır.
Bir oyun sayfası video göstermiyor — neden?
O sayfaya bağlı fragman veya oynanış klibi yoktur. Ekran görüntüsü galerileri video değildir ve çıkmamış oyunlar çoğu zaman çıkışa yaklaşana kadar ikisine de sahip olmaz.