stringtranslate.com

Presentación directa

DirectShow (a veces abreviado como DS o DShow ), nombre clave Quartz , es un marco multimedia y API producido por Microsoft para que los desarrolladores de software realicen varias operaciones con archivos o transmisiones multimedia. Es el reemplazo de la tecnología Video for Windows anterior de Microsoft. [1] Basado en el marco del Modelo de objetos componentes (COM) de Microsoft Windows , DirectShow proporciona una interfaz común para los medios en varios lenguajes de programación , y es un marco extensible basado en filtros que puede renderizar o grabar archivos multimedia a pedido del usuario o desarrollador. Las herramientas de desarrollo y la documentación de DirectShow se distribuyeron originalmente como parte del SDK de DirectX . [2] Actualmente, se distribuyen como parte del SDK de Windows (anteriormente conocido como el SDK de la plataforma). [3]

Microsoft planea reemplazar completamente DirectShow gradualmente con Media Foundation en futuras versiones de Windows. Una razón citada por Microsoft es proporcionar "un soporte mucho más sólido para sistemas de protección de contenido" [4] (ver gestión de derechos digitales ). Becky Weiss de Microsoft confirmó en 2006 que "notarás que trabajar con Media Foundation requiere que trabajes a un nivel ligeramente inferior al que tendrías si trabajaras con DirectShow. Y todavía hay características de DirectShow que (aún) no están en Media Foundation". [4] [5] Como se describe en el artículo de Media Foundation, las aplicaciones de Windows Vista y Windows 7 usan Media Foundation en lugar de DirectShow para varias tareas relacionadas con los medios.

Historia

El predecesor directo de DirectShow, ActiveMovie (cuyo nombre en código era Quartz), fue diseñado para proporcionar compatibilidad con MPEG-1 para Windows. También fue pensado como un futuro reemplazo para marcos de procesamiento de medios como Video for Windows y Media Control Interface , que nunca habían sido completamente adaptados a un entorno de 32 bits y no utilizaban COM. [6] [1]

El equipo de desarrollo utilizó como base para DirectShow un proyecto de procesador de medios digitales modular preexistente, cuyo nombre en código era "Clockwork". Clockwork ya se había utilizado anteriormente en el proyecto de televisión interactiva de Microsoft. [7]

El proyecto fue inicialmente llamado "ActiveMovie", y fue lanzado en mayo de 1996, incluido en la versión beta de Internet Explorer 3.0 . [8] [9] En marzo de 1997, Microsoft anunció que ActiveMovie pasaría a formar parte de la suite de tecnologías DirectX 5, y alrededor de julio comenzó a referirse a él como DirectShow, lo que refleja los esfuerzos de Microsoft en ese momento para consolidar las tecnologías que trabajaban directamente con el hardware bajo un esquema de nombres común. [10] [11] [12] DirectShow se convirtió en un componente estándar de todos los sistemas operativos Windows a partir de Windows 98 ; [13] sin embargo, está disponible en Windows 95 instalando el último redistribuible de DirectX disponible. [14] En la versión 8.0 de DirectX, DirectShow se convirtió en parte del SDK principal de DirectX junto con otras API de DirectX. [15]

En octubre de 2004, DirectShow fue eliminado de la distribución principal de DirectX y reubicado en la descarga de DirectX Extras. [ cita requerida ] En abril de 2005, DirectShow fue eliminado por completo de DirectX y se trasladó al SDK de Windows a partir de la versión Windows Server 2003 SP1 del SDK. [3] Sin embargo, el SDK de DirectX todavía era necesario para crear algunas de las muestras de DirectShow. [16]

Desde noviembre de 2007, las API de DirectShow forman parte del SDK de Windows . Incluye varias mejoras nuevas, códecs y actualizaciones de filtros, como el Enhanced Video Renderer (EVR) y DXVA 2.0 ( DirectX Video Acceleration ). [17]

Arquitectura

DirectShow divide una tarea multimedia compleja (por ejemplo, la reproducción de vídeo) en una secuencia de pasos de procesamiento fundamentales conocidos como filtros . [18] [19] Cada filtro, que representa una etapa en el procesamiento de los datos, tiene pines de entrada y/o salida que pueden usarse para conectar el filtro a otros filtros. La naturaleza genérica de este mecanismo de conexión permite que los filtros se conecten de varias maneras para implementar diferentes funciones complejas. [20] Para implementar una tarea compleja específica, un desarrollador primero debe construir un gráfico de filtros creando instancias de los filtros requeridos y luego conectando los filtros entre sí. [21]

Hay tres tipos principales de filtros:

Filtros de origen
Estos proporcionan los flujos de datos de origen. Por ejemplo, la lectura de bytes sin procesar de cualquier archivo multimedia.
Transformar filtros
Estos transforman los datos que se obtienen de la salida de otros filtros. Por ejemplo, realizar una transformación como agregar texto sobre un video o descomprimir un fotograma MPEG.
Filtros de renderizador
Estos procesan los datos. Por ejemplo, envían audio a la tarjeta de sonido, dibujan un video en la pantalla o escriben datos en un archivo.

Durante el proceso de renderizado, el gráfico de filtros busca filtros registrados en el Registro de Windows y construye su gráfico de filtros en función de las ubicaciones proporcionadas. Después de esto, conecta los filtros entre sí y, a petición del desarrollador, ejecuta (es decir, reproduce, pausa, etc.) el gráfico creado. [ cita requerida ] Los gráficos de filtros de DirectShow se utilizan ampliamente en la reproducción de vídeo (en la que los filtros implementan funciones como análisis de archivos, demultiplexación de vídeo y audio, descompresión y renderizado), así como para la grabación, edición, codificación, transcodificación o transmisión de medios en red de vídeo y audio. DirectShow también puede controlar tareas interactivas como la navegación en DVD. [ cita requerida ]

Gráfico de filtro de un archivo mp3 , tal como lo representa el ejemplo de DirectShow en GraphEdit , una aplicación con una GUI para DirectShow que se utiliza para crear y probar visualmente gráficos de filtro. [22] En esta imagen, los cuadros representan filtros y los puntos grises que aparecen a los lados de los filtros representan pines.

En el ejemplo anterior, de izquierda a derecha, el gráfico contiene un filtro de origen para leer un archivo MP3, filtros divisores de flujo y decodificadores para analizar y decodificar el audio, y un filtro de renderización para reproducir las muestras de audio sin procesar. Cada filtro tiene uno o más pines que se pueden usar para conectar ese filtro a otros filtros. Cada pin funciona como una fuente de entrada o salida para que los datos fluyan de un filtro a otro. Dependiendo del filtro, los datos se "extraen" de un pin de entrada o se "envían" a un pin de salida para transferir datos entre filtros. Cada pin solo se puede conectar a otro pin y deben ponerse de acuerdo sobre qué tipo de datos están enviando. [ cita requerida ]

La mayoría de los filtros se crean utilizando un conjunto de clases C++ proporcionadas en el SDK de DirectShow, llamadas las Clases base de DirectShow. [ cita requerida ] Estas manejan gran parte de la lógica de creación, registro y conexión para el filtro. [23] Para que el gráfico de filtro use filtros automáticamente, deben registrarse en una entrada de registro de DirectShow separada, así como también con COM. Este registro puede ser administrado por las Clases base de DirectShow. Sin embargo, si la aplicación agrega los filtros manualmente, no necesitan estar registrados en absoluto. [ cita requerida ] Desafortunadamente, es difícil modificar un gráfico que ya se está ejecutando. Por lo general, es más fácil detener el gráfico y crear uno nuevo desde cero. A partir de DirectShow 8.0, se introdujeron la creación de gráficos dinámicos, la reconexión dinámica y las cadenas de filtros para ayudar a alterar el gráfico mientras se estaba ejecutando. [24] Sin embargo, muchos proveedores de filtros ignoran esta característica, lo que hace que la modificación del gráfico sea problemática después de que un gráfico haya comenzado a procesarse. [ cita requerida ]

Aunque DirectShow es capaz de construir dinámicamente un gráfico para representar un tipo de medio determinado, en ciertos casos es difícil para los desarrolladores confiar en esta funcionalidad y necesitan recurrir a la construcción manual de gráficos de filtros si el gráfico de filtros resultante es variable. [ cita requerida ] Es posible que los gráficos de filtros cambien con el tiempo a medida que se instalan nuevos filtros en la computadora. [ cita requerida ]

Características

De forma predeterminada, DirectShow incluye una serie de filtros para decodificar algunos formatos de archivos multimedia comunes como MPEG-1 , MP3 , Windows Media Audio , Windows Media Video , MIDI , contenedores multimedia como AVI , ASF , WAV , algunos divisores/demultiplexores, multiplexores, filtros de origen y destino , algunos filtros de imagen estática, algo de aceleración de vídeo y compatibilidad mínima con la gestión de derechos digitales (DRM). [25] [26] El repertorio de formatos estándar de DirectShow se puede ampliar fácilmente mediante una variedad de filtros, lo que permite que DirectShow admita prácticamente cualquier formato de contenedor y cualquier códec de audio o vídeo. Por ejemplo, se han desarrollado filtros para Ogg Vorbis , Musepack y AC3 , y algunos códecs como MPEG-4 Advanced Simple Profile , AAC , H.264 , Vorbis y los contenedores MOV , MP4 están disponibles en terceros como ffdshow , K-Lite y CCCP . [27] [28] [29] La incorporación de soporte para códecs adicionales como estos puede implicar el pago de tarifas de licencia al desarrollador de la tecnología de códecs o al titular de la patente involucrado. [ cita requerida ] Finalmente, existen filtros "puente" que admiten simultáneamente múltiples formatos, así como funciones como multiplexación de flujo, al exponer la funcionalidad de las API multimedia subyacentes como VLC . [30]

La cantidad de trabajo necesaria para implementar un gráfico de filtros depende de varios factores. En el caso más simple, DirectShow puede crear un gráfico de filtros automáticamente a partir de una fuente, como un archivo o una URL. [31] Si esto no es posible, el desarrollador puede crear manualmente un gráfico de filtros a partir de un archivo de origen, posiblemente con la adición de un filtro personalizado, y luego dejar que DirectShow complete el gráfico de filtros conectando los filtros entre sí. En el siguiente nivel, el desarrollador debe construir el gráfico de filtros desde cero agregando y conectando manualmente cada filtro deseado. Finalmente, en los casos en los que no está disponible un filtro esencial, el desarrollador debe crear un filtro personalizado antes de poder construir un gráfico de filtros. [ cita requerida ]

A diferencia de la API C principal de QuickTime, donde es necesario llamar a MoviesTask en un bucle para cargar un archivo multimedia, DirectShow maneja todo esto de manera transparente. Crea varios subprocesos en segundo plano que reproducen sin problemas el archivo o URL solicitado sin que el programador tenga que hacer mucho trabajo. [ cita requerida ] Además, a diferencia de QuickTime, no se requiere nada especial para cargar una URL en lugar de un archivo local en el disco: el gráfico de filtros de DirectShow abstrae estos detalles del programador, aunque los desarrollos recientes en QuickTime (incluido un control ActiveX ) han reducido esta disparidad. [ cita requerida ]

Servicios de edición de DirectShow

DirectShow Editing Services (DES), introducido en DirectX 8.0/ Windows XP , es una API destinada a tareas de edición de vídeo y construida sobre la arquitectura central de DirectShow. DirectShow Editing Services se introdujo para Windows Movie Maker de Microsoft . [1] Incluye API para servicios de línea de tiempo y conmutación, cambio de tamaño, recorte, efectos de vídeo y audio, así como transiciones, incrustación , conversión automática de frecuencia de fotogramas y frecuencia de muestreo y otras características que se utilizan en la edición de vídeo no lineal, lo que permite la creación de medios compuestos a partir de una serie de secuencias de audio y vídeo de origen. DirectShow Editing Services permite la composición en tiempo de ejecución de nivel superior, la búsqueda de soporte y la gestión de gráficos, al tiempo que permite que las aplicaciones accedan a funciones DirectShow de nivel inferior.

Aunque la API original está en C++, se puede acceder a DirectShow Editing Services en cualquier lenguaje compatible con Microsoft .NET, incluidos Microsoft Visual C# y Microsoft Visual Basic , mediante una biblioteca de código de terceros llamada "DirectShowNet Library". [32] Alternativamente, se puede acceder a toda la API de DirectShow, incluidos DirectShow Editing Services, desde Borland Delphi 5, 6 y 7, C++ Builder 6 y desde versiones posteriores con algunas modificaciones menores, mediante una biblioteca de software de terceros llamada "DSPack". [33]

En marzo de 2012 [34] (y, aparentemente, ya en 2009 [35] ), Microsoft declaró que la API de DirectShow Editing Services "no es compatible y puede modificarse o no estar disponible en el futuro".

Filtros de renderizado de vídeo

Originalmente, en Windows 9x , DirectShow usaba el filtro Video Renderer . Este dibujaba las imágenes usando DirectDraw 3, pero también podía recurrir a los modos de dibujo GDI o superposición en algunas circunstancias (dependiendo de la visibilidad de la ventana de video y las capacidades de la tarjeta de video). [14] [36] Tenía acceso limitado a la ventana de video. [ cita requerida ] El video para Windows había estado plagado de bloqueos causados ​​por el manejo incorrecto de las ventanas de video por parte de las aplicaciones, por lo que en las primeras versiones de DirectShow, el identificador de la ventana de reproducción estaba oculto para las aplicaciones. Tampoco había una forma confiable de dibujar texto de subtítulos o gráficos sobre el video. [ cita requerida ]

DirectShow 6.0, lanzado como parte de DirectX Media , introdujo el renderizador Overlay Mixer diseñado para reproducción de DVD y transmisión de secuencias de video con subtítulos y subtítulos . [ cita requerida ] Overlay Mixer utiliza DirectDraw 5 para renderizar. [ 14 ] Se requiere una conexión descendente con Video Renderer para la administración de ventanas. [ cita requerida ] Overlay Mixer también admite extensiones de puerto de video (VPE), lo que le permite trabajar con sintonizadores de TV analógicos con capacidad de superposición (enviar video directamente a una tarjeta de video a través de un enlace analógico en lugar de a través del bus PCI ). Overlay Mixer también admite conexiones DXVA . [ cita requerida ] Debido a que siempre renderiza en superposición , el video de pantalla completa a la salida de TV siempre está activado.

A partir de Windows XP , se introdujo un nuevo filtro llamado Video Mixing Renderer 7 ( VMR-7 o, a veces, simplemente VMR ). El número 7 se debía a que VMR-7 solo usaba DirectDraw versión 7 para renderizar el video y no tenía la opción de usar el dibujo GDI. La principal característica nueva de VMR-7 era la capacidad de mezclar múltiples transmisiones y gráficos con mezcla alfa, lo que permitía a las aplicaciones dibujar texto y gráficos sobre el video y admitir efectos personalizados. [37] También presentaba un "modo sin ventanas" (acceso a la imagen compuesta antes de que se renderice) que solucionaba los problemas con el acceso al controlador de ventana. [38]

DirectX 9 introdujo VMR-9 , que está incluido en Windows XP SP2 y posteriores. [39] Esta versión utiliza Direct3D 9 en lugar de DirectDraw, lo que permite a los desarrolladores transformar imágenes de vídeo utilizando los sombreadores de píxeles de Direct3D. [40] Está disponible para todas las plataformas Windows como parte del paquete redistribuible de DirectX 9. [ cita requerida ] Como VMR-7, proporciona un modo sin ventanas. Sin embargo, a diferencia del mezclador de superposición o VMR-7, no admite puertos de vídeo. [41] El uso de la opción de arranque /3GB puede provocar que VMR-9 falle. [42]

Windows Vista y Windows 7 se entregan con un nuevo renderizador, disponible como un componente de Media Foundation y un filtro DirectShow, llamado Enhanced Video Renderer ( EVR ). [43] EVR está diseñado para funcionar con Desktop Window Manager y es compatible con DXVA 2.0 , que está disponible en Windows Vista y Windows 7. [44] [ cita requerida ] Ofrece un mejor rendimiento y una mejor calidad según Microsoft. [45]

Recepción

Premios

El 8 de enero de 2007, Microsoft recibió el premio Emmy por Arquitecturas y Componentes de Medios de Transmisión en la 58.ª edición anual de los Premios Emmy de Tecnología e Ingeniería . [46]

Sencillez

Ordenar a DirectShow que reproduzca un archivo es una tarea relativamente sencilla. Sin embargo, al programar personalizaciones más avanzadas, como ordenar a DirectShow que muestre determinados mensajes de la ventana de vídeo o crear filtros personalizados, muchos desarrolladores se quejan de dificultades. [47] [48] Se considera una de las bibliotecas/API de desarrollo más complejas de Microsoft. [49] [ cita requerida ]

Los desarrolladores rara vez crean filtros DirectShow desde cero. En su lugar, emplean clases base de DirectShow. [ cita requerida ] Las clases base a menudo pueden simplificar el desarrollo, lo que permite al programador omitir ciertas tareas. Sin embargo, el proceso puede seguir siendo relativamente complejo; [ cita requerida ] el código que se encuentra en las clases base es casi la mitad del tamaño de toda la biblioteca MFC . [ cita requerida ] Como resultado, incluso con las clases base, la cantidad de objetos COM que contiene DirectShow a menudo abruma a los desarrolladores. [ cita requerida ] [ palabras ambiguas ] En algunos casos, la API de DirectShow se desvía de las reglas COM tradicionales, particularmente con respecto a los parámetros utilizados para los métodos . [ cita requerida ] [ palabras ambiguas ] Para superar sus dificultades con las reglas COM únicas de DirectShow, los desarrolladores a menudo recurren a una API de nivel superior que utiliza DirectShow, en particular, Windows Media Player SDK , una API que proporciona al desarrollador un control ActiveX que tiene menos interfaces COM con las que lidiar. [ cita requerida ] [ palabras ambiguas ]

Aunque DirectShow es capaz de construir dinámicamente un gráfico para representar un tipo de medio determinado, en ciertos casos es difícil para los desarrolladores confiar en esta funcionalidad y necesitan recurrir a la construcción manual de gráficos de filtros si el gráfico de filtros resultante es variable. [ cita requerida ] Es posible que los gráficos de filtros cambien con el tiempo a medida que se instalan nuevos filtros en la computadora. [ cita requerida ]

El infierno del códec

El infierno de códecs (un término derivado de DLL hell ) se produce cuando varios filtros DirectShow entran en conflicto para realizar la misma tarea. Una gran cantidad de empresas desarrollan ahora códecs en forma de filtros DirectShow, lo que da como resultado la presencia de varios filtros que pueden decodificar el mismo tipo de medio. [50] [51] Este problema se ve agravado aún más por el sistema de méritos de DirectShow, donde las implementaciones de filtros terminan compitiendo entre sí al registrarse con una prioridad cada vez mayor. [51]

Ted Youmans, de Microsoft, explicó que "DirectShow se basaba en el sistema de méritos, con la idea de que, utilizando una combinación de los méritos del filtro y lo específico que es el tipo/subtipo de medio, uno podría elegir razonablemente el códec correcto cada vez. En realidad, no estaba diseñado para una carrera armamentística nuclear basada en méritos". [51]

Una herramienta que ayuda a solucionar los problemas de "codec hell" a los que se suele hacer referencia es GSpot Codec Information Appliance, que puede resultar útil para determinar qué códec se utiliza para renderizar archivos de vídeo en AVI y otros contenedores. [52] GraphEdit también puede ayudar a comprender la secuencia de filtros que DirectShow utiliza para renderizar el archivo multimedia. El problema del codec hell se puede resolver creando manualmente gráficos de filtros, utilizando un reproductor multimedia que admita ignorar o anular los méritos de los filtros o utilizando un administrador de filtros que cambie los méritos de los filtros en el Registro de Windows . [22]

Herramientas para el usuario final

DirectShow, al ser un marco y una API centrados en el desarrollador, no ofrece directamente al usuario final control sobre la codificación de contenido, ni incorpora una interfaz de usuario para codificar utilizando códecs instalados o en diferentes formatos; en cambio, depende de los desarrolladores para desarrollar software utilizando la API. Por el contrario, otros marcos multimedia como QuickTime o Video para Windows permiten a los usuarios finales realizar tareas básicas relacionadas con el video, como volver a codificar utilizando un códec diferente y editar archivos y transmisiones. [ cita requerida ] La conveniencia que ofrece una GUI para el usuario final es evidente ya que el formato AVI y los códecs utilizados por Video para Windows todavía siguen en uso, por ejemplo, VirtualDub .

Véase también

Referencias

  1. ^ abc Blome, Michael; Wasson, Mike (julio de 2002). "La tecnología multimedia básica de Windows XP le permite crear componentes de procesamiento de audio y vídeo personalizados". MSDN Magazine . Microsoft . Consultado el 2 de abril de 2007 .
  2. ^ "DirectShow". MSDN . 2012-12-01 . Consultado el 21 de enero de 2013 .
  3. ^ ab "Documentación de DirectShow". Biblioteca MSDN . Microsoft. 2006-01-01 . Consultado el 2006-01-01 .
  4. ^ ab Weiss, Becky (30 de mayo de 2006). "¿Es la nueva Media Foundation un reemplazo de Direct Show?". Foro de la red de desarrolladores de Microsoft .
  5. ^ "Migración de DirectShow a Media Foundation". Biblioteca MSDN . Microsoft. Julio de 2006. Consultado el 17 de agosto de 2010 .
  6. ^ "DirectShow: la tecnología multimedia principal de Windows XP le permite crear componentes de procesamiento de audio y video personalizados". docs.microsoft.com . 23 de octubre de 2019 . Consultado el 31 de marzo de 2021 .
  7. ^ B. Jones, Michael (julio de 1997). "El sistema de televisión interactiva de Microsoft: un informe de experiencia". Microsoft Research . Microsoft. Archivado desde el original el 16 de mayo de 2007. Consultado el 2 de abril de 2007 .
  8. ^ "Microsoft Announces ActiveMovie" (Nota de prensa). Microsoft. 1996-03-05. Archivado desde el original el 2011-07-17 . Consultado el 2006-12-31 .
  9. ^ "Microsoft Internet Explorer 3.0 Beta ya está disponible" (Nota de prensa). Microsoft. 29 de mayo de 1996. Archivado desde el original el 7 de julio de 2007. Consultado el 31 de diciembre de 2006 .
  10. ^ "Microsoft presenta la primera estrategia unificada de API multimedia" (nota de prensa). Microsoft. 1997-03-31. Archivado desde el original el 2007-10-24 . Consultado el 2006-12-31 .
  11. ^ "Microsoft y Progressive Networks colaboran en la transmisión de contenido multimedia" (nota de prensa). Microsoft. 21 de julio de 1997. Archivado desde el original el 10 de diciembre de 2006. Consultado el 31 de diciembre de 2006 .
  12. ^ Eisler, Craig (20 de febrero de 2006). "DirectX entonces y ahora". Reflexiones de Craig . Archivado desde el original el 11 de julio de 2012. Consultado el 17 de agosto de 2010 .
  13. ^ "Microsoft lanza DirectShow SDK: reproducción universal para DVD, vídeo y audio digitales e Internet" (nota de prensa). Microsoft. 10 de diciembre de 1997. Archivado desde el original el 12 de febrero de 2010. Consultado el 17 de agosto de 2010 .
  14. ^ abc "Preguntas frecuentes sobre DirectShow". Biblioteca MSDN . Microsoft. 2010-07-06 . Consultado el 2010-08-17 .
  15. ^ "Preguntas frecuentes sobre los SDK de DirectShow y Windows Media". Biblioteca MSDN . Microsoft. Diciembre de 2001. Consultado el 17 de agosto de 2010 .
  16. ^ "Muestras de DirectX". Biblioteca MSDN . Microsoft. 2005-09-11 . Consultado el 2005-09-11 .
  17. ^ "Novedades de DirectShow en Windows Vista". Biblioteca MSDN . Microsoft. 8 de noviembre de 2006. Consultado el 8 de noviembre de 2006 .
  18. ^ Introducción a la programación de aplicaciones DirectShow
  19. ^ Descripción general del sistema DirectShow
  20. ^ "Acerca de los filtros DirectShow". Biblioteca MSDN . Microsoft. 7 de marzo de 2008. Consultado el 17 de agosto de 2010 .
  21. ^ "Descripción general de la construcción de gráficos". Biblioteca MSDN . Microsoft. 7 de marzo de 2008. Consultado el 17 de agosto de 2010 .
  22. ^ ab "Descripción general de GraphEdit". Biblioteca MSDN . Microsoft . Consultado el 17 de agosto de 2010 .
  23. ^ "Clases base de DirectShow". Biblioteca MSDN . Microsoft. 7 de marzo de 2008. Consultado el 17 de agosto de 2010 .
  24. ^ "Construcción de gráficos dinámicos". Biblioteca MSDN . Microsoft. 7 de marzo de 2008. Consultado el 17 de agosto de 2010 .
  25. ^ "Formatos admitidos por defecto en DirectShow". Biblioteca MSDN . Microsoft . Consultado el 11 de septiembre de 2005 .
  26. ^ "El próximo chivo expiatorio de Microsoft: ¡DirectShow!". retrakker . 2007-01-13 . Consultado el 2010-08-18 .
  27. ^ "Filtros DirectShow indestructibles para Ogg Vorbis, Speex, Theora y FLAC". Archivado desde el original el 24 de febrero de 2006. Consultado el 11 de marzo de 2006 .
  28. ^ "Filtros DirectShow de Monogram para Musepack, AAC y AMR". Archivado desde el original el 26 de septiembre de 2011. Consultado el 8 de marzo de 2008 .
  29. ^ "AC3Filter" . Consultado el 13 de agosto de 2010 .
  30. ^ Anderson, Dean; Lamberson, Jim (2007). "Usando VideoLan VLC en DirectShow". Un puente de código abierto entre VLC y DirectShow . Consultado el 15 de febrero de 2008 .
  31. ^ Thompson, Chris (13 de septiembre de 2000). "DirectShow para reproducción de medios en Windows - Parte III: Personalización de gráficos". FLIPCODE.COM . Consultado el 18 de agosto de 2010 .
  32. ^ "Acerca de la biblioteca DirectShowNet". Sitio web de DirectShowNet SourceForge . SourceForge . Consultado el 18 de agosto de 2010 .
  33. ^ "El proyecto DSPack". Archivado desde el original el 14 de junio de 2010. Consultado el 18 de agosto de 2010 .
  34. ^ "Servicios de edición de DirectShow" . Consultado el 9 de abril de 2012 .
  35. ^ "Edición de vídeo como "DirectShow Editing Services"". Archivado desde el original el 2011-08-05 . Consultado el 2012-04-09 .
  36. ^ "Filtro de renderizador de vídeo DirectShow". Biblioteca MSDN . Microsoft . Consultado el 17 de agosto de 2010 .
  37. ^ "Video Mixing Renderer 7 (VMR-7)" . Consultado el 11 de septiembre de 2005 .
  38. ^ "Modo sin ventanas VMR". Biblioteca MSDN . Microsoft . Consultado el 11 de septiembre de 2005 .
  39. ^ "Guía de programación para el SDK de DirectX". msdn.microsoft.com . Archivado desde el original el 18 de octubre de 2010. Consultado el 11 de enero de 2022 .
  40. ^ "Video Mixing Renderer 9 (VMR-9)". Biblioteca MSDN . Microsoft . Consultado el 11 de septiembre de 2005 .
  41. ^ "Filtro de renderizador de mezcla de video 9". Biblioteca MSDN . Microsoft . Consultado el 11 de septiembre de 2005 .
  42. ^ "Pérdida de superposición de DirectDraw y VMR9 después de la actualización".
  43. ^ "Enhanced Video Renderer". Biblioteca MSDN . Microsoft . Consultado el 28 de febrero de 2007 .
  44. ^ Varios. "Traductor DXVA 1.0". Foro de MSDN Media Foundation . Microsoft. Archivado desde el original el 13 de enero de 2009. Consultado el 18 de agosto de 2010 .
  45. ^ "Elección del renderizador de vídeo adecuado". Biblioteca MSDN . Microsoft . Consultado el 11 de septiembre de 2005 .
  46. ^ "LA ACADEMIA NACIONAL DE TELEVISIÓN ANUNCIA LOS LOGROS DE LOS GANADORES DEL EMMY: DISTINCIONES ENTREGADAS EN LA 58.ª EDICIÓN ANUAL DE LOS PREMIOS EMMY DE TECNOLOGÍA E INGENIERÍA" (PDF) . Premio Emmy . Academia Nacional de Televisión. Enero de 2007. Archivado desde el original (PDF) el 2010-09-22 . Consultado el 2007-01-08 .
  47. ^ "Uso de DirectShow con Media Center Edition". /mceDirectShow . Archivado desde el original el 21 de noviembre de 2010 . Consultado el 18 de agosto de 2010 .
  48. ^ Roushu, Kurifu (13 de marzo de 2001). "Conceptos básicos para utilizar DirectShow". Gamedev.net . Archivado desde el original el 8 de febrero de 2012. Consultado el 18 de agosto de 2010 .
  49. ^ Richards, Mark (26 de agosto de 2008). "Descripción general: ¿Qué es el kit de herramientas de realidad aumentada?". Archivado desde el original el 19 de julio de 2008. Consultado el 25 de enero de 2009 .
  50. ^ "El infierno de los códecs". Blog de HomeVideo101 . 22 de junio de 2007. Archivado desde el original el 11 de febrero de 2012. Consultado el 18 de agosto de 2010 .
  51. ^ abc Lanier, Chris (27 de enero de 2005). "¿El infierno de las DLL de la Nueva Era? ¡Sí, claro!". Blog de Chris Lanier . MSMVPS.COM. Archivado desde el original el 12 de febrero de 2007. Consultado el 27 de febrero de 2007 .
  52. ^ "El dispositivo de información de códecs GSpot" . Consultado el 18 de agosto de 2010 .

Enlaces externos