Vykdymo kliento pusėje modelis
File2File veikia visiškai naršyklės smėlio dėžėje, naudojant šiuolaikinius žiniatinklio standartus:
- Dvejetainio srauto analizė: magiškųjų baitų (magic bytes) patvirtinimas užtikrina, kad failai atitinka numatytus konteinerio formatus prieš juos dekomoduojant.
- Atminties saugumas ir skaidymas: dideli failai apdorojami baitų srautuose, siekiant išlaikyti mažą atminties sąnaudų lygį ir išvengti naršyklės skirtuko strigimų.
- Tikslumo išlaikymas: formatų transkodatoriai teikia pirmenumą metaduomenų išsaugojimui (EXIF, ICC spalvų profiliams, dokumento struktūrai), kai tai suderinama su tiksliniais konteineriais.
Penkių etapų konvertavimo procesas
- 1. Priėmimas: failas gaunamas kliento pusėje per „nutempk ir numesk" (drag-and-drop) arba failų parinkiklį; jokių tinklo užklausų nesiunčiama.
- 2. Formato patikrinimas: tikrinami dvejetainiai magiškieji baitai ir konteinerio antraštės, siekiant užtikrinti formato vientisumą ir aptikti sugadintus failus.
- 3. Dekodavimas smėlio dėžėje: failas iškoduojamas izoliuotame „Web Worker" naudojant WebAssembly arba naršyklės vietinius dekoderius.
- 4. Srauto transformavimas: formatų transkodavimo varikliai iš naujo užkoduoja duomenis į tikslinį formatą, kur įmanoma išsaugodami EXIF metaduomenis ir spalvų profilius.
- 5. Laikinasis pakavimas: konvertuota išvestis supakuojama į laikiną naršyklės Blob failą momentiniam atsisiuntimui.
Nuolatinis kokybės užtikrinimas
Visi konvertavimo keliai yra kruopščiai automatiškai testuojami pagal standartinius testų rinkinius, užtikrinant pikselių tikslumą ir dokumento struktūros teisingumą.