Trabajar con códecs

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

Microsoft Windows proporciona varios códecs como componentes del sistema operativo. Los códecs disponibles siempre incluyen aquellos que se incluyen con cualquier versión de DirectX y Reproductor multimedia de Windows se incluyeron en la versión de Windows. Se pueden instalar códecs adicionales cuando se instalan versiones más recientes de DirectX o Reproductor multimedia de Windows o los entornos de ejecución de Windows Media SDK. Terceros pueden instalar códecs adicionales en un sistema host; Estos códecs pueden estar diseñados para funcionar solo con una aplicación determinada o pueden admitir el uso general de cualquier aplicación directShow.

Los códecs se pueden implementar de una de estas tres maneras diferentes:

  • Como un códec instalable de audio o vídeo de tipo Video para Windows cargado por el Administrador de compresión de vídeo (VCM) o el Administrador de compresión de audio (ACM). En general, esta tecnología se considera en desuso y no se recomienda su uso. Los códecs instalables participan en gráficos de filtro directShow a través del filtro contenedor de descompresión AVI.
  • Como filtro DirectShow. Muchos códecs de terceros se implementan como filtros directShow nativos. Uno de estos filtros es el filtro de descompresión MP3 frauenhofer. En general, estos filtros se pueden agregar al gráfico de filtros de las maneras habituales. Una excepción a esta regla es que algunos códecs windows Media™ Audio o Windows Media Video, y el códec MPEG-4 de Microsoft, no se pueden agregar manualmente a un gráfico de filtros. Estos filtros solo se pueden agregar mediante los filtros lector de ASF y escritor de ASF.
  • Como objetos multimedia de DirectX (DPO). Las DPO son la manera recomendada de implementar códecs porque se pueden usar dentro de un gráfico de filtros directShow mediante el filtro contenedor DMO, o de forma independiente en cualquier otra aplicación de streaming no basada en DirectShow. Algunos códecs de audio de Windows Media y vídeo de Windows Media se implementan como DPO. Al igual que con los filtros de Windows Media, estas DPO no se pueden usar fuera del contexto del SDK de Windows Media. Esto significa que, en DirectShow, solo se pueden agregar a un gráfico a través de los filtros lector de ASF o escritor de ASF.

En GraphEdit, todos estos tipos diferentes de códecs aparecen juntos en las siguientes categorías:

  • Compresor de audio
  • Compresor de vídeo
  • Filtro DirectShow

Sin embargo, muchos de estos códecs están instalados por terceros, o por otras aplicaciones de Microsoft o componentes del sistema operativo, y no están diseñados para su uso por otras aplicaciones directShow. La lista de códecs visibles en GraphEdit también depende de la versión de Windows que se ejecuta en el sistema host y de qué versión del SDK de DirectShow está instalada.