Page 1 of 1
PictView: podpora HD Photo obrázků (Windows Media Photo)
Posted: 27 Mar 2009, 16:46
by zarevak
Dobrý den,
doplňte prosím podporu pro
HD Photo obrázky do PictView
Virtual Earth 3D používá HD Photo pro výškové mapy a pro
high resolution textury (jenom město Tampa, Florida (
ukázka - po přiblížení přečtete i texty na modré ceduli)). Rád bych nabídnul extrakci těchti textur v mém
UnVE3D pluginu, ale uživatel si je pak v Salamanderu stejně neprohlídne...
HD Photo je využito v
XPS dokumentech...
Informace:
-
HD Photo Specification
-
HD Photo Device Porting Kit - obsahuje referenční dekodér a kodér v ANSI C

Posted: 27 Mar 2009, 17:24
by Jan Rysavy
To vypadá na docela komplikovanou záležitost. Jakou velikost má binárně referenční dekodér?
Posted: 27 Mar 2009, 17:58
by zarevak
Při prvním pohledu na seznam podporoaných formátů bitmap se mi trochu zatočila hlava, ale nakonec těch "Basic" je jen pár:
Barevné:
- PixelFormat24bppRGB
- PixelFormat24bppBGR
- PixelFormat48bppRGB
- PixelFormat48bppRGBFixedPoint
Šedé:
- PixelFormat8bppGray
- PixelFormat16bppGray
- PixelFormat16bppGrayFixedPoint - toto používá VE3D pro uložení výškových map...
Advanced:
- PixelFormat32bppBGRA - toto používá VE3D pro uložení HighRes textur
- PixelFormat16bppBGR565 - toto používá VE3D 4.0 pro uložení textur domů (konvertuje se automaticky do DXT1, takže nižší počet bitů nevadí)
- ...
Nejhorší je samotný dekodér, kolik jakých kanálu myslím už je celkem jedno.
Zkompiloval jsem ten balíček a jak WMPEncApp.exe tak WMPDecApp.exe jsou 276KB velké a mají závislost jen na Kernel32.dll a podporují všechny odrůdy HD Photo.
Jednoduchým řešením by bylo zkompilovat tuto referenčí implementaci jako (statickou) knihovnu a použít ji z PictView. Tak jsou také ty dva programy napsány - většina zdrojáku těchto programů je ošetření vstupu - vlastní práce s knihovnou a dekódování je na cca 150 řádek.
Posted: 27 Mar 2009, 18:06
by zarevak
Tak si říkám, že mne za ten nápad nebudete mít rádi - přece jen kvůli jednomu formátu zvětšovat PictView o 50% je přehnané
Co takhle, kdyby mohl jiný Salamanderův plugin data načíst a poslat je v nějakém standardizovaném formátu do PictView, podobně jako je teď možné využít Internal Viewer na výstup textu?

Lidé by pak psali pluginy pro různé obskurní formáty, ale UI by zůstávalo stále stejné
HD Photo plugin by se pak stal dodatečným pluginem a byl využit jen lidmi, kteří ho potřebují

Posted: 27 Mar 2009, 18:08
by Jan Rysavy
Vzhledem k tomu, že celý PV engine (pvw32cnv.dll) má dneska 265KB mi to nepřipadá jako dobrej nápad.
Kdyby šlo o podporu formátu, o který si zde žádají desítky uživatelů, díval bych se na to jinak. Ale podpořit formát, o kterém dnes slyším prvně v životě za cenu, že velikost jádra PV vyskočí na dvojnásobek?
To už bych viděl lépe investovaný čas do otevření PV pro vstupní (případně výstupní) filtry. Ostatně ani Irfan neumí JPG2000 v základní programu, je potřeba přidat plugin.
Edit: to jsme se pěkně shodli
