Računanje Parametara 1. - Postupak Računanja

Računanje Parametara 1. - Postupak Računanja

Sve što treba da znate da biste mogli izračunati bitrate i druge osnovne parametre za video kompresiju
  • upoznaćete jedinice za memoriju i bitrate
  • upoznaćete postupak računanja bitratea

Uvod

Ovaj tekst služi da biste razumeli jedinice za memoriju i način računanja parametara. To je važno znati da biste dobro shvatili suštinske stvari o video kompresiji.

Naravno kada dobro shvatite osnove video kompresije, za računanje ipak preporučujemo da koristite bitrate kalkulator jer je daleko brže i lakše nego da računate ručno.

Osnovno o veličini audio-video fajlova

Container = video stream + audio stream + container overhead

Svaki kompletan audio-video fajl kao što je na primer AVI je container koji se sastoji od najmanje tri elementa: Video stream + Audio stream + container overhead.
Svaki od ovih elemenata zauzima određenu količinu bitova i utiče na veličinu Container fajla.

Video stream (video zapis)

Video stream je digitalni zapis isključivo vizualnih podataka nekog videa, tj. zapis svih frejmova jednog videa. Taj zapis je uvek u nekom formatu.

Audio stream (audio zapis)

Audio stream je digitalni zapis zvuka u nekom formatu za zapis audia.

Container overhead

Prva uloga container fajla je da bi objedinio video stream i prateći audio stream u jedinstvenu celinu.
Druga uloga container fajla je da obezbedi najbolju moguću reprodukciju. Container ima takvu strukturu i prateće podatke da dekoderi mogu sinhronizovano reprodukaovati audio i video i to uz najmanje moguće opterećivanje procesora i radne memorije dekodera.
Da bi ostvario svoje uloge container fajl mora da sadrži pomoćne podatke koji troše određenu količinu bitova. Ti podaci se nazivaju container overhead. Kod AVi fajlova overhead tipično iznosi do 15 kilobita po svakoj sekundi snimka.

Jedinice za količinu memorije (veličinu fajlova)

bit

Bit je najmanja memorijska jedinica. Najmanje moguće zauzeće memorijskog prostora je jedan bit.
1 bit

kbit = 1000 bit

B (byte)

Jedan bajt je 8 bitova:
1 B = 8 bit

kB (kilobyte)

Jedan kilobajt je 1024 bajta:
1 kB = 1024 B

1 kB = 8192 bit
1 kB = 8,192 kbit
1 kB = 0,008192 Mbit

MB (megabyte)

Jedan megabajt (MB) je 1024 kilobajta:
1 MB = 1024 kB

1 MB = 1048576 B

1 MB = 8388608 bit
1 MB = 8388,608 kbit
1 MB = 8,388608 Mbit

GB (gigabyte)

Jedan gigabajt (GB) je 1024 megabajta:
1 GB = 1024 MB

1 GB = 8589934592 bit
1 GB = 8589934,592 kbit
1 GB = 8589,934592 Mbit

TB (terabyte)

Jedan terabajt (TB) je 1024 gigabajta:
1 TB =1024 GB

Jedinice za bitrate

Bitrate je broj potrošenih bitova memorije za svaku sekundu video snimka.Za bitrate se skoro uvek koriste koriste jedinice kbps (kbit/s) i Mbps (Mbit/s)
Napomena: 
Kod jedinica za bitrate i za brzine protoka podataka (npr. brzine interneta) prefiksi k (kilo) i M (mega) imaju drugačije značenje nego kod veličine fajlova!
Budite pažljivi kod preračunavanja!
Pazite da ne pomešate jedinice za veličinu fajlova i jedinice za bitrate!

kbps (kilobits per second)

kbps je najmanja jedinica za bitrate. Bitrate u kbps govori koliko hiljada bitova je potrošeno za svaku sekundu video zapisa:
1 kbps = 1000 bit/s

Mbps (megabits per second)

Mbps je jedinica za bitrate koja se uglavnom koristi za bitrate veći od 2000 kbps. Bitrate u Mbps govori koliko miliona bitova je potrošeno za svaku sekundu video zapisa:
1 Mbps = 1000 kbps = 1000000 bit/s

Tabela za preračunavanje veličine fajla u kilobite

Kod traženja bitratea za određenu večličinu fajla moraćemo da preračunavamo iz jedinica za veličlinu fajla u kilobite zato što se oni koriste za bitrate.
bit kbit (kilobit) Mbit (megabit) Gbit (gigabit)
1 B (byte) 8
1 kB (kilobyte) 8192 8,192
1 MB (megabyte) 8388608 8388,608 8,388608
1 GB (gigabyte) 8589934592 8589934,592 8589,934592 8,589934592

Jedinice za framerate (broj frejmova u sekundi)

Framerate označava brzinu smenjivanja frejmova pri prikazivanju videa. Uvek se izražava jedinicom fps (f/s).

fps (frames per second)

Broj fps označava koliko frejmova po sekundi videa. Na primer, 25 fps znači 25 slika u sekundi

Jedinice za Qf ("quality factor" ili "frame quality")

Qf (quality factor) ili "frame quality" je gruba ocena kvaliteta videa tako što govori koliko bitova je potrošeno na svaki pixel u jednom frejmu. Qf se izražava u jedinicama bits/pixel.
Više o Qf i optimizaciji parametara pročitaćete u tekstu Računanje parametara 2 - Kako odrediti optimalne parametre
Za sada ćemo vam reći samo da "DivX filmovi" uobičajeno imaju Qf od oko 0,2 bits/pixel.

Kako da odredimo bitrate da bismo dobili fajl tačno određene veličine?

Postoji više metoda. Video majstor će vam prikazati metod računanja koji je najjednostavnij i najlakši za zapamtiti.

Veličine fajla, audia, overheada i videa ćemo preračunati u kilobite da ne bi imali puno preračunavanja i da bismo izbegli velike brojeve. Tako ćemo na kraju dobiti iznos u kilobitima  koji treba samo da podelimo sa brojem sekundi i dobiti ćemo bitrate u kbps.

Opis postupka, korak po korak:
1) Trajanje videa preračunajte u sekunde
2) Zadajte ciljanu veličinu fajla i preračunajte je u kilobite
3) Izračunajte koliko kilobita će biti potrošeno na audio zapis.
4) Izračunajte koliko kilobita će biti potrošeno na container overhead
5) Izračunajte koliko kilobita je preostalo za video zapis
6) Veličinu video zapisa u kilobitima podelite sa brojem sekundi i dobićete bitrate u kbps

Primer izračunavanja bitratea za "DivX film"

Ovaj postupak ćemo objasnii na primeru računanja bitratea za tipičan "divx film".
Za naš primer, izabrali smo film prosečnog trajanja od 105 minuta (1 sat i 45 minuta). Cilj ovog računanja je da izračunamo koliki treba biti bitrate za video da bismo dobili fajl veličine 700 MB. To je tipično za "DivX fimove" da veličina fajla bude 700 MB ili malo manje kako bi  fajl mogao stati na jedan CD. Audio

Takođe, tipično za "divx filmove" je audio zapis sa audio bitrateom 128 kbps

Dakle u našem primeru, koristićemo sledeće parametre:
Trajanje: 105 mninuta
Audio bitrate: 128 kbps
Ciljana veličina fajla: 700 MB

1) Trajanje videa preračunajte u sekunde?

Trajanje filma je nepromenjivo. Treba samo da film otvorite u nekom plejeru ili programu za analizu videa i pročitate koliko film traje. U našem primeru, trajanje filma je 105 minuta.

Da bismo trajanje u minutama preračunali u sekunde, broj minuta ćemo pomnožiti sa 60.

105 x 60 = 6300

Trajanje filma u sekundama je dakle: 6300 sekundi.

2) Ciljanu veličinu fajla, preračunajte u kilobite

Ovo je prva odluka koju morate doneti kod računanja bitratea. Već smo odlučili da je ciljana veličina fajla 700 MB.

Da bismo izračunali bitrate potrebno je da veličinu fajla preračunamo u kilobite:

700 MB x 8388,608 = 5872025,6 kbit

3) Izračunajte koliko kilobita će biti potrošeno na Audio zapis

Audio bitrate u našem primeru je 128 kbps. Da bismo dobili veličinu audio zapisa u kilobitima, audio bitrate u kbps ćemo pomnožiti sa brojem sekundi:

128 kbps x 6300 s = 806400 kbit

Sada smo dobili ukupnu veličinu audia u kilobitima. 

4) Izračunajte kolko kilobita će biti potrošeno na container overhead?

Kod AVI container fajlova uobičajeno se 0,5-1,5% bitova potroši na AVI overhead. To su podaci u samom containeru koji su neophodni za ispravnu reprodukciju fajla.

AVI overhead se ne može 100% precizno izračunati. Najjednostavnija metoda da odredimo veličinu AVI overheada za "divx film" je da broj sekundi pomnožimo sa 15 kilobita.

6300 s x 15 kbps = 94500 kbit

Dakle izračunali smo da će na AVI overhead otpasti 94500 kilobita.
Kako izračunati koliki je AVI overhead?
Za AVI fajlove, ubedljivo najjednostavniji način da odredimo veličinu AVI overehada je sledeći:
Zamislimo da overhead container fajla ima svoj bitrate od 15 kbps. Pomnožite tih 15 kiliobita po svakoj sekundi videa sa ukupnim trajanjem videa u sekundama. Kao rezultat ćete dobiti broj kilobita potrošenih na AVI overhead.

5) Izračunajte koliko kilobita je preostalo za Video zapis?

Broj preostalih bitova koje možemo upotrebiti za video ćemo izračunati tako što ćemo od ciljane veličine fajla u bitovima, oduzeti broj bitova koji odlazi na audio i broj bitova koji odlazi na container overhead.

5872025,6 kbit - 806400 kbit - 94500 kbit = 4971125,6 kbit

Dakle za video zapis preostalo je tačno 4971125,6 kilobita.

6) I konačno izračunajte bitrate za video


Da bismo dobili bitrate u kbps veličinu video zapisa u kilobitima ćemo podeliti sa brojem sekundi:

4971125,6 kbit / 6300 s =789 kbps

Dakle izračunali smo da je traženi bitrate za video 789 kbps.

Provera

Za svaki slučaj proverićemo u bitrate kalkulatoru da li smo dobro izračunali. Koristićemo "Aspect" koji je verovatno najbolji bitrate kalkulator koji postoji.
Obratite pažnju na parametre koji smo mi koristili:
Trajanje: 105 mninuta
Audio bitrate: 128 kbps
Ciljana veličina fajla: 700 MB
Ostali parametri koji se vide na slici, ne utiču na bitrate:

bitrate kalkulator Aspect - racunanje bitratea

Mi smo izračunali da je bitrate za ciljanu veličinu fajla 789 kbps. Kalkulator "Aspect" je izračunao 788 kbps. Ovo malo ostupanje od jednog kilobita je uobičajeno jer se skoro nikada ne koriste potpuno precizne metode da se predvidi koliko bitova će biti potrošeno za AVI overhead.
Znači, tačno smo izračunali! Metod je tačan!

Napomena:

Ovaj postupak smo napisali zato da bolje razumete video kompresiju i potrošnju memorije kod video fajlova. Kada treba da izračunate bitrate, preporučujemo da za to ipak koristite bitrate kalkulator.
video majstor, 28.3.2012
Za diskusiju i pitanja na ovu temu možete koristiti naš forum
>>Za učestvovanje na forumu registracija nije neohodna<<