-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update library to use definitions of ultrahdr_api everywhere #176
Conversation
76efcf6
to
be54923
Compare
Thank you for the change, but we may need to hold on for a little bit. jpegr.h layer is currently used by Android, and this change will also need change in Android and it's out of scope now. We will hold this change for a while and land it with v2 version. |
I would recommend separate this change land the bug fixing part now, and hold the API change part. Let me know what you think. Thank you! |
This change does not effect android builds. The android builds works normally. It seems recent sample app changes are causing build issues in android. These were corrected in this commit.
Some fixes work with the changes made. I will try to seperate independent one's and give a pull request. |
OK Thanks, I'll take a further look |
6efe7b8
to
173a942
Compare
OK then we are having two interfaces of the public APIs. I'm not against with this move, but I'm feeling this is not an urgent need. And additionally this change is fairly too large and I would still recommend separating this change and we'll merge the bug fixing part first. Let me know what you think. thank you! |
As the interface is from ultrahdr_api.h, there is only one. But if we were to include jpegr.h directly then as you have rightly pointed out, there are aliases for each api.
Certain fixes that are independent of this change, i have moved them out and issued pull requests. #178 #179 #180
It also addresses this. Some portions of this change are not at all a priority and can be marked as good to have and some other parts are helpful towards addressing known issues. |
OK my only concern of this change is about having aliases at jpegr.cpp layer, but indeed this change makes the code unified and clean, and has benefit of simplifying 444 and 422 color format. I've approved this change. Thank you for work! |
- Add error checks for input params of newly added setter functions - update documentation of sample app for newly added options - fix sample app build issues in aosp - communicate error correctly if write to output has failed - update gainmap scale factor if its too large Test: ./ultrahdr_unit_test
This is a major change but maintains bitexactness with previous commit. This change unifies legacy structure definitions with definitions of ultrahdr_api.h. This helps for better extensibility for new features and avoid redundancy. Legacy structures are moved to ultrahdr.h. These are deprecated and only retained for backward compatibility. Briefly, - unify ultrahdr_color_gamut with uhdr_color_gamut_t - unify ultrahdr_transfer_function with uhdr_color_transfer_t - unify ultrahdr_metadata_struct with uhdr_gainmap_metadata_t - unify jpegr_uncompressed_struct with uhdr_raw_image_t - unify jpegr_compressed_struct with uhdr_compressed_image_t - unify jpegr_exif_struct with uhdr_mem_block_t - unify status_t with uhdr_error_info_t - Deprecate ultrahdr_output_format - Added methods to Jpeg*Helper to simplify data translation between helper and its users - Improved error propogation across library Bug fix, - For images with multi channel gainmap, decoded gainmap is not copied completely for getter functions. This is fixed. - Add support for tonemapping linear transfer inputs - Fixes oss-fuzz: 69287 Test: ./ultrahdr_unit_test Test: ./ultrahdr_enc_fuzzer Test: ./ultrahdr_dec_fuzzer
This is a major change but maintains bitexactness with previous commit. This change unifies legacy structure definitions with definitions of ultrahdr_api.h. This helps for better extensibility for new features and avoid redundancy.
Legacy structures are moved to ultrahdr.h. These are deprecated and only retained for backward compatibility.
Briefly,
and its users
Bug fix,
completely for getter functions. This is fixed.
Test: ./ultrahdr_unit_test
Test: ./ultrahdr_dec_fuzzer
Test: ./ultrahdr_enc_fuzzer