Video 4: 3 má rozlišení 720×480

Snažil jsem se udělat nějaké úpravy a kódování videa. Mám takzvané SD video, které by mělo být údajně v 4:3 poměru stran. Ale místo 640x480 je to 720x480. Zajímavé je, že když hraji s přehrávačem médií, vidím 640x480 – nehraje se jako 720x480!

Co se děje ?! Jak je to možné?

Odpověď

525/60 digitalizované SD video podle Rec. 601 je skutečně 720 pixelů široký, 480 pixelů vysoký, včetně některých záslepek po stranách. Digitální ekvivalent 625/50 je 720×576. V obou případech je poměr stran rámečku 4: 3, to jednoduše znamená, že pixely nejsou čtvercové. Viz https://en.wikipedia.org/wiki/D-1_(Sony)

Aby toho nebylo málo, má pouze podmnožina rámce 4 : 3 proporce. Věřím, že pouze rozměry 704×480 (pro 525/60) a 704×576 (pro 625/50) mají poměr 4: 3. Diskuse naleznete zde: https://lurkertech.com/lg/video-systems/

Takže 480 pixelů má poměr 10/11, 576 pixelů je v poměru 59/54. Viz také zde: https://en.wikipedia.org/wiki/Pixel_aspect_ratio A nezapomeňte, že formát 480 řádků i 576 řádků lze také širokoúhlá obrazovka (16: 9), která má stejný počet pixelů na řádek! Navíc s čísly jako 59/54 není snadné pracovat. To vše způsobilo, že pro poměr stran 576 řádků byl zvolen poměr stran pixelu 12/11 pro poměr stran 4: 3 a 16/11 pro poměr 16: 9.

Čtvercové pixely se staly normou Věřím, že počínaje grafickým adaptérem VGA, a poté od specifikací HD pro video v rozlišení 720 a 1080. Mimochodem, existují některé formáty HD, které zaznamenávají 1440×1080 nebo 960×720, ale přesto mají poměr stran 16: 9, mají také čtvercové pixely. Čtvercové pixely jsou relativně nedávný vývoj a nelze je očekávat automaticky.

Komentáře

  • Děkujeme za popis. ' hraji si s FFmpeg nějaké experimenty (abych zjistil, zda mají tytéž délky střihu). Jelikož je přehrávání stejné, měl bych předpokládat, že ffmpeg jsou 640×480 a 720×480 stejné ?!
  • ffmpeg, (ne ffplay) nikdy nezmění měřítka videí na poměr stran zobrazení, takže filtry a kodéry budou ve vašem případě fungovat pouze s rastrovými daty, která jsou 720 x 480.
  • pixely bez čtverce by pravděpodobně vyžadovaly opětovné vzorkování videa, což je nejhorší druh transkódování je lidstvu známé, aby to napravilo.

Odpověď

Existují 2 různé věci:

  • Skutečná šířka a výška snímků (v pixelech) – viz zelená část následujícího obrázku.
  • zobrazená šířka a výška (během přehrávání) – viz modrá část stejného obrázku.

Problém nastal ve starých špatné dny, kdy bylo rozlišení zařízení (počet pixelů v obraze) velmi nízké, ale požadovaný poměr šířky a výšky pro přehrávání byl 4: 3.

Řešení (v v těchto dnech) byl vynález ne-čtvercových pixelů.


Předpokládejme (teoreticky) velmi nízké rozměry:

  • požadováno: 4 x 3 pixely (i. E. 12 pixelů) na snímek.
  • reálné možné (za přijatelnou cenu): 3 x 3 (tj. 9 pixelů).

Řešením byly jiné než čtvercové pixely s poměr stran pixelu ( PAR ) 4: 3 , jako zde:

zde zadejte popis obrázku

Takže poměr stran pixelu ( PAR ) je poměr velikostí každého jednotlivého pixelu:

Každý modrý pixely v našem obrázku mají PAR 4: 3 a každý oranžový a každý zelený má PAR 1: 1.

Nyní se celý náš (modrý) obrázek zobrazuje správně, jak jsme chtěli – např. G. as 12 cm x 9 cm – so its Display Aspect Ratio ( DAR ) is 12: 9 nebo 4: 3.

Navzdory tomu se ukládá jako 3 x 3 pixely – takže poměr stran úložiště ( SAR ) je 3 pixely: 3 pixely, nebo 1: 1.

Tip:

  • Poměr stran pixelu ( PAR ) je mikrometry: mikrometry
  • poměr stran zobrazení ( DAR ) je centimetry: centimetry
  • poměr stran úložiště ( SAR ) je pixely: pixely

V důsledku toho je vztah mezi tyto 3 hodnoty jsou

                          DAR = SAR × PAR

Důležitá poznámka:

Někdy je PAR (Pixel Aspect Ratio) s názvem Sample Aspect Ratio jako ve FFmpeg . Zkratka pro ni je potom SAR , což je velmi matoucí, protože – jak jsme viděli – je to také zkratka pro Storage Aspect ratio.


Hlavní problém:

V dnešní době mají všechna zařízení pixelový poměr stran 1: 1 (čtvercové pixely) a mnoho přehrávačů médií, hlavně pro malá zařízení (mobilní telefony, tablety), se na to spoléhá a plně ignoruje hodnotu DAR uloženou v video streamy.

Takže se můžete setkat s situací, kdy je stejné video (vyrobené ze všech zdrojů) přehráváno správně ve vašem stolním nebo přenosném počítači, ale nesprávně (zúženo) ve vašem smartphonu. Nebo dokonce na jiný přehrávač médií ve stejném počítači nebo zařízení.

V našem příkladu mohou být rámečky nesprávně zobrazeny jako čtverec (viz zelená část obrázku výše).


Řešení tohoto problému ve FFmpeg:

  • změna velikosti problematického videa, pak
  • s a SAR z toho 1 a
  • DAR má velmi pravděpodobně správnou hodnotu, ale můžete si ji pro jistotu nastavit.

V našem (nereálném) příkladu může použít filtergraph

-vf scale=4:3,setsar=1,setdar=w/h 

, kde w je počet (jen zmenšen) rámců v pixelech, h je jejich výška. FFmpeg automaticky nahradí příslušné hodnoty.

Výsledkem bude oranžová část výše uvedeného obrázku.


Ve vašem případě má vaše video (z vašich informací)

  • DAR 4: 3 (640: 480),
  • SAR (poměr stran úložiště) 720: 480 = 3: 2 a – následně –
  • PAR = DAR / SAR = 8: 9. (V terminologii FFmpeg je to SAR – Sample Aspect Ratio).

Takže abyste se vyhnuli problémům s přehrávači médií, kteří ignorují hodnotu DAR (a přehrajete ji v poměru 720: 480, můžete zvážit převeďte jej pomocí příkazu

ffmpeg -i your_input_file -vf -scale=640:480,setsar=1 -c:a copy your_output_file 

Problémy s obrázky s jinými než čtvercovými pixely:

U obrázků je situace ještě horší:

Téměř všichni uživatelé, kteří prohlížejí / editují obrázky a internetové prohlížeče, jednoduše obrázky ignorují SAR a DAR za předpokladu, že všechny obrázky po celém světě mají SAR 1: 1.

Čestná výjimka je (zajímavě) a překvapivě dost) Prohlížeč fotografií Microsoft Windows, který zobrazuje všechny obrázky opravené ctly.

Můžete se o tom přesvědčit e. G. podle Testu pixelového poměru stran pixelu – všech 9 obrázků by se mělo ve vašem prohlížeči zobrazit správně, ale – s největší pravděpodobností – nejsou.

Komentáře

  • dobře popsané. Díky! Oba jsou správné. Jakmile se počet ups zvýší, aktualizuje se nejlepší odpověď.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *