KS_H264VIDEOINFO estrutura (ksmedia.h)
O KS_H264VIDEOINFO descreve os recursos do dispositivo que se aplicam ao tipo de mídia atual.
Sintaxe
typedef struct tagKS_H264VIDEOINFO {
WORD wWidth;
WORD wHeight;
WORD wSARwidth;
WORD wSARheight;
WORD wProfile;
BYTE bLevelIDC;
WORD wConstrainedToolset;
DWORD bmSupportedUsages;
WORD bmCapabilities;
DWORD bmSVCCapabilities;
DWORD bmMVCCapabilities;
DWORD dwFrameInterval;
BYTE bMaxCodecConfigDelay;
BYTE bmSupportedSliceModes;
BYTE bmSupportedSyncFrameTypes;
BYTE bResolutionScaling;
BYTE bSimulcastSupport;
BYTE bmSupportedRateControlModes;
WORD wMaxMBperSecOneResolutionNoScalability;
WORD wMaxMBperSecTwoResolutionsNoScalability;
WORD wMaxMBperSecThreeResolutionsNoScalability;
WORD wMaxMBperSecFourResolutionsNoScalability;
WORD wMaxMBperSecOneResolutionTemporalScalability;
WORD wMaxMBperSecTwoResolutionsTemporalScalablility;
WORD wMaxMBperSecThreeResolutionsTemporalScalability;
WORD wMaxMBperSecFourResolutionsTemporalScalability;
WORD wMaxMBperSecOneResolutionTemporalQualityScalability;
WORD wMaxMBperSecTwoResolutionsTemporalQualityScalability;
WORD wMaxMBperSecThreeResolutionsTemporalQualityScalablity;
WORD wMaxMBperSecFourResolutionsTemporalQualityScalability;
WORD wMaxMBperSecOneResolutionTemporalSpatialScalability;
WORD wMaxMBperSecTwoResolutionsTemporalSpatialScalability;
WORD wMaxMBperSecThreeResolutionsTemporalSpatialScalablity;
WORD wMaxMBperSecFourResolutionsTemporalSpatialScalability;
WORD wMaxMBperSecOneResolutionFullScalability;
WORD wMaxMBperSecTwoResolutionsFullScalability;
WORD wMaxMBperSecThreeResolutionsFullScalability;
WORD wMaxMBperSecFourResolutionsFullScalability;
} KS_H264VIDEOINFO, *PKS_H264VIDEOINFO;
Membros
wWidth
Especifica a largura em pixels de saída de imagens do processo de decodificação.
O valor desse membro deve ser um múltiplo de 2, mas não precisa ser um múltiplo inteiro de 16. Ele pode ser especificado usando um retângulo de corte de quadros no SPS (Conjunto de Parâmetros de Sequência) ativo.
wHeight
Especifica a altura em pixels de saída de imagens do processo de decodificação.
O valor desse membro deve ser um múltiplo de 2. Quando a codificação de campo ou codificação adaptável de quadro/campo é usada, ela deve ser um múltiplo de 4. Não precisa ser um múltiplo inteiro de 16. Ele pode ser especificado usando um retângulo de corte de quadros no SPS ativo.
wSARwidth
Especifica a largura da taxa de proporção de exemplo, conforme definido no Anexo E H.264.
Deve ser relativamente primo em relação a wSARheight .
wSARheight
Especifica a altura da taxa de proporção de exemplo, conforme definido no Anexo E H.264.
Deve ser relativamente primo em relação a bSARwidth .
wProfile
Especifica os dois primeiros bytes do conjunto de parâmetros de sequência, conforme descrito por profile_idc e sinalizadores de restrição na especificação H.264.
Esse membro indica o perfil e as restrições aplicáveis a serem usadas.
Veja a seguir exemplos de valores permitidos:
Valor | Descrição |
---|---|
0x4240 | Perfil de linha de base restrito. |
0x4200 | Perfil de linha de base. |
0x4D00 | Perfil Principal. |
0x6400 | Alto Perfil. |
0x5300 | Perfil de linha de base escalonável. |
0x5600 | Perfil alto escalonável. |
0x7600 | Alto Perfil multivisor. |
0x8000 | Alto perfil estéreo. |
bLevelIDC
Especifica o nível conforme descrito pelo sinalizador level_idc.
Esse membro indica o nível mínimo que dá suporte à resolução e à taxa de bits máxima para esse descritor de quadro.
Veja a seguir exemplos de valores permitidos:
Valor | Descrição |
---|---|
0x1F | Nível 3.1. |
0x28 | Nível 4.0. |
wConstrainedToolset
Restringe os recursos permitidos por wProfile.
Valor | Descrição |
---|---|
0 | Sem restrições. Todas as ferramentas definidas pelo wProfile selecionado e pelo conjunto bmSetting são permitidas. |
1 | Uc (Comunicação Unificada) Conjunto de Ferramentas Altas Restritas. |
2 | UC Scalable Constrained High1. |
3 | UC Scalable Constrained Baseline1. |
4 a 65535 | Reservado. |
bmSupportedUsages
Define o bitmap que especifica os usos com suporte.
Bits | Descrição |
---|---|
D0 | Em tempo real/UCConfig (Configuração de Comunicação Unificada) modo 0. |
D1 | Em tempo real/UCConfig modo 1. |
D2 | Tempo real/UCConfig modo 2Q. |
D3 | Modo 2S em tempo real/UCConfig. |
D4 | Em tempo real/UCConfig modo 3. |
D7-D5 | Reservado; definido como 0. |
D15-D8 | Modos de difusão. |
D16 | Modo de armazenamento de arquivos com fatias de E/S (por exemplo, IPPP). |
D17 | Modo de armazenamento de arquivos com fatias I, P e B (por exemplo, IB... IP). |
D18 | Modo de todos os quadros I do armazenamento de arquivos. |
D23-D19 | Reservado; definido como 0. |
D24 | Modo Alto Estéreo MVC. |
D25 | Modo de Multivisor MVC. |
D31-D26 | Reservado; definido como 0. |
bmCapabilities
Define o bitmap que especifica os recursos para esse descritor de quadro.
Bits | Descrição |
---|---|
D0 | Codificação de comprimento de variável adaptável baseada em contexto (CAVLC) somente. |
D1 | Codificação Aritmética Binária Adaptável baseada em contexto (CABAC). |
D2 | Taxa de quadros constante. |
D3 | Separar QP para luma/chroma. |
D4 | QP separado para Cb/Cr. |
D5 | Nenhuma reordenação de imagem. |
D15-D6 | Reservado; definido como 0. |
bmSVCCapabilities
Define o bitmap que especifica os recursos de SVC (Codificação de Vídeo Escalonável).
Bits | Descrição |
---|---|
D2-D0 | Número máximo de camadas temporais menos 1. |
D3 | Reescreva o suporte. |
D6-D4 | Número máximo de camadas CGS (Escalabilidade Granumentada Grosseira) menos 1. |
D9-D7 | Número máximo de subcamadas de MGS (Escalabilidade Média Granular). |
D10 | Suporte adicional à escalabilidade do SNR em camadas de aprimoramento espacial. |
D13-D11 | Número máximo de camadas espaciais menos 1. |
D31-D14 | Reservado. |
bmMVCCapabilities
Define o bitmap que especifica os recursos de MVC (Multicast Video Coding).
Bits | Descrição |
---|---|
D2-D0 | Número máximo de camadas temporais menos 1. |
D11-D3 | Número máximo de componentes de exibição menos 1. |
D31-D11 | Reservado. |
dwFrameInterval
Especifica o intervalo de quadros com suporte.
Esse é o intervalo de quadros mais curto com suporte, na taxa de quadros mais alta, em unidades de 100 nanossegundos.
bMaxCodecConfigDelay
Especifica o número máximo de quadros que o codificador usa para responder a um comando.
bmSupportedSliceModes
Define o bitmap que especifica os modos de fatia.
Bits | Descrição |
---|---|
D0 | Modo de fatia 0. |
D1 | Modo de fatia 1. |
D7-D2 | Reservado. |
bmSupportedSyncFrameTypes
Define o membro BYTE bmSupportedSyncFrameTypes.
bResolutionScaling
Define o bitmap que especifica os tipos de quadro de sincronização.
Bits | Descrição |
---|---|
D0 | Quadro IDR (Atualização de Decodificação Instantânea) com cabeçalhos SPS (Conjunto de Parâmetros de Sequência) e PPS (Conjunto de Parâmetros de Imagem). |
D1 | Quadro IDR (com cabeçalhos SPS e PPS) que é um quadro de referência de longo prazo. |
D2 | Quadro I de acesso aleatório (com cabeçalhos SPS e PPS), que pode ou não ser um quadro de IDR. |
D3 | Quadro P que é um quadro de referência de longo prazo. |
D7-D4 | Reservado; definido como 0. |
bSimulcastSupport
Especifica o número de pontos de extremidade de streaming de vídeo H.264 e o número de fluxos que esse ponto de extremidade dá suporte.
Valor | Descrição |
---|---|
0 | Um ponto de extremidade e um fluxo. |
1 | Um ponto de extremidade e vários fluxos. |
bmSupportedRateControlModes
Define o bitmap que especifica os modos de controle de taxa.
Bits | Descrição |
---|---|
D0 | VBR (taxa de bits variável) com fluxo de subfluxo permitido (H.264 low_delay_hrd_flag = 1). |
D1 | CBR (taxa de bits constante) (H.264 low_delay_hrd_flag = 0). |
D2 | QP constante. |
D3 | VBR global com subfluxo permitido (H.264 low_delay_hrd_flag = 1). |
D4 | VBR sem fluxo inferior (H.264 low_delay_hrd_flag = 0). |
D5 | VBR global sem fluxo inferior (H.264 low_delay_hrd_flag = 0). |
D7-D6 | Reservado, definido como 0. |
wMaxMBperSecOneResolutionNoScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos AVC (Advanced Video Coding) não escalonáveis, resumindo todas as camadas quando todas as camadas tiverem a mesma resolução.
wMaxMBperSecTwoResolutionsNoScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos AVC não escalonáveis, somando em todas as camadas quando todas as camadas consistem em duas resoluções diferentes.
wMaxMBperSecThreeResolutionsNoScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos AVC não escalonáveis, somando em todas as camadas quando todas as camadas consistem em três resoluções diferentes.
wMaxMBperSecFourResolutionsNoScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos AVC não escalonáveis, somando em todas as camadas quando todas as camadas consistem em quatro resoluções diferentes.
wMaxMBperSecOneResolutionTemporalScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos escalonáveis temporais, somando em todas as camadas quando todas as camadas tiverem a mesma resolução.
wMaxMBperSecTwoResolutionsTemporalScalablility
Especifica a taxa máxima de processamento de macroblock permitida para fluxos escalonáveis temporais, somando em todas as camadas quando todas as camadas consistem em duas resoluções diferentes.
wMaxMBperSecThreeResolutionsTemporalScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos escalonáveis temporais, somando em todas as camadas quando todas as camadas consistem em três resoluções diferentes.
wMaxMBperSecFourResolutionsTemporalScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos totalmente escalonáveis, somando todas as camadas quando todas as camadas consistem em quatro resoluções diferentes.
wMaxMBperSecOneResolutionTemporalQualityScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos SVC temporais e escalonáveis de qualidade, resumindo em todas as camadas quando todas as camadas tiverem a mesma resolução.
wMaxMBperSecTwoResolutionsTemporalQualityScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos SVC temporais e escalonáveis de qualidade, resumindo em todas as camadas quando todas as camadas consistem em duas resoluções diferentes.
wMaxMBperSecThreeResolutionsTemporalQualityScalablity
Especifica a taxa máxima de processamento de macroblock permitida para fluxos SVC temporais e escalonáveis de qualidade, somando em todas as camadas quando todas as camadas consistem em três resoluções diferentes.
wMaxMBperSecFourResolutionsTemporalQualityScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos SVC temporais e escalonáveis de qualidade, somando em todas as camadas quando todas as camadas consistem em quatro resoluções diferentes.
wMaxMBperSecOneResolutionTemporalSpatialScalability
Define o membro wordwMaxMBperSecOneResolutionTemporalSpatialScalability.
wMaxMBperSecTwoResolutionsTemporalSpatialScalability
Define o membro WORDwMaxMBperSecTwoResolutionsTemporalSpatialScalability.
wMaxMBperSecThreeResolutionsTemporalSpatialScalablity
Define o membro WORDwMaxMBperSecThreeResolutionsTemporalSpatialScalablity.
wMaxMBperSecFourResolutionsTemporalSpatialScalability
Define o membro WORDwMaxMBperSecFourResolutionsTemporalSpatialScalability.
wMaxMBperSecOneResolutionFullScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos totalmente escalonáveis, somando todas as camadas quando todas as camadas tiverem a mesma resolução.
wMaxMBperSecTwoResolutionsFullScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos totalmente escalonáveis, somando em todas as camadas quando todas as camadas consistem em duas resoluções diferentes.
wMaxMBperSecThreeResolutionsFullScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos totalmente escalonáveis, somando em todas as camadas quando todas as camadas consistem em três resoluções diferentes.
wMaxMBperSecFourResolutionsFullScalability
Especifica a taxa máxima de processamento de macroblock permitida para fluxos totalmente escalonáveis, somando todas as camadas quando todas as camadas consistem em quatro resoluções diferentes.
Observações
A estrutura KS_H264VIDEOINFO contém o quadro e as informações do descritor de formato.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 8 |
servidor com suporte mínimo | Windows Server 2012 |
cabeçalho | ksmedia.h (inclua Ksmedia.h) |