EDR is Apple's High Dynamic Range representation and rendering pipeline.

Posts under EDR tag

23 Posts

Post

Replies

Boosts

Views

Activity

UI looks terriable when playing HDR video
Problem: When playing HDR video, the screen is brighter, the UI seems not only brighter but also darker! It makes the UI blurred, influence user experience! I also tried system photo app, it also has this bad case. I take photos to show you what the bad case looks like. SDR: HDR: Expect: The UI’s brightness fit HDR video, just like playing SDR video.
2
1
1.5k
Sep ’22
EDR support for images
More and more iOS devices can capture content with high/extended dynamic range (HDR/EDR) now, and even more devices have screens that can display that content properly. Apple also gave us developers the means to correctly display and process this EDR content in our apps on macOS and now also on iOS 16. There are a lot of EDR-related sessions from WWDC 2021 and 2022. However, most of them focus on HDR video but not images—even though Camera captures HDR images by default on many devices. Interestingly, those HDR images seem to use a proprietary format that relies on EXIF metadata and an embedded HDR gain map image for displaying the HDR effect in Photos. Some observations: Only Photos will display those metadata-driven HDR images in their proper brightness range. Files, for instance, does not. Photos will not display other HDR formats like OpenEXR or HEIC with BT.2100-PQ color space in their proper brightness. When using the PHPicker, it will even automatically tone-map the EDR values of OpenEXR images to SDR. The only way to load those images is to request the original image via PHAsset, which requires photo library access. And here comes my main point: There is no API that enables us developers to load iPhone HDR images (with metadata and gain map) that will decode image + metadata into EDR pixel values. That means we cannot display and edit those images in our app the same way as Photos. There are ways to extract and embed the HDR gain maps from/into images using Image I/O APIs. But we don't know the algorithm used to blend the gain map with the image's SDR pixel values to get the EDR result. It would be very helpful to know how decoding and encoding from SDR + gain map to HDR and back works. Alternatively (or in addition), it would be great if common image loading APIs like Image I/O and Core Image would provide APIs to load those images into an EDR image representation (16-bit float linear sRGB with extended values, for example) and write EDR images into SDR + gain map images so that they are correctly displayed in Photos. Thanks for your consideration! We really want to support HDR content in our image editing apps, but without the proper APIs, we can only guess how image HDR works on iOS.
2
8
2.4k
Sep ’22
Encoding JPG with value > 1.0 + CATileLayer with EDR
Hi, great to have more options about EDR on iOS, useful session. Q1: There is a related feature that we'd like to replicate in our photo app Hydra 2. When shooting a JPG with the built-in camera app and showing it in Photos, bright area go beyond the 1.0 SDR brightness level. How can we replicate this behavior (we have the > 1.0 data internally in our app) to generate a JPG than will go > 1.0 in the Photos app? (we generate the JPG ourselves for various reasons/features, it is not made by AVFoundation APIs). Q2: we use CATiledLayer in some part of our app, which is limited to SDR content (1.0) in iOS 15. Does it or will it get EDR capability in iOS 16 for HDR content, or is a CAMetalLayer based reimplementation still the recommendation? Thank you. Raphael
0
1
1.6k
Jun ’22
UI looks terriable when playing HDR video
Problem: When playing HDR video, the screen is brighter, the UI seems not only brighter but also darker! It makes the UI blurred, influence user experience! I also tried system photo app, it also has this bad case. I take photos to show you what the bad case looks like. SDR: HDR: Expect: The UI’s brightness fit HDR video, just like playing SDR video.
Replies
2
Boosts
1
Views
1.5k
Activity
Sep ’22
EDR support for images
More and more iOS devices can capture content with high/extended dynamic range (HDR/EDR) now, and even more devices have screens that can display that content properly. Apple also gave us developers the means to correctly display and process this EDR content in our apps on macOS and now also on iOS 16. There are a lot of EDR-related sessions from WWDC 2021 and 2022. However, most of them focus on HDR video but not images—even though Camera captures HDR images by default on many devices. Interestingly, those HDR images seem to use a proprietary format that relies on EXIF metadata and an embedded HDR gain map image for displaying the HDR effect in Photos. Some observations: Only Photos will display those metadata-driven HDR images in their proper brightness range. Files, for instance, does not. Photos will not display other HDR formats like OpenEXR or HEIC with BT.2100-PQ color space in their proper brightness. When using the PHPicker, it will even automatically tone-map the EDR values of OpenEXR images to SDR. The only way to load those images is to request the original image via PHAsset, which requires photo library access. And here comes my main point: There is no API that enables us developers to load iPhone HDR images (with metadata and gain map) that will decode image + metadata into EDR pixel values. That means we cannot display and edit those images in our app the same way as Photos. There are ways to extract and embed the HDR gain maps from/into images using Image I/O APIs. But we don't know the algorithm used to blend the gain map with the image's SDR pixel values to get the EDR result. It would be very helpful to know how decoding and encoding from SDR + gain map to HDR and back works. Alternatively (or in addition), it would be great if common image loading APIs like Image I/O and Core Image would provide APIs to load those images into an EDR image representation (16-bit float linear sRGB with extended values, for example) and write EDR images into SDR + gain map images so that they are correctly displayed in Photos. Thanks for your consideration! We really want to support HDR content in our image editing apps, but without the proper APIs, we can only guess how image HDR works on iOS.
Replies
2
Boosts
8
Views
2.4k
Activity
Sep ’22
Encoding JPG with value > 1.0 + CATileLayer with EDR
Hi, great to have more options about EDR on iOS, useful session. Q1: There is a related feature that we'd like to replicate in our photo app Hydra 2. When shooting a JPG with the built-in camera app and showing it in Photos, bright area go beyond the 1.0 SDR brightness level. How can we replicate this behavior (we have the > 1.0 data internally in our app) to generate a JPG than will go > 1.0 in the Photos app? (we generate the JPG ourselves for various reasons/features, it is not made by AVFoundation APIs). Q2: we use CATiledLayer in some part of our app, which is limited to SDR content (1.0) in iOS 15. Does it or will it get EDR capability in iOS 16 for HDR content, or is a CAMetalLayer based reimplementation still the recommendation? Thank you. Raphael
Replies
0
Boosts
1
Views
1.6k
Activity
Jun ’22