/// <summary>
        /// Überträgt Videodaten in den Graphen.
        /// </summary>
        /// <param name="buffer">Ein Speicherbereich mit Videodaten.</param>
        /// <param name="offset">Das erste Byte im Speicherbereich, das ausgewertet werden soll.</param>
        /// <param name="length">Die Anzahl der auszuwertenden Bytes.</param>
        public void InjectVideo(byte[] buffer, int offset, int length)
        {
            // Stopped
            if (buffer != null)
            {
                if (m_State != FilterStates.Running)
                {
                    return;
                }
            }

            // Forward
            if (m_Video != null)
            {
                m_Video.Inject(buffer, offset, length);
            }
        }
        /// <summary>
        /// Legt die Art der Bilddaten fest.
        /// </summary>
        /// <param name="type">Die gewünschte Art der Bilddaten.</param>
        public void SetVideoType(MediaType type)
        {
            // Validate
            using (ESInjector filter = m_Video)
                if (filter != null)
                {
                    // Forget
                    m_Video = null;

                    // Cleanup buffer
                    filter.Inject(null, 0, 0);
                }

            // Create new
            if (type != null)
            {
                m_Video = new ESInjector(this, "Video", type);
            }
        }