Sözlük

Zaman Tabanı Nedir?

Dosyanızda Time Base için bir değer bulduysanız, bunun ne anlama geldiğini mutlaka merak ediyorsunuzdur. Time Base meta verileri hakkında topladığımız bilgileri öğrenin.

time-base

Zaman Temeli, bir akışın saydığı zaman birimidir. Zaman damgalarını saniye cinsinden saklamak yerine, bir medya dosyası kendi saatinin tıklarına göre sayar ve zaman temeli bir tığın ne kadar sürdüğünü belirtir. Saniyenin kesri olarak yazılır.

Hangi dosyaların bunu içerdiği ve değerin nereden geldiği

Zaman temelini medya dosyalarının içindeki tek tek akışlarda bulacaksınız: MP4, MOV, MKV, WebM, AVI ve MPEG taşıma akışlarındaki görüntü, ses ve altyazılarda, ayrıca bağımsız ses dosyalarında. Her akışın kendi zaman temeli vardır, bu yüzden bir dosyadaki ses ve video genellikle farklı birimlerle sayar.

Değer, kodlayıcı veya dosyayı birleştiren program tarafından seçilir. Bazı kapsayıcı formatlar belirli bir zaman temeli gerektirir ve bunu baştan sabitler; format seçimi serbest bıraktığında, dosyayı yazan program içeriğe uyan bir değer seçer ve dosya sadece o programın varsayılanını taşıyor olabilir.

Değerin nasıl göründüğü

Her zaman bir kesirdir ve alttaki sayı saniye başına tık sayısını gösterir:

  • 1/1000 - tık başına bir milisaniye, Matroska ve WebM dosyalarında yaygın seçim
  • 1/90000 - MPEG taşıma akışlarında uzun süredir kullanılan değer
  • 1/48000 - ses akışları genellikle örneklerle sayar, bu yüzden zaman temeli örnekleme hızına uyar
  • 1/12800 - MP4 dosyalarındaki video akışlarında sık görülen bir değer

Bir zaman damgasını saniyeye çevirmek için, onu kesirle çarpın. Zaman temeli 1/12800 olan bir akışta 12800 sunum zaman damgası tam bir saniyeye eşittir; zaman temeli 1/1000 olduğunda 3500 zaman damgası üç buçuk saniyedir. Bu yüzden bir rapordaki ham zaman damgaları çok büyük sayılar gibi görünür; bunlar saniye değil, tık sayılarıdır. Eski uygulamalar bu alanın yanında ayrı bir Codec Time Base satırı da yazdırabilir.

Neden önemli olduğu

Bir medya dosyasındaki her şey tam sayıdaki tık üzerinde gerçekleşir, bu nedenle zaman temeli akışın ifade edebileceği en ince zamanlamayı belirler. Bir kare veya örnek iki tık arasına denk gelirse, zaman damgası yuvarlanmak zorundadır ve yuvarlama hataları birikir.

Bu, tam sayı olmayan video kare hızlarında gerçek bir sorundur. 1001 saniyede 30000 karelik yayın hızında, bir kare 33 milisaniyeden biraz daha uzun sürer ama tam sayı bir milisaniye etmez, bu yüzden milisaniye zaman temeli hiçbir kareyi tam olarak yerleştiremez. Saniye başına daha fazla tık içeren bir zaman temeli, yani kesrin altında daha büyük bir sayı, her kare sınırına tam isabet eder. Bu nedenle kodlayıcılar milisaniye yerine 1/12800 veya 1/90000 gibi değerleri tercih eder.

Sonuçlar, tek bir karede görebileceğiniz şeylerden çok zamanlama hataları olarak ortaya çıkar: sesin görüntüyle yavaşça uyumdan çıkması, eşit olmayan kare aralıkları, tam isabet etmeyen kesmeler veya aramalar. Akışları farklı zaman temelleriyle sayan dosyaları birleştirmek, tüm zaman damgalarının yeniden ölçeklenmesini gerektirir ve bu dönüşüm klasik bir senkronizasyon hatası kaynağıdır. Bu alanın tek başına görüntü veya ses kalitesi üzerinde etkisi yoktur ve hiçbir kişisel bilgi içermez.