Skip to content

Commit

Permalink
Merge branch 'main' into python_313_wheels
Browse files Browse the repository at this point in the history
  • Loading branch information
remia authored Sep 24, 2024
2 parents baa0213 + 145bce2 commit bcc720f
Show file tree
Hide file tree
Showing 13 changed files with 114 additions and 62 deletions.
90 changes: 45 additions & 45 deletions .github/workflows/ci_workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
# ---------------------------------------------------------------------------

linux:
name: 'Linux CentOS 7 VFX CY${{ matrix.vfx-cy }}
name: 'Linux VFX CY${{ matrix.vfx-cy }}
<${{ matrix.compiler-desc }}
config=${{ matrix.build-type }},
shared=${{ matrix.build-shared }},
Expand All @@ -52,7 +52,7 @@ jobs:
if: |
github.event_name == 'push' ||
github.event.pull_request.head.repo.full_name != github.repository
# GH-hosted VM. The build runs in CentOS 7 'container' defined below.
# GH-hosted VM. The build runs in ASWF 'container' defined below.
runs-on: ubuntu-latest
container:
# DockerHub: https://hub.docker.com/u/aswf
Expand All @@ -64,7 +64,7 @@ jobs:
build: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
include:
# -------------------------------------------------------------------
# VFX CY2023 (Python 3.10)
# VFX CY2024 (Python 3.11)
# -------------------------------------------------------------------
- build: 12
build-type: Debug
Expand All @@ -77,7 +77,7 @@ jobs:
cxx-compiler: clang++
cc-compiler: clang
compiler-desc: Clang
vfx-cy: 2023
vfx-cy: 2024
install-ext-packages: MISSING
- build: 11
build-type: Release
Expand All @@ -90,7 +90,7 @@ jobs:
cxx-compiler: g++
cc-compiler: gcc
compiler-desc: GCC
vfx-cy: 2023
vfx-cy: 2024
install-ext-packages: ALL
- build: 10
build-type: Release
Expand All @@ -103,10 +103,10 @@ jobs:
cxx-compiler: g++
cc-compiler: gcc
compiler-desc: GCC
vfx-cy: 2023
vfx-cy: 2024
install-ext-packages: ALL
# -------------------------------------------------------------------
# VFX CY2022 (Python 3.9)
# VFX CY2023 (Python 3.10)
# -------------------------------------------------------------------
- build: 9
build-type: Debug
Expand All @@ -119,8 +119,8 @@ jobs:
cxx-compiler: clang++
cc-compiler: clang
compiler-desc: Clang
vfx-cy: 2022
install-ext-packages: ALL
vfx-cy: 2023
install-ext-packages: MISSING
- build: 8
build-type: Release
build-shared: 'ON'
Expand All @@ -132,8 +132,8 @@ jobs:
cxx-compiler: g++
cc-compiler: gcc
compiler-desc: GCC
vfx-cy: 2022
install-ext-packages: MISSING
vfx-cy: 2023
install-ext-packages: ALL
- build: 7
build-type: Release
build-shared: 'OFF'
Expand All @@ -145,40 +145,40 @@ jobs:
cxx-compiler: g++
cc-compiler: gcc
compiler-desc: GCC
vfx-cy: 2022
vfx-cy: 2023
install-ext-packages: ALL
# -------------------------------------------------------------------
# VFX CY2021 (Python 3.7)
# VFX CY2022 (Python 3.9)
# -------------------------------------------------------------------
- build: 6
build-type: Release
build-type: Debug
build-shared: 'ON'
build-docs: 'OFF'
build-openfx: 'OFF'
build-openfx: 'ON'
use-simd: 'ON'
use-oiio: 'ON'
cxx-standard: 17
cxx-compiler: clang++
cc-compiler: clang
compiler-desc: Clang
vfx-cy: 2021
install-ext-packages: MISSING
vfx-cy: 2022
install-ext-packages: ALL
- build: 5
build-type: Release
build-shared: 'OFF'
build-docs: 'OFF'
build-shared: 'ON'
build-docs: 'ON'
build-openfx: 'ON'
use-simd: 'OFF'
use-oiio: 'OFF'
cxx-standard: 14
cxx-compiler: clang++
cc-compiler: clang
compiler-desc: Clang
vfx-cy: 2021
install-ext-packages: ALL
cxx-standard: 17
cxx-compiler: g++
cc-compiler: gcc
compiler-desc: GCC
vfx-cy: 2022
install-ext-packages: MISSING
- build: 4
build-type: Debug
build-shared: 'ON'
build-type: Release
build-shared: 'OFF'
build-docs: 'OFF'
build-openfx: 'OFF'
use-simd: 'ON'
Expand All @@ -187,39 +187,39 @@ jobs:
cxx-compiler: g++
cc-compiler: gcc
compiler-desc: GCC
vfx-cy: 2021
vfx-cy: 2022
install-ext-packages: ALL
# -------------------------------------------------------------------
# VFX CY2020 (Python 3.7)
# VFX CY2021 (Python 3.7)
# -------------------------------------------------------------------
- build: 3
build-type: Release
build-shared: 'ON'
build-docs: 'OFF'
build-openfx: 'ON'
use-simd: 'OFF'
use-oiio: 'OFF'
cxx-standard: 14
build-openfx: 'OFF'
use-simd: 'ON'
use-oiio: 'ON'
cxx-standard: 17
cxx-compiler: clang++
cc-compiler: clang
compiler-desc: Clang
vfx-cy: 2020
vfx-cy: 2021
install-ext-packages: MISSING
- build: 2
build-type: Debug
build-type: Release
build-shared: 'OFF'
build-docs: 'OFF'
build-openfx: 'ON'
use-simd: 'ON'
use-oiio: 'ON'
use-simd: 'OFF'
use-oiio: 'OFF'
cxx-standard: 14
cxx-compiler: g++
cc-compiler: gcc
compiler-desc: GCC
vfx-cy: 2020
cxx-compiler: clang++
cc-compiler: clang
compiler-desc: Clang
vfx-cy: 2021
install-ext-packages: ALL
- build: 1
build-type: Release
build-type: Debug
build-shared: 'ON'
build-docs: 'OFF'
build-openfx: 'OFF'
Expand All @@ -229,7 +229,7 @@ jobs:
cxx-compiler: g++
cc-compiler: gcc
compiler-desc: GCC
vfx-cy: 2020
vfx-cy: 2021
install-ext-packages: ALL
env:
CXX: ${{ matrix.cxx-compiler }}
Expand Down Expand Up @@ -517,11 +517,11 @@ jobs:
python-version: '3.11'
steps:
- name: Setup Python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Install docs env
run: share/ci/scripts/macos/install_docs_env.sh
if: matrix.build-docs == 'ON'
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
###############################################################################
# CMake definition.

cmake_minimum_required(VERSION 3.13)
cmake_minimum_required(VERSION 3.14)

set(CMAKE_MODULE_PATH
${CMAKE_MODULE_PATH}
Expand Down
10 changes: 10 additions & 0 deletions docs/guides/using_ocio/compatible_software.rst
Original file line number Diff line number Diff line change
Expand Up @@ -398,6 +398,16 @@ Documentation:
- `Color Management <https://docs.substance3d.com/sddoc/color-management-188973971.html>`__


TouchDesigner (Derivative)
**************************

Website: `<https://derivative.ca/>`__

Documentation:

- `OpenColorIO TOP <https://derivative.ca/UserGuide/OpenColorIO_TOP/>`__


Unreal Engine (Epic Games)
**************************

Expand Down
2 changes: 1 addition & 1 deletion docs/quick_start/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ items manually:
Required components:

- C++ 11-17 compiler (gcc, clang, msvc)
- CMake >= 3.13
- CMake >= 3.14
- \*Expat >= 2.4.1 (XML parser for CDL/CLF/CTF)
- \*yaml-cpp >= 0.7.0 (YAML parser for Configs)
- \*Imath >= 3.0 (for half domain LUTs)
Expand Down
7 changes: 7 additions & 0 deletions docs/site/homepage/data/en/supported_apps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,13 @@ supported_apps:
content : Version 2019.3 and up.
link : "https://www.substance3d.com/products/substance-designer/"

# portfolio item loop
- name : TouchDesigner
image : images/supported_apps/touchdesigner.png
categories : ["2D", "3D", "Animation", "Compositing", "Editing", "Lighting", "Playback", "Render", "Simulation", "Texture", "Tracking"]
content : Native support.
link : "http://www.derivative.ca/"

# portfolio item loop
- name : Unreal Engine
image : images/supported_apps/unreal.png
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
requires = [
"setuptools>=42",
"wheel",
"cmake>=3.13",
"cmake>=3.14",
"ninja; sys_platform != 'win32' and platform_machine != 'arm64'",
# Documentation requirements (see docs/requirements.txt for details)
"urllib3<2",
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ def cmake_find_package(package_name):
cmakelist_path = os.path.join(tmpdir, "CMakeLists.txt")
with open(cmakelist_path, "w") as f:
f.write("""
cmake_minimum_required(VERSION 3.13)
cmake_minimum_required(VERSION 3.14)
project(test LANGUAGES CXX)
find_package({} REQUIRED)
Expand Down
4 changes: 2 additions & 2 deletions share/ci/scripts/macos/install_doxygen.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ set -ex
DOXYGEN_VERSION="$1"

if [ "$DOXYGEN_VERSION" == "latest" ]; then
brew install doxygen
brew install --quiet --formula doxygen
else
brew install doxygen@${DOXYGEN_VERSION}
brew install --quiet --formula doxygen@${DOXYGEN_VERSION}
fi
2 changes: 1 addition & 1 deletion share/cmake/modules/install/Installsse2neon.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ FetchContent_Declare(sse2neon
FetchContent_GetProperties(sse2neon)

if(NOT sse2neon_POPULATED)
FetchContent_Populate(sse2neon)
FetchContent_MakeAvailable(sse2neon)

set(_EXT_DIST_INCLUDE "${CMAKE_BINARY_DIR}/ext/dist/${CMAKE_INSTALL_INCLUDEDIR}")
file(COPY "${sse2neon_SOURCE_DIR}/sse2neon.h" DESTINATION "${_EXT_DIST_INCLUDE}/sse2neon")
Expand Down
2 changes: 1 addition & 1 deletion src/OpenColorIO/Config.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -755,7 +755,7 @@ class Config::Impl
std::ostringstream os;
os << "Config failed view validation. The display '" << display << "' ";
os << "contains a shared view '" << (*sharedViewIt).m_name;
os << "that refers to a color space, '" << display << "', ";
os << "' that refers to a color space, '" << display << "', ";
os << "that is not a display-referred color space.";
m_validationtext = os.str();
throw Exception(m_validationtext.c_str());
Expand Down
51 changes: 43 additions & 8 deletions src/apps/ocioconvert/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,8 @@ int main(int argc, const char **argv)
std::vector<std::string> intAttrs;
std::vector<std::string> stringAttrs;

std::string outputDepth;

bool usegpu = false;
bool usegpuLegacy = false;
bool outputgpuInfo = false;
Expand Down Expand Up @@ -84,6 +86,7 @@ int main(int argc, const char **argv)
"--help", &help, "Display the help and exit",
"-v" , &verbose, "Display general information",
"<SEPARATOR>", "\nOpenImageIO or OpenEXR options:",
"--bitdepth %s", &outputDepth, "Output image bitdepth",
"--float-attribute %L", &floatAttrs, "\"name=float\" pair defining OIIO float attribute "
"for outputimage",
"--int-attribute %L", &intAttrs, "\"name=int\" pair defining an int attribute "
Expand Down Expand Up @@ -115,6 +118,31 @@ int main(int argc, const char **argv)
}
#endif // OCIO_GPU_ENABLED

OCIO::BitDepth userOutputBitDepth = OCIO::BIT_DEPTH_UNKNOWN;
if (!outputDepth.empty())
{
if (outputDepth == "uint8")
{
userOutputBitDepth = OCIO::BIT_DEPTH_UINT8;
}
else if (outputDepth == "uint16")
{
userOutputBitDepth = OCIO::BIT_DEPTH_UINT16;
}
else if (outputDepth == "half")
{
userOutputBitDepth = OCIO::BIT_DEPTH_F16;
}
else if (outputDepth == "float")
{
userOutputBitDepth = OCIO::BIT_DEPTH_F32;
}
else
{
throw OCIO::Exception("Unsupported output bitdepth, must be uint8, uint16, half or float.");
}
}

const char * inputimage = nullptr;
const char * inputcolorspace = nullptr;
const char * outputimage = nullptr;
Expand Down Expand Up @@ -477,17 +505,24 @@ int main(int argc, const char **argv)
const OCIO::BitDepth inputBitDepth = imgInput.getBitDepth();
OCIO::BitDepth outputBitDepth;

if (inputBitDepth == OCIO::BIT_DEPTH_UINT16 || inputBitDepth == OCIO::BIT_DEPTH_F32)
if (userOutputBitDepth != OCIO::BIT_DEPTH_UNKNOWN)
{
outputBitDepth = OCIO::BIT_DEPTH_F32;
}
else if (inputBitDepth == OCIO::BIT_DEPTH_UINT8 || inputBitDepth == OCIO::BIT_DEPTH_F16)
{
outputBitDepth = OCIO::BIT_DEPTH_F16;
outputBitDepth = userOutputBitDepth;
}
else
{
throw OCIO::Exception("Unsupported input bitdepth, must be uint8, uint16, half or float.");
if (inputBitDepth == OCIO::BIT_DEPTH_UINT16 || inputBitDepth == OCIO::BIT_DEPTH_F32)
{
outputBitDepth = OCIO::BIT_DEPTH_F32;
}
else if (inputBitDepth == OCIO::BIT_DEPTH_UINT8 || inputBitDepth == OCIO::BIT_DEPTH_F16)
{
outputBitDepth = OCIO::BIT_DEPTH_F16;
}
else
{
throw OCIO::Exception("Unsupported input bitdepth, must be uint8, uint16, half or float.");
}
}

OCIO::ConstCPUProcessorRcPtr cpuProcessor
Expand Down Expand Up @@ -611,7 +646,7 @@ int main(int argc, const char **argv)
imgOutput->attribute("oiio:ColorSpace", outputcolorspace);
}

imgOutput->write(outputimage);
imgOutput->write(outputimage, userOutputBitDepth);
}
catch (...)
{
Expand Down
Loading

0 comments on commit bcc720f

Please sign in to comment.