What is it like to use libimageflow directly?
If you wanted to use libimageflow directly (instead of via wrapper or abstraction), you would:
- Create a flow_context
- Create two flow_io objects, for your input and ouptut files.
- Create a flow_job, then add the two flow_io objects to the job.
- Call flow_job_build_json() with your json command.
- Call flow_destroy(context) to perform all cleanup
Why do you use an operation graph internally?
A directed acyclic graph permits us to make very advanced optimizations and comprehensions that can assist with encoder and decoder tuning. It also facilitates multi-input and multi-output image jobs. You won’t need to construct a adjacency list in JSON unless you actually need those features, though - a linear sequence of operations is all most developers will use.