Hey folks,

Over the last few years we have been looking into how to adapt DCCs to better 
suit integration into more modern service-oriented pipelines. As people move 
towards managed, multi-site/multi-platform data layers, a common topic is how 
to move away from `fopen` as the be-all and end-all for data access. Having to 
simulate POSIX filesystem semantics to appease content creation tools usually 
results in a world of FUSE-related pain[1].

Houdini (for one) has long been pioneering better solutions through things like 
its File System API[2]. This allows data to be read/written to alternate 
sources by registering a custom handler for any given URL scheme. In 
conversation with Robert Vinluan, Edward Lam and Larry Gritz, it surfaced that 
OpenImageIO already has the IOProxy abstraction[3] which serves a similar 
purpose.

There is no point re-inventing any wheels. We’d like to propose splitting the 
file abstraction layer out of OIIO into a small, simple, open source API. It 
would abstract I/O to a common interface/implementation that could be re-used 
across tools. The OIIO code seemed an ideal starting point as it is already 
public, and well established/tested within the community.

Is this project of interest to anyone else here?

Many thanks and best wishes,
Tom Cowland

Foundry


(Also posted on the ASWF #general Slack channel[4])

[1] https://github.com/libfuse/libfuse <https://github.com/libfuse/libfuse>
[2] https://www.sidefx.com/docs/hdk/_h_d_k__f_s__overview.html 
<https://www.sidefx.com/docs/hdk/_h_d_k__f_s__overview.html> 
[3] 
https://github.com/OpenImageIO/oiio/blob/master/src/include/OpenImageIO/filesystem.h#L390
 
<https://github.com/OpenImageIO/oiio/blob/master/src/include/OpenImageIO/filesystem.h#L390>
 
[4] https://academysoftwarefdn.slack.com/archives/CKAH4EU4Q/p1663683607836269 
<https://academysoftwarefdn.slack.com/archives/CKAH4EU4Q/p1663683607836269> 
_______________________________________________
Oiio-dev mailing list
Oiio-dev@lists.openimageio.org
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to