Make it easier to serialize in-memory Configs that contain Lut1DTransforms and Lut3DTransforms
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
Hướng nghiên cứu
Bắt đầu với Config::serialize() và cách xử lý Lut1DTransforms và Lut3DTransforms trong bộ nhớ được mô tả trong issue. Làm rõ cách tiếp cận tuần tự hóa hoặc tiền điều kiện hóa nào được dự định, sau đó xác định cách kiểm chứng các biểu diễn có thể tuần tự hóa tương đương và việc lưu trữ YAML thành công.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Configs that directly employ Lut1DTransforms and Lut3DTransforms (i.e., held in memory) cannot be serialized to a YAML stream. This is in contrast to Configs that indirectly reference such transforms via FileTransforms or BuiltinTransforms.
It would be great if we had a few convenience methods to help users automatically and effortlessly create serializable representations of Configs that would otherwise refuse to serialize() to YAML.
A foolproof method for coercing an OCIO Config into a serializable + archivable representation is to bake CTFs of all Lut1DTransforms and Lut3DTransforms to a [custom?] relative location (prepending to the Config search path, if necessary), whose filenames match the cache IDs of Processors containing each transform; and swapping out the Lut1D/Lut3DTransforms for equivalent FileTransform references.
Alternatively, entire ColorSpace / ViewTransform / NamedTransform / Look transform definitions could be serialized to CTFs with more human-friendly filenames, based on the names given to higher-level Config constructs (e.g, "to.ctf")
Eventually, like #2219 hints at, it would also be very cool if we had methods for intelligently exactly representing / approximating Lut1DTransforms as other (serializable) OCIO Transforms, potentially permitting users to convert entirely unserializable Configs into more-serializable Configs, or to otherwise reduce the need to externalize LUTs or OCIOZ files in the first place. Ultimately, I'd love to see something like this tied in to whatever interface we provide for coercing unserializable Configs as a "preconditioning" step; but I think such efforts are probably worth their own GitHub issue...!
- Ngôn ngữ chính
- C++
- Star
- 2.1k
- Fork
- 502
- Merge trung bình
- 4 ngày 4 giờ
- Pull request đã merge (30 ngày)
- 5
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của AcademySoftwareFoundation/OpenColorIO
-
Inconsistent run-time library usage for locale handling breaks GPU code generation on some systems.Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
AcademySoftwareFoundation/OpenColorIO#2351 · 2 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
-
Build failure on GCC/MinGW (MXE): std::ifstream constructor mismatch with Platform::filenameToUTF()Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
ReadTheDocs - OS DeprecationĐang mởDocumentation
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
AcademySoftwareFoundation/OpenColorIO#2280 · 1 bình luận ·
Tất cả issue của AcademySoftwareFoundation/OpenColorIO
Issue tương tự
-
bug topic:shaders
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
godotengine/godot#124800 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
swiftlang/indexstore-db#306 ·
-
Python PointcloudĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
ArduCAM/Arducam_tof_camera#125 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 87/100
maplibre/maplibre-native#4822 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug-unconfirmed
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
Maintainer thường phản hồi trong vòng 1 ngày