If the stream-based loaders fail, vips_image_new_from_stream() now falls back to the old file and buffer loaders. The file and buffer loaders already try the stream loaders first.
This is the vips8 C++ binding. The old vips7 binding is still there, but this one is better. See the vips API docs for documentation.