Archív

Posts Tagged ‘e-penis enlargement’

Aspect Ratio – vše co jste (ne)chtěli vědět

07/09/2009 6 komentářů

Dnešním tématem budiž Aspect Ratio.

1250523447815

1. Na začátek

Několik poučení a ‚disclaimer‘:

  • Tento článek pravděpodobně nemusíte číst.
  • Tento článek ve výsledku řeší distorzi obrazu několika málo procent, kterou většinou nikdo nevidí – ani vy ne!
  • Je dost možné, že některé informace nebudou 100% korektní, vzhledem k tomu, jaký je v tom všeobecně guláš.
  • Jak už jste z mého blogýsku asi zvyklý, přestože mě kritika (rozuměj těch 5 lidí, co mě bere vážně) donutila psát česky a s diakritikou, bez znalosti angličtiny se neobejdete, protože linkuju na anglicky psanou dokumentaci a používám anglické technické termíny.
  • Díky mé osobní zaujatosti a preferencím zde budu o používaní Aspect Ratia hovořit pouze v součinnosti s MKV kontejnerem a x264 enkodérem.

Slovníček pojmů:

  • rozlišení – počet bodů, pixelů, skládající obraz videa ve formátu šířka x výška.
  • DARDisplay Aspect Ratio – také známé v 99% jako pouhé ‚AR‘. Skutečný počet čtvercových pixelů, kolik se jich ukáže při přehrávání na monitoru/tv, nezávisle na tom, jaké je rozlišení videa.  Jde zapisovat třemi způsoby. Buďto klasickým zlomkem (16/9 …), poměrem stran <float>:1 (1.82:1) nebo výsledným ‚rozlišením‘ (875×480).
  • PARPixel Aspect Ratio – poměr stran jednotlivých pixelů v daném videu. Ano, čtete správně, ve videu nemusí být pixel čtercový, resp. takový, jako se vám pak zobrazuje na vašem monitoru. Někdy se mu také říká Sample Aspect Ratio, což se pak krásně plete se SAR používaným v MPEG-4.
  • SAR Sample Aspect Ratio (někdy také Source Aspect Ratio či Signal Aspect Ratio) – používá se jako signalizace v MPEG-4, např. pro x264, aby výsledné DAR zakódoval přímo do video streamu. Platí rovnice DAR/PAR = SAR.

2. Princip

Srovnejte následující dva stejně velké obrázky.

par1a

PAR 1:1

par2a

PAR 2:1

Ten vlevo znázorňuje presně  to, co byste čekali od videa. Všechny pixely čtvercové, v našem případě PAR 1:1 a rozlišení obrazu 4×4. Naproti tomu ten vpravo znázorňuje to, co se děje v anamorfických systémech. Tady vas donutím si nastudovat, co to vůbec znamená:

http://en.wikipedia.org/wiki/Anamorphic

a pro ty rychlejší potom

http://en.wikipedia.org/wiki/Anamorphic_widescreen

zabývající se tím přímo na DVD, ke kterým se dostaneme později. Ve zkratce jde o to, že optickým trikem se zaznamená širokoúhlý obraz do neširokoúhlého rozlišení, a správným DAR zobrazením se pixely roztáhnou do správné podoby. ‚Správné‘ je však relativní pojem, ale o tom až později. Prozatím se spokojíme s tím, že obrázek vpravo má rozlišení 2×4, PAR 2:1 a správné DAR pro zobrazení 4×4, tedy celý frame bude mít stejný tvar, jako obrázek vlevo.

Dobrá,  začneme od toho nejjednoduššího a postupně přejdeme k těžšímu.

3. HD systémy

V HD je to všechno krásné černobílé v 720p a 1080p.

Rozlišení 1280 x 720 a  1920 x 1080. Platí  (Šířka / 16 ) * 9 = Výška.  Tím zjistíte, že samotné rozlišení už má správný poměr pro widescreen. Z toho vyplývá, že PAR je 1, čili každý pixel je skutečně čtvercový. To také mimo jiné znamená, že můžete vesele cropovat, a nic nebude nevhodně roztáhnuté. Začnete-li však resizovat, míříte expresem do pekla…

Ale pak existuje taky anamorfický systém od Sony, dnes důvěrně známý jako ‚Y U DO THIS, SONY *cryface*‘ aneb 1080i.

Rozlišení 1440×1080, PAR 4:3 :1 (aneb 1,33 periodických:1). Takže stačí nastavit DAR na 16/9 nebo 1920×1080 a voila, jsem doma.  Co si je však nutné uvědomit ve chvíli, kdy pracujete  s anamorfickým systémem, je to, už si nemůžete jen tak cropovat a myslet si, že vám to projde s DAR 16/9 flagem. Neprojde. Logicky se stane následující: (doporučuju otevřít si oba obrázky bokem a rychle mezi nima přepínat)

anamorf

Původní zdroj

anamorf_fail

Crop 20px z každé strany

(Uvědomuju si, že poskytnutý příklad není nejlepší, protože tady původně nebylo potřeba cropnout nic a už vůbec ne celkem 40px, ale teď jde o názornost principu.)

Co ale můžete, je kompenzovat PAR distorzi tak, aby výsledné AR zůstalo co nejlépe zachováno, takže pokud se budeme držet předchozího příkladu a je potřeba cropnout  20 pixelu z každé strany, tak magická formule vypadá nějak takto:

(16/9) / (1440/1080) = PAR   zdroje,  a  dále (1400/1080) * PAR = výsledné DAR, v našem případě 140/81. Po aplikování pak výsledek vypadá takto:  (srovnávejte s obrázkem zdroje)

anamorfic_crop_corrected

Crop 20px a nové DAR

‚Ehm, cože?‘ , ptáte se? Ano, přestože je to na první pohled nelogické, tak pokud transformujete video ořezem nebo resizem, je správné deformovat PAR/DAR tak, aby poměry zůstaly zachovány vůči originálu. Magie.

Jinak takhle ‚správně‘, bez nutnosti počítat nové DAR, je to tak, že uděláte 1440×1080(hint: 1080i stejně nikdy nemá detaily na to nechávat ho v 1080 vertikálně) -> 1280×720, tím dostanete PAR 1 a tady už opět vesele cropujete bez distorze. Bohužel dnešní praxe naprosto všech fansuberů je taková, že releasy jsou v 1280×720 bez jakékoliv korekce PARu. Je to tak, protože oni cropujou PŘED resizem. Jejich filterchain vypadá asi nějak takto: IVTC > crop > resize. Čili mají distorzi a je jim to jedno.

4. SDTV systémy a DVD

Tak. Teď jsme se posunuli trošku do historie. Pamatujete ještě, jak jsme v HD mluvili o rozlišení? Tam opravdu každý pixel nesl informaci. Že je to zcela logické? Ano, ale u SD si o tom můžete nechat jenom zdát.

Opět vás donutím si něco nastudovat. Dokud tak neuděláte, nemá cenu pokračovat ve čtení. Tentokráte si to budete muset přečíst několikrát, aby jste tomu za a) porozuměli a za b) uvěřili. Je to nejdůležitější link, který vám tu předkládám ohledně DVD a SDTV :

http://lipas.uwasa.fi/~f76998/video/conversion/#introduction

Je v tom pořádný guláš. Nechce se mi to celé překládat, ta stránka je dost vypovídající sama o sobe, ale udělám malý shrnutí, co se týče AR u DVD:

  • ani NTSC ani PAL nemá za žádných okolností obraz přesně 4:3 nebo 16:9.
  • musí se počítat s aktivním obrazem, což je u NTSC 710.85×486 a u PALu 702×576. Jak na to? Nejlépe přes PAR.

Takže abych to zkrátil, u SD systémů není správné používat ani 16/9 flag, ani nechávat defaultní DAR podle 4:3 rozlišení v případě starého 4:3 materiálu, přestože je to tak denodenní praxí a nikomu to nepřijde divné. Když to totiž skutečně začnete počítat správně přes PAR dle ITU-R BT.601, dostanete správné výsledky. A abych vám ušetřil lekci matematiky, na DVD konverze existuje skvělá kalkulačka, která umí i cropy a resizy  (v kalkulačce jako ‚scale‘), takže už víte, co budete používat:

http://ps-auxw.de/cgi-bin/ar-calc.pl

Například pro standardní NTSC DVD rozlišení 720×480 anamorphic wide, je správné DAR 875×480 a nikoliv 853×480, jaké se zobrazí při prostém 16/9 nastavení. A nejlepší na tom je, že neexistuje ani žádný softwareový DVD přehrávač na PC, který by to zobrazoval správně ;/ I MPC-HC hází všude 16/9 flag.

5. Nevýhody

Mají vlastně tyhle hrátky s DAR nějakou nevýhodu? Celkem dvě.

1) Můžete dostat dosti nestandardní čísla, se kterými si nemusí poradit ani na PC připojené HDTV, a bude tak docházet k černým pruhům po stranách.

2) V případě, že potkáte video s evidentně zajímavým PAR, mohl to klidně dělat běžný Internet Tough Guy (TM) a vy nemáte možnost to po něm zkontrolovat bez toho, aniž byste věděli, jakých všech transformací se na videu dopustil. Prostě to trošku zvyšuje nároky na erudovanost člověka, co se do toho pustí. Vzhledem k tomu, že o tomhle tématu se ví obecně velmi málo, je však dost velká šance, že nastavené PAR je správné a zkontrolované vůči originálu.

6. Jak na mkvmerge

V MKVMergeGUI lze zadat jedině DAR, možnost zadat PAR není implementovaná. Nenechte se zmást tím, že jsou tam dvě okénka nadepsaná ‚Aspect Ratio‚ a ‚Display width/height‚. Jedno je na zadání zlomku a tvaru x ku y, druhé je přímo na DAR rozlišení. Jedna se o totéž, nakonec se to stejně přepočítá na DAR rozlišení.

7. SAR a x264

Nyní už víte, co znamená DAR a jak ho zadávat do kontejneru. Když se nad tím zamyslíte, možná vás napadne, že nechat tuhle úlohu na kontejneru není přiliš košér. Proto má MPEG4 ve specifikaci zavedený SAR. V x264 se jedná o switch –sar x:y, kde x je šířka a y výška podle formule ve slovníčku pojmů na začátku. Co se tím docílí? Signalizaci na výsledné DAR dostane už kodek a přímo ve video streamu bude informace o tom, jak se má video zobrazit. To samo o sobě je v pořádku, v praxi je to ale opět jinak.  Proč?

  • Jak tuto signalizaci načíst a interpretovat totiž připadne na dekodér, který to vůbec nemusí umět. A díky tomu, že dekoderů existuje mnohem víc než MKV splitterů, si dokážete představit problémy.
  • Mohou nastat vpravdě kuriózní situace, kdy uživatel, který nemá o SAR ve video streamu ani páru, nastaví v MKV jiný DAR. Pak se děje vůle boží a výsledek může být podle kombinace dekodér/splitter téměř libovolný z kombinace pojmů ‚nepřehraje se to/bude to rozbitý/ jeden z flagů se náhodně bude ignorovat/provede se oboje v nepředvídatelném pořadí. (Některé zprávy hovoří o tom, že CoreAVC si hraje na chytrého a spočítá si něco mezi? Testování nechť si provede čtenář sám.)

Proč vám to říkám? Protože dnešní konvence hovoří tak, že SAR by se prostě používat němelo, protože není pořádně naimplementované jeho správné interpretování napříč softwarem(natož hardwarem o_O).

8. Perličky na konec

9. Závěr

Co říct závěrem? Snad jsem postihl většinu stránek problematiky alespoň u anime. A abyste si nemysleli, že teď už víte uplně všechno, mám pro vás poslední link:

ttp://en.wikipedia.org/wiki/Aspect_ratio_(image)#Previous_and_presently_used_aspect_ratios

Asi radši začnu psát články o vaření…

Za věcné korektury děkuju opět The_P.  ^^

Reklamy

moudra o x264 I. – nepouzivejte –bitrate

18/08/2009 Napsat komentář

#otakuland           „(+censored) aky je najlepsi bitrate pre 720p HQ „

DOST!  To je jako ptat se kuchare, kolik mrkvi je potreba na svickovou a nerict mu, jak velky hrnec ma, pro kolik osob vari, a jak moc mrkvovou chut vlastne chce, aby ta svickova mela.

Jelikoz tato metafora pravdepodobne nezabrala, zkusim to rict jinak. x264 je program, ktery nedela temer nic jineho, nez ze se rozhoduje. Kvalitu vysledneho h264 streamu ovlivnujete parametry, podle kterych se toto rozhodovani ovlivnuje.  Kontrola Kvality je kategorie, ktera ovlivnuje, jak moc si kvalitativne budou veskere framy ‚podobne‘ co se tyce bitrate, tzn. do kolika bitu se muze zakodovat cely jeden frame. To, ze nektere framy budou potrebovat vic nebo min a miru teto fluktuace jde urcit jinym parametrem mimo Ratecontrol ted nebudu rozebirat. CO je vsak dulezite je, ze uzivatel ma dve moznosti, jak ovlivnit STREDNI hodnotu teto bitrate:

1) CRF – konstantni ‚kvalita‘. Jeji vypocet  je nyni zatim otaznikem diky prichodu mbtree. Faktem vsak zustava, ze diky teto moznosti predate kontrolu nad tim, aby framy vypadaly TEMER STEJNE DOBRE vnitrnimu algoritmu. Plati cim mensi cislo, tim lepsi.

Klady

  • vypada dobre jeden frame? budou tak vypadat pravdepodobne vsechny. Staci zkontrolovat rychly pohyb, sceny s grainem atd. klasika.
  • Nestane se, ze by nektere narocne sceny byly ‚vyhladovele‘, tzn. nedostanou tolik bitrate kolik by potrebovali.

Zapory

  • Vysledny enkod nekolika ruznych zdrojovych videi se stejnym CRF na 99% bude mit rozdilnou velikost. Mensi nebo vetsi.
  • Nutnost udelat nekolik testu pro ruzna CRF a bedlive sledovat zmeny.

Ja preci jenom jeste pri prehravani vysledku v danem CRF kontroluju prumernou bitrate a beru ji jako odrazovy mustek.

2) BITRATE – neboli, ‚tady mas tri mrkve a chci z toho svickovou pro cely pribuzenstvo. rozdel ji jak uznas za vhodne‘. V tomto pripade postavite x264 pred hotovou vec. Ma pouzit na kazdy frame tolik a tolik bitu. Vysledna kvalita se tak rozlozi podle mnozstvi bitu ktere je mozne pouzit, a znovu opakuju, jedna se o stredni hodnotu, takze fluktuace se nepocitaji. A jak tuhle hodnotu zjistime? Presne receno – nijak. Existovaly urcite metody pres xvid ale to uz je dnes passe. Navic mame ruzne rozliseni/ruzne zdroje/ruzna uroven detailu atd. To vse urcuje, kolik bitu by bylo idealne zapotrebi k zakompresovani framu bez znatelne ztraty na kvalite pro oko. To vsak x264 v tomto modu neresi, ohlizi se pouze na target bitrate a podle toho ji relativne rovnomerne rozdeluje podle statsu z 1. passu. Samozrejme tak nektere framy ostrouhaji.

Klady

  • Lze pomerne jednoduse vykalkulovat vyslednou velikost souboru, bez ohledu na zdroj, za predpokladu, ze bude mit stejne rozliseni a framerate. Nic vic pro kalkulaci neni potreba.
  • pokud se vam CRF zda na dany zdroj nefunkcni(= nedava bitrate kam by melo a ubira kde nema), ma obcas rucni nastaveni –bitrate a tudiz donuceni fungovat podle jineho rozhodovaciho algoritmu lepsi vysledek, ale chce to cit a MNOHO samplu a casu na zkouseni a kontrolu. Vetsinou to nestoji za to..
  • Moznost manipulace se .stats souborem z 1. passu. Duvodem budiz kontrola ci nutnost kvuli nekterym featuram MKV(o tom nekdy priste).

Zapory

  • Vyhladovelost. Scena s rychlym pohybem, blikajicimi svetly na pozadi, menici se barvy a spoustu hran a na to vse –bitrate nulanulanic? Smula, nebude to vypadat nejlip. Samozrejme nejaka vahovost vuci vetsi bitrate statickym scenam existuje, ale jak rika stare porekadlo: ‚kde nic neni ani smrt nebere‘. Bez bitu  to nepujde. Pozorne oko temer bez vyjimky v kazdem –bitrate videu najde scenu, ktera rve ‚Dej mi vic bitu ty lacina devko!‘, pokud se pohybujete podel hranicni hodnoty bitrate pro dane rozliseni. (Kdyz bitrate prekrmite, napr. pro 480p DVD date –bitrate 30000, nicemu, krome povedomi o vasem dusevnim zravi, neuskodite)

Zaver:

Kdokoliv vam tvrdil, ze kodit 2 passy s bitrate vam da ‚lepsi kompresi‘ a ze je to ten spravny zpusob jak na x264, vam lhal. Pokud napr. nechcete nacpat cely enkod filmu na DVD nebo nedejboze CD, tak az na specialni pripady neni vubec nutne pouzit –bitrate.

tl;dr POUZIVEJTE CRF A NE BITRATE.  NEEXISTUJE OPTIMALNI BITRATE NA VSECHNY VIDEA VE VESMIRU.

Diky patri The_P za kontrolu ^^