Compartilhar via


Tamanho do buffer de saída

O método IMiniport::D ataRangeIntersection do driver de miniport copia a estrutura que especifica o formato de dados negociado em um buffer alocado pelo chamador. O parâmetro OutputBufferLength do método especifica o tamanho do buffer em bytes. Observe que o tamanho da estrutura de formato varia de acordo com o formato selecionado. Para evitar gravar após o final do buffer, o método DataRangeIntersection deve primeiro verificar se o buffer alocado é grande o suficiente para conter o formato.

Para um formato mono ou estéreo, o tamanho mínimo do buffer de saída é sizeof(KSDATAFORMAT_WAVEFORMATEX) ou sizeof(KSDATAFORMAT_DSOUND), dependendo se um formato WAVEFORMATEX ou DirectSound foi selecionado.

Se o formato de onda der suporte a mais de dois canais, a estrutura WAVEFORMATEX inserida no final doKSDATAFORMAT_WAVEFORMATEX estrutura será expandida para ocupar um número adicional de bytes que é igual à diferença

sizeof(WAVEFORMATEXTENSIBLE) – sizeof(WAVEFORMATEX)