-
Notifications
You must be signed in to change notification settings - Fork 624
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
Add HTJ2K Compressor #1883
Draft
palemieux
wants to merge
13
commits into
AcademySoftwareFoundation:main
Choose a base branch
from
sandflow:feature/add-ht-support-rebase
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Add HTJ2K Compressor #1883
Changes from all commits
Commits
Show all changes
13 commits
Select commit
Hold shift + click to select a range
05351fc
Add HT support
palemieux 0fbcbfb
WIP
palemieux 83f2bd4
Compiles again
palemieux 26cf43c
Compiles
palemieux 0d77e3f
Finish adding OJPH
palemieux b4206bd
Compiles with KDU
palemieux 4ea196d
Passes test
palemieux 1522779
Fixing bugs
palemieux 6b3dbe8
Add NLT support
palemieux c3e0ce7
Add OpenJPH fallback
palemieux de4e1cc
fix Cmake/compile without KDU, enable exrconv, add docker
michaeldsmith 45efe7c
Add support for 32-bit and sub-sampling
palemieux cd664a2
Remove validate install steps
palemieux File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
# docker build --rm -f Dockerfile -t openexr-ht:latest . | ||
# docker run -it --rm -v C:\\temp:/tmp/ openexr-ht:latest | ||
FROM ubuntu:jammy | ||
|
||
RUN apt-get update | ||
|
||
# disable interactive install | ||
ENV DEBIAN_FRONTEND noninteractive | ||
|
||
# install developement tools | ||
RUN apt-get -y install cmake | ||
RUN apt-get -y install g++ | ||
RUN apt-get -y install git | ||
RUN apt-get -y install unzip | ||
RUN apt-get -y install libnuma-dev | ||
RUN apt-get -y install python3 | ||
|
||
# install developement debugging tools | ||
RUN apt-get -y install valgrind | ||
|
||
# build OpenEXR | ||
WORKDIR /usr/src/OpenEXR | ||
COPY . . | ||
WORKDIR /usr/src/OpenEXR/build | ||
RUN cmake .. | ||
RUN make | ||
RUN make install | ||
|
||
# finalize docker environment | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
# run this docker file outside the openexr-ht folder so Kakadu SDK ZIP is not included in the git repo | ||
# docker build --rm -f ./openexr-ht/Dockerfile_KDU -t openexr-ht-kdu:latest . | ||
# docker run -it --rm -v C:\\temp:/tmp/ openexr-ht-kdu:latest | ||
FROM ubuntu:jammy | ||
|
||
RUN apt-get update | ||
|
||
# disable interactive install | ||
ENV DEBIAN_FRONTEND noninteractive | ||
|
||
# install developement tools | ||
RUN apt-get -y install cmake | ||
RUN apt-get -y install g++ | ||
RUN apt-get -y install git | ||
RUN apt-get -y install unzip | ||
RUN apt-get -y install libnuma-dev | ||
RUN apt-get -y install python3 | ||
|
||
# install developement debugging tools | ||
RUN apt-get -y install valgrind | ||
|
||
# set Kakadu distribution version and unique serial number | ||
ARG KDU_SOURCE_NAME=v8_4_1-00462N | ||
# set path to location of source zip, in this case its here ./v8_2_1-00462N.zip | ||
ARG KDU_SOURCE_ZIP_DIRECTORY=./ | ||
WORKDIR /usr/src/kakadu | ||
COPY $KDU_SOURCE_ZIP_DIRECTORY/$KDU_SOURCE_NAME.zip $KDU_SOURCE_NAME.zip | ||
RUN unzip $KDU_SOURCE_NAME.zip | ||
RUN rm -f $KDU_SOURCE_NAME.zip | ||
# enable HTJ2K | ||
WORKDIR /usr/src/kakadu/$KDU_SOURCE_NAME/ | ||
RUN mv srclib_ht srclib_ht_noopt; cp -r altlib_ht_opt srclib_ht | ||
# compile Kakadu SDK and demo apps with HTJ2K enabled (#define FBC_ENABLED) | ||
WORKDIR /usr/src/kakadu/$KDU_SOURCE_NAME/make | ||
RUN make CXXFLAGS=-DFBC_ENABLED -f Makefile-Linux-x86-64-gcc all_but_jni | ||
# set environment variables | ||
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/src/kakadu/$KDU_SOURCE_NAME/lib/Linux-x86-64-gcc | ||
ENV PATH=$PATH:/usr/src/kakadu/$KDU_SOURCE_NAME/bin/Linux-x86-64-gcc | ||
ENV KDU_INCLUDE_DIR=/usr/src/kakadu/$KDU_SOURCE_NAME/managed/all_includes | ||
ENV KDU_LIBRARY=/usr/src/kakadu/$KDU_SOURCE_NAME/lib/Linux-x86-64-gcc/libkdu_a84R.so | ||
|
||
# build OpenEXR | ||
WORKDIR /usr/src/OpenEXR | ||
COPY ./openexr-ht . | ||
WORKDIR /usr/src/OpenEXR/build | ||
RUN cmake .. -DKDU_INCLUDE_DIR=$KDU_INCLUDE_DIR -DKDU_LIBRARY=$KDU_LIBRARY | ||
RUN make | ||
RUN make install | ||
|
||
# finalize docker environment | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# SPDX-License-Identifier: BSD-3-Clause | ||
# Copyright Contributors to the OpenEXR Project. | ||
|
||
add_executable(exrconv main.cpp) | ||
target_link_libraries(exrconv OpenEXR::OpenEXR) | ||
set_target_properties(exrconv PROPERTIES | ||
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" | ||
) | ||
|
||
if(OPENEXR_INSTALL_TOOLS) | ||
install(TARGETS exrconv DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
endif() | ||
if(WIN32 AND (BUILD_SHARED_LIBS OR OPENEXR_BUILD_BOTH_STATIC_SHARED)) | ||
target_compile_definitions(exrconv PRIVATE OPENEXR_DLL) | ||
endif() |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you really mean for these to be commented out? I think they're leading to a failure with the CI validate step.