public MemoryInputMedia(IntPtr hMediaLib)
            : base(hMediaLib)
        {
            ImemGet     pLock   = OnImemGet;
            ImemRelease pUnlock = OnImemRelease;

            m_pLock   = Marshal.GetFunctionPointerForDelegate(pLock);
            m_pUnlock = Marshal.GetFunctionPointerForDelegate(pUnlock);

            m_callbacks.Add(pLock);
            m_callbacks.Add(pUnlock);
        }
        public CompositeMemoryInputMedia(IntPtr hMediaLib)
            : base(hMediaLib)
        {
            ImemGet     pLock   = OnImemGet;
            ImemRelease pUnlock = OnImemRelease;

            m_pLock   = Marshal.GetFunctionPointerForDelegate(pLock);
            m_pUnlock = Marshal.GetFunctionPointerForDelegate(pUnlock);

            m_callbacks.Add(pLock);
            m_callbacks.Add(pUnlock);

            m_mediaHandler = this;
            DeliveryMode   = MediaDeliveryMode.Push;
        }