Date
1 - 2 of 2
Digest for ocio...@googlegroups.com - 5 Messages in 2 Topics
Blake Sloan <bsl...@...>
Hi Malcolm and Jeremy,
Thanks for the docs page. It is very helpful. Clearer now on how to have a single ocio config for a show. And yes, Jeremy that would be excellent if you can show me (or add to the docs) the way to allow the per shot grades to live in directories that are not necessarily under the main config directory ala Sony's (and DD's) workflow.
If it is a matter of extending the OCIO search path by the additional grade directories, that sounds pretty straightforward.
Thank for your prompt responses, guys,
-Blake
toggle quoted message
Show quoted text
Thanks for the docs page. It is very helpful. Clearer now on how to have a single ocio config for a show. And yes, Jeremy that would be excellent if you can show me (or add to the docs) the way to allow the per shot grades to live in directories that are not necessarily under the main config directory ala Sony's (and DD's) workflow.
If it is a matter of extending the OCIO search path by the additional grade directories, that sounds pretty straightforward.
Thank for your prompt responses, guys,
-Blake
On Saturday, December 17, 2011, <ocio...@...> wrote:
> Today's Topic Summary
>
> Group: http://groups.google.com/group/ocio-dev/topics
>
> Accommodating per-shot grades [4 Updates]
> Silhouette now using OCIO natively [1 Update]
>
> Accommodating per-shot grades
>
> Blake Sloan <bsl...@...> Dec 16 02:10PM -0800
>
> Hi OCIO developers,
>
> First, apologies if this is not strictly a dev question.
>
> I have a real-world case for per-shot grade LUTs in an application
> that uses OCIO color management (Katana).
>
> Reading over some of the dev mail about per-shot grades, it isn't
> clear to me whether OCIO (from within Katana) provides the ability to
> apply a per shot grade *and* a show-specific film-emulation LUT
> (without copying a bunch of duplicate files to every shot directory).
>
> From mail threads, I gather OCIO has a Context object that can contain
> the sequence and shot info. Is this Context available from within a
> show-wide config file? Or perhaps there's a way to access environment
> variables from within the config file?
>
>
> I'd prefer not to change the show's OCIO env var to point to a shot
> path, as that would require copying the show's film-emulation
> transform to multiple locations.
>
> Thanks in advance,
>
> -blake
>
> --
> as seen on T.V.
>
>
>
> Jeremy Selan <jeremy...@...> Dec 16 03:58PM -0800
>
> Yup, it can definitely do this. (apply a per-shot grade without copying
> around files unnecessarily). I'll try to write up a little document on how
> to handle per-shot grades, and post it to the list (and website) by monday.
> Will this work?
>
> -- Jeremy
>
>
>
>
> Malcolm Humphreys <malcolmh...@...> Dec 17 10:00AM
>
> @blake is this documentation unclear?
>
> http://opencolorio.org/userguide/contexts.html#per-shot-grades
>
> If it is it would be great to know so we can improve on it.
>
> It shows the usage of env vars inside of ocio profiles
> eg.
> - !<FileTransform> {src: ${SHOT}.cc}
> - !<FileTransform> {src: grades.ccc, cccid: ${SHOT}}
> .malcolm
>
> On 16/12/2011, at 11:58 PM, Jeremy Selan wrote:
>
>
>
>
> Jeremy Selan <jeremy...@...> Dec 17 08:58AM -0800
>
> Oh yah, I forgot about that page!
>
> The only other thing I'll add to that is an example using multiple dirs in
> the lut search paths (combined with envvars). This is how we do per-shot
> luts at SPI, and it lets you handle fallback cases (not have a special lut
> for a shot/sequence) gracefully. Oh - and we should also how how to use
> looks in the display monitor options, and how to do a context override in
> nuke.
>
> -- Jeremy
>
> On Sat, Dec 17, 2011 at 2:00 AM, Malcolm Humphreys <malcolmh...@...
>
>
>
> Silhouette now using OCIO natively
>
> Paul Miller <pa...@...> Dec 16 04:33PM -0600
>
> In less than a week I've converted Silhouette's entire color conversion
> pipeline over to OCIO. I wanted to thank Jeremy and everyone else who
> gave me advice. It was much easier than I anticipated!
>
>
>
> You received this message because you are subscribed to the Google Group ocio-dev.
> You can post via email.
> To unsubscribe from this group, send an empty message.
> For more options, visit this group.
>
> Today's Topic Summary
>
> Group: http://groups.google.com/group/ocio-dev/topics
>
> Accommodating per-shot grades [4 Updates]
> Silhouette now using OCIO natively [1 Update]
>
> Accommodating per-shot grades
>
> Blake Sloan <bsl...@...> Dec 16 02:10PM -0800
>
> Hi OCIO developers,
>
> First, apologies if this is not strictly a dev question.
>
> I have a real-world case for per-shot grade LUTs in an application
> that uses OCIO color management (Katana).
>
> Reading over some of the dev mail about per-shot grades, it isn't
> clear to me whether OCIO (from within Katana) provides the ability to
> apply a per shot grade *and* a show-specific film-emulation LUT
> (without copying a bunch of duplicate files to every shot directory).
>
> From mail threads, I gather OCIO has a Context object that can contain
> the sequence and shot info. Is this Context available from within a
> show-wide config file? Or perhaps there's a way to access environment
> variables from within the config file?
>
>
> I'd prefer not to change the show's OCIO env var to point to a shot
> path, as that would require copying the show's film-emulation
> transform to multiple locations.
>
> Thanks in advance,
>
> -blake
>
> --
> as seen on T.V.
>
>
>
> Jeremy Selan <jeremy...@...> Dec 16 03:58PM -0800
>
> Yup, it can definitely do this. (apply a per-shot grade without copying
> around files unnecessarily). I'll try to write up a little document on how
> to handle per-shot grades, and post it to the list (and website) by monday.
> Will this work?
>
> -- Jeremy
>
>
>
>
> Malcolm Humphreys <malcolmh...@...> Dec 17 10:00AM
>
> @blake is this documentation unclear?
>
> http://opencolorio.org/userguide/contexts.html#per-shot-grades
>
> If it is it would be great to know so we can improve on it.
>
> It shows the usage of env vars inside of ocio profiles
> eg.
> - !<FileTransform> {src: ${SHOT}.cc}
> - !<FileTransform> {src: grades.ccc, cccid: ${SHOT}}
> .malcolm
>
> On 16/12/2011, at 11:58 PM, Jeremy Selan wrote:
>
>
>
>
> Jeremy Selan <jeremy...@...> Dec 17 08:58AM -0800
>
> Oh yah, I forgot about that page!
>
> The only other thing I'll add to that is an example using multiple dirs in
> the lut search paths (combined with envvars). This is how we do per-shot
> luts at SPI, and it lets you handle fallback cases (not have a special lut
> for a shot/sequence) gracefully. Oh - and we should also how how to use
> looks in the display monitor options, and how to do a context override in
> nuke.
>
> -- Jeremy
>
> On Sat, Dec 17, 2011 at 2:00 AM, Malcolm Humphreys <malcolmh...@...
>
>
>
> Silhouette now using OCIO natively
>
> Paul Miller <pa...@...> Dec 16 04:33PM -0600
>
> In less than a week I've converted Silhouette's entire color conversion
> pipeline over to OCIO. I wanted to thank Jeremy and everyone else who
> gave me advice. It was much easier than I anticipated!
>
>
>
> You received this message because you are subscribed to the Google Group ocio-dev.
> You can post via email.
> To unsubscribe from this group, send an empty message.
> For more options, visit this group.
>
Jeremy Selan <jeremy...@...>
Per Shot Looks:
Step 1: Setup a Look
A look is a top-level OCIO configuration object. Conceptually, it's a named transform which gets applied in a specific color space. All of the changes below to the .ocio configs can be done manually by editing the text, or using the python API.
Example OCIO Configuration:
looks:
- !<Look>
name: di
process_space: rclg16
transform: !<FileTransform> {src: look_di.cc, interpolation: linear}
The src file can be any lut type that OCIO supports. (In this case, it's a file that contains the <ColorCorrection> element from a CDL file.) You could also specify a .3dl, etc.
Once you define a look in your configuration, you'll see that the OCIOLookTransform node in Nuke will provide the named option. In this example, the 'DI' look conceptually represents a look that will be applied in DI. Other look names we often used are 'onset', 'editorial', etc. The process_space implies that the transform should be applied in that space. I.e., if you provide linear input to the OCIOLookTransform node, the pixels will be converted to rclg16 in this example before applying the cc.
Step 2: Update the Display to use a look.
Example:
displays:
DLP:
- !<View> {name: Raw, colorspace: nc10}
- !<View> {name: Log, colorspace: rclg10}
- !<View> {name: Film, colorspace: p3dci16}
- !<View> {name: Film DI, colorspace: p3dci16, looks: di}
sRGB:
- !<View> {name: Raw, colorspace: nc10}
- !<View> {name: Log, colorspace: rclg10}
- !<View> {name: Film, colorspace: srgb10}
- !<View> {name: Film DI, colorspace: srgb10, looks: di}
You can optionally specify a 'looks' tag in the View tag, which will apply the specified look(s). This lets application in the viewer provide options which do (or do not) use the looks. Option for super advanced users: The looks tag is actually a comma-delimited list supporting +/- modifiers. So if you you wanted to specify a View that undoes DI, and then adds Onset, you could do "-di,+onset".
Step 3: Get per-shot looks supported.
In the top example, look_di.cc, being a relative path location, will check each location in the config's search_path. The first file that's found will be used.
So for
search_path: luts
only the 'luts' subdir relative to the OCIO config will be checked.
But if you specify:
search_path: /shots/show/$SHOT/cc/data: luts/ocio
the directory /shots/show/$SHOT/cc/data/ will be evaluated first, and only if not found luts/ocio will be checked.
envvars, absolute, and relative paths can be used both in the config's search_path, as well as the View's src specification.
Example:
- !<Look>
name: di
process_space: rclg16
transform: !<FileTransform> {src: looks/$SHOT_di/current/look_$SHOT_di.cc, interpolation: linear}
Note that if the per-shot lut is not found, you can control whether a fallback lut succeeds based on if it's in the master location. You can also use this for multiple levels (show, shot, etc).
Advanced option: If some shots use .cc files, and some use 3d-luts currently there's no simple way to handle this. What we'd recommend as a work around is to label all of your files with the same extension (such as .cc), and then rely on OCIO's resiliance to misnamed lut files to just load them anyways. Caveot: this only works in 1.0.1+ (6da3411ced)
Advanced option: In nuke OCIO nodes, you often want to preview looks 'across shots' (often for reference, same-as, etc). You can override the envvars in each node, using the 'Context' menu. For example, if you know that $SHOT is being used, in the context key1 you should specify 'SHOT', and the in value1 specify the shot to use (such as dev.lookdev).
Advanced option: If you are writing your own OCIO integration code, getProcessor will fail if the per-shot lut is not found, and you may want to distinguish this error from other OCIO errors. For this reason, we provide OCIO::ExceptionMissingFile, which can be explicitly caught. (And then handled using OCIO::DisplayTransform::setLooksOverride()) I'd expect image flipbook applications to do this approach.
-- Jeremy
toggle quoted message
Show quoted text
Step 1: Setup a Look
A look is a top-level OCIO configuration object. Conceptually, it's a named transform which gets applied in a specific color space. All of the changes below to the .ocio configs can be done manually by editing the text, or using the python API.
Example OCIO Configuration:
looks:
- !<Look>
name: di
process_space: rclg16
transform: !<FileTransform> {src: look_di.cc, interpolation: linear}
The src file can be any lut type that OCIO supports. (In this case, it's a file that contains the <ColorCorrection> element from a CDL file.) You could also specify a .3dl, etc.
Once you define a look in your configuration, you'll see that the OCIOLookTransform node in Nuke will provide the named option. In this example, the 'DI' look conceptually represents a look that will be applied in DI. Other look names we often used are 'onset', 'editorial', etc. The process_space implies that the transform should be applied in that space. I.e., if you provide linear input to the OCIOLookTransform node, the pixels will be converted to rclg16 in this example before applying the cc.
Step 2: Update the Display to use a look.
Example:
displays:
DLP:
- !<View> {name: Raw, colorspace: nc10}
- !<View> {name: Log, colorspace: rclg10}
- !<View> {name: Film, colorspace: p3dci16}
- !<View> {name: Film DI, colorspace: p3dci16, looks: di}
sRGB:
- !<View> {name: Raw, colorspace: nc10}
- !<View> {name: Log, colorspace: rclg10}
- !<View> {name: Film, colorspace: srgb10}
- !<View> {name: Film DI, colorspace: srgb10, looks: di}
You can optionally specify a 'looks' tag in the View tag, which will apply the specified look(s). This lets application in the viewer provide options which do (or do not) use the looks. Option for super advanced users: The looks tag is actually a comma-delimited list supporting +/- modifiers. So if you you wanted to specify a View that undoes DI, and then adds Onset, you could do "-di,+onset".
Step 3: Get per-shot looks supported.
In the top example, look_di.cc, being a relative path location, will check each location in the config's search_path. The first file that's found will be used.
So for
search_path: luts
only the 'luts' subdir relative to the OCIO config will be checked.
But if you specify:
search_path: /shots/show/$SHOT/cc/data: luts/ocio
the directory /shots/show/$SHOT/cc/data/ will be evaluated first, and only if not found luts/ocio will be checked.
envvars, absolute, and relative paths can be used both in the config's search_path, as well as the View's src specification.
Example:
- !<Look>
name: di
process_space: rclg16
transform: !<FileTransform> {src: looks/$SHOT_di/current/look_$SHOT_di.cc, interpolation: linear}
Note that if the per-shot lut is not found, you can control whether a fallback lut succeeds based on if it's in the master location. You can also use this for multiple levels (show, shot, etc).
Advanced option: If some shots use .cc files, and some use 3d-luts currently there's no simple way to handle this. What we'd recommend as a work around is to label all of your files with the same extension (such as .cc), and then rely on OCIO's resiliance to misnamed lut files to just load them anyways. Caveot: this only works in 1.0.1+ (6da3411ced)
Advanced option: In nuke OCIO nodes, you often want to preview looks 'across shots' (often for reference, same-as, etc). You can override the envvars in each node, using the 'Context' menu. For example, if you know that $SHOT is being used, in the context key1 you should specify 'SHOT', and the in value1 specify the shot to use (such as dev.lookdev).
Advanced option: If you are writing your own OCIO integration code, getProcessor will fail if the per-shot lut is not found, and you may want to distinguish this error from other OCIO errors. For this reason, we provide OCIO::ExceptionMissingFile, which can be explicitly caught. (And then handled using OCIO::DisplayTransform::setLooksOverride()) I'd expect image flipbook applications to do this approach.
-- Jeremy
On Sat, Dec 17, 2011 at 4:36 PM, Blake Sloan <bsl...@...> wrote:
Hi Malcolm and Jeremy,
Thanks for the docs page. It is very helpful. Clearer now on how to have a single ocio config for a show. And yes, Jeremy that would be excellent if you can show me (or add to the docs) the way to allow the per shot grades to live in directories that are not necessarily under the main config directory ala Sony's (and DD's) workflow.
If it is a matter of extending the OCIO search path by the additional grade directories, that sounds pretty straightforward.
Thank for your prompt responses, guys,
-Blake
On Saturday, December 17, 2011, <ocio...@...> wrote:
> Today's Topic Summary
>
> Group: http://groups.google.com/group/ocio-dev/topics
>
> Accommodating per-shot grades [4 Updates]
> Silhouette now using OCIO natively [1 Update]
>
> Accommodating per-shot grades
>
> Blake Sloan <bsl...@...> Dec 16 02:10PM -0800
>
> Hi OCIO developers,
>
> First, apologies if this is not strictly a dev question.
>
> I have a real-world case for per-shot grade LUTs in an application
> that uses OCIO color management (Katana).
>
> Reading over some of the dev mail about per-shot grades, it isn't
> clear to me whether OCIO (from within Katana) provides the ability to
> apply a per shot grade *and* a show-specific film-emulation LUT
> (without copying a bunch of duplicate files to every shot directory).
>
> From mail threads, I gather OCIO has a Context object that can contain
> the sequence and shot info. Is this Context available from within a
> show-wide config file? Or perhaps there's a way to access environment
> variables from within the config file?
>
>
> I'd prefer not to change the show's OCIO env var to point to a shot
> path, as that would require copying the show's film-emulation
> transform to multiple locations.
>
> Thanks in advance,
>
> -blake
>
> --
> as seen on T.V.
>
>
>
> Jeremy Selan <jeremy...@...> Dec 16 03:58PM -0800
>
> Yup, it can definitely do this. (apply a per-shot grade without copying
> around files unnecessarily). I'll try to write up a little document on how
> to handle per-shot grades, and post it to the list (and website) by monday.
> Will this work?
>
> -- Jeremy
>
>
>
>
> Malcolm Humphreys <malcolmh...@...> Dec 17 10:00AM
>
> @blake is this documentation unclear?
>
> http://opencolorio.org/userguide/contexts.html#per-shot-grades
>
> If it is it would be great to know so we can improve on it.
>
> It shows the usage of env vars inside of ocio profiles
> eg.
> - !<FileTransform> {src: ${SHOT}.cc}
> - !<FileTransform> {src: grades.ccc, cccid: ${SHOT}}
> .malcolm
>
> On 16/12/2011, at 11:58 PM, Jeremy Selan wrote:
>
>
>
>
> Jeremy Selan <jeremy...@...> Dec 17 08:58AM -0800
>
> Oh yah, I forgot about that page!
>
> The only other thing I'll add to that is an example using multiple dirs in
> the lut search paths (combined with envvars). This is how we do per-shot
> luts at SPI, and it lets you handle fallback cases (not have a special lut
> for a shot/sequence) gracefully. Oh - and we should also how how to use
> looks in the display monitor options, and how to do a context override in
> nuke.
>
> -- Jeremy
>
> On Sat, Dec 17, 2011 at 2:00 AM, Malcolm Humphreys <malcolmh...@...
>
>
>
> Silhouette now using OCIO natively
>
> Paul Miller <pa...@...> Dec 16 04:33PM -0600
>
> In less than a week I've converted Silhouette's entire color conversion
> pipeline over to OCIO. I wanted to thank Jeremy and everyone else who
> gave me advice. It was much easier than I anticipated!
>
>
>
> You received this message because you are subscribed to the Google Group ocio-dev.
> You can post via email.
> To unsubscribe from this group, send an empty message.
> For more options, visit this group.
>