Imagen OpenEXR (.exr)
Academy StandarOpenEXR (EXR) adalah format gambar high dynamic range (HDR) standar industri film dan efek visual (VFX), yang mendukung piksel floating-point setengah presisi (16-bit half) dan presisi penuh (32-bit float) di berbagai layer tak terbatas.
Periksa & Metadata
Sistem operasi dan penganalisis file mengidentifikasi file EXR dengan memeriksa urutan byte biner utama:
Tanda Tangan Header Tingkat-Byte (Magic Bytes)
Sistem operasi dan penganalisis file mengidentifikasi file EXR dengan memeriksa urutan byte biner utama:
SIGNATURE HEX (OFFSET 0):
76 2F 31 01REPRESENTASI ASCII: v/1.
Standardisasi: Academy Software Foundation (ASWF) Open Standard
Spesifikasi Teknis
| Arsitektur Wadah | Extensible chunk-based container supporting arbitrary channels, parts, and deep data layers |
| Kompresi | PIZ (wavelet), ZIP/ZIPS, RLE, B44/B44A, DWAA/DWAB (lossy DCT), and uncompressed |
| Endianness Byte | Little-Endian (Intel x86) |
| Ruang Warna | Linear ACEScg, ACES2065-1, Linear Rec.709, Arbitrary chromaticity coordinates |
| Saluran & Struktur | Arbitrary channel names (R, G, B, A, Z-depth, Normal, WorldPos, MotionVectors, Cryptomatte) |
| Dimensi Maks | Practically unlimited (supports tiled deep zoom and multi-gigapixel canvas bounds) |
| Transparansi | Full floating-point alpha channel and deep-compositing volumetric sample arrays |
| Streaming & Progresif | Scanline or tiled chunk streaming enables fast partial-frame reads and proxy rendering |
Matriks Perbandingan Teknis: EXR vs Pesaing
| Atribut Teknis | EXR (Saat Ini) | HDR | TIFF | PNG |
|---|---|---|---|---|
| Rentang Dinamis (Dynamic Range) | 16-bit half & 32-bit float linier | 8-bit shared exponent (RGBE) | Integer 8/16-bit atau 32-bit float | Integer standar 8-bit / 16-bit |
| Pass Multi-Saluran | Saluran & bagian bernama arbitrer tanpa batas | Hanya RGB | Dukungan layer terbatas | Hanya RGBA |
| Adopsi Industri | 100% standar universal VFX & 3D Hollywood | Pencahayaan 3D / panorama warisan (legacy) | Pra-cetak & fotografi | Standar web universal |
| Manajemen Warna | Integrasi bawaan ACES & OpenColorIO | Gamma / linier ad-hoc | Tag profil ICC | Tag sRGB / ICC |
Mode Kerusakan Umum & Panduan Pemulihan Hex
Gambar dirender sepenuhnya gelap atau terlalu terang (blown out) dengan bercak putih nuklir.
Penyebab Utama: Transformasi tampilan linier-ke-sRGB yang hilang atau penugasan ruang warna ACES yang salah.
Pemulihan: Terapkan transformasi kurva nada ACEScg atau Linear-to-sRGB di File2File HDR Viewer.
Analisis Keamanan & Vektor Serangan Parser
Parser OpenEXR berbasis chunk yang kompleks harus memvalidasi definisi saluran dan batas petak secara ketat untuk mencegah masalah keamanan memori.
Vektor Serangan yang Diketahui
- Integer overflow dalam perhitungan stride buffer multi-saluran di libopenexr.
- Pembacaan di luar batas heap (heap out-of-bounds read) selama dekompresi aliran terkompresi PIZ atau DWAA.
- Penolakan layanan (Denial of Service) melalui rekursi header chunk multi-bagian yang bersarang secara mendalam.
Praktik Terbaik Defensif:
Asal-Usul & Tonggak Sejarah
Keunggulan & Kelebihan Utama
- Dukungan bawaan untuk 16-bit half-float (FP16) dan 32-bit float (FP32) menjaga tingkat luminans ekstrem dari sinar matahari langsung hingga bayangan gelap.
- Arsitektur multi-saluran arbitrer merangkum semua pass render 3D (beauty, diffuse, specular, depth, cryptomatte) dalam satu file.
- Algoritma kompresi DWAA/DWAB dan PIZ terdepan di industri menghasilkan kompresi luar biasa tanpa kehilangan kualitas visual.
Keterbatasan Teknis & Kekurangan
- Ukuran file yang sangat besar saat menyimpan pass render multi-layer 4K/8K 32-bit yang tidak dikompresi.
- Beban CPU dan memori yang tinggi selama dekompresi multi-saluran di perangkat lunak konsumen.
- Memerlukan transformasi manajemen warna (ACES atau OCIO) agar dapat dirender dengan benar pada layar sRGB standar.
Fakta Teknis Menarik
- Industrial Light & Magic menciptakan tipe data floating-point 'half' 16-bit secara khusus untuk format OpenEXR.
- Empat magic bytes pertama dari setiap file EXR adalah 0x76 0x2F 0x31 0x01, yang diterjemahkan dalam kode ASCII menjadi 'v/1\x01'.
- OpenEXR mendukung 'Deep Data', di mana satu piksel menyimpan beberapa sampel warna dan kedalaman pada jarak yang berbeda melalui asap dan awan yang semi-transparan.
Pertanyaan Teknis yang Sering Diajukan
Mengapa OpenEXR menjadi standar industri untuk VFX Hollywood?
Karena format ini menyimpan nilai cahaya floating-point 16-bit dan 32-bit dengan rentang dinamis tak terbatas, pass render 3D multi-lapisan, dan informasi compositing mendalam yang diperlukan untuk efek visual yang fotorealistik.
Apa perbedaan antara half float dan float dalam EXR?
Half float menggunakan 16 bit per saluran warna, menawarkan 30 stop rentang dinamis dengan setengah ukuran file dari float 32-bit penuh, menjadikannya favorit industri untuk render kecantikan (beauty renders).
Bagaimana cara mengonversi EXR ke PNG atau JPG standar?
Anda dapat mengonversi file EXR ke gambar PNG atau JPG yang telah dipetakan warnanya (tone-mapped) menggunakan File2File.app langsung di dalam peramban web Anda.