humble-video-noarch/src/main/java/io/humble/video/customio/HumbleIO.java
public static String map(String url, ReadableByteChannel in,
      WritableByteChannel out, boolean unmapOnOpen, boolean closeOnClose)
  {
    return map(url, new ReadableWritableChannelHandler(in, out, closeOnClose));
  }
public static String map(String url, ReadableByteChannel in,
      WritableByteChannel out, boolean unmapOnOpen, boolean closeOnClose)
  {
    return map(url, new ReadableWritableChannelHandler(in, out, closeOnClose));
  }
Maps an {@link ReadableByteChannel} or {@link WritableByteChannel} to a URL
for use by Humble.

@param url the url
@param in the input to use
@param out the output to use
@param unmapOnOpen should we remove the mapping as soon as the resulting
handler is opened?
@param closeOnClose should we call {@link Closeable#close()} on the
underlying input or output objects when
{@link IURLProtocolHandler#close()} is called (if supported by the
underlying object)?
@return Returns a URL that can be passed to Humble's {@link Container}'s
open method, and will result in IO being performed on the passed in
streams.