Compartir a través de


Método ICaptureGraphBuilder2::AllocCapFile (strmif.h)

[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.

El AllocCapFile método preasigna un archivo de captura a un tamaño especificado. Para obtener los mejores resultados, capture siempre en un archivo de captura desfragmentado preasignado que sea mayor que el tamaño de los datos de captura.

Sintaxis

HRESULT AllocCapFile(
  [in] LPCOLESTR lpstr,
  [in] DWORDLONG dwlSize
);

Parámetros

[in] lpstr

Puntero a una cadena de caracteres anchos que contiene el nombre del archivo que se va a crear o cambiar el tamaño.

[in] dwlSize

Tamaño del archivo que se va a asignar, en bytes.

Valor devuelto

Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

Este método produce un error si el archivo es de solo lectura.

Es mejor asignar tanto espacio como sea posible, idealmente, más de lo necesario. Sin embargo, esto puede dar lugar a un archivo muy grande que contiene relativamente pocos datos. Por ejemplo, un archivo de captura de 1 gigabyte (GB) puede contener algunos megabytes de vídeo capturado. Use el método ICaptureGraphBuilder2::CopyCaptureFile para copiar los datos en un nuevo archivo. Ese método copia solo los datos y omite la parte vacía del archivo original.

Si usa este método para prealcalizar el archivo, llame a IFileSinkFilter2::SetMode en el filtro file-writer con el valor cero. Si el filtro se establece en AM_FILE_OVERWRITE, eliminará el archivo asignado previamente. Tenga en cuenta que algunos filtros de escritor de archivos no admiten el modo 0.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado strmif.h (incluya Dshow.h)
Library Strmiids.lib

Consulte también

Códigos de error y éxito

ICaptureGraphBuilder2 (Interfaz)