Objeto Terminal

No TAPI versão 3.0 e posterior, o modelo de objeto TAPI usa objetos de terminal para representar a origem ou o coletor de um fluxo de mídia associado a uma chamada ou sessão de comunicação. Esse modelo de objeto permite que um aplicativo especifique, em um nível detalhado, como a mídia é processada em uma chamada. Esse modelo também permite que vários terminais sejam selecionados simultaneamente, portanto, por exemplo, uma chamada pode ser gerada para um alto-falante de áudio e gravada simultaneamente.

O objeto Terminal representa uma origem ou renderizador, como um microfone ou um alto-falante. Um aplicativo escolhe entre os terminais disponíveis com base na direção da mídia e no tipo ou tipos envolvidos em uma sessão de comunicação. Cada fluxo de mídia associado é selecionado no terminal apropriado para iniciar o streaming.

Os terminais normalmente são implementados por um MSP (provedor de serviços de mídia) e os objetos de terminal não estarão disponíveis se não houver nenhum MSP associado a uma sessão de comunicação. Uma exceção é que, com o Windows 2000 SP1 e posterior, um aplicativo pode implementar uma forma de terminal conectável. Isso permite que um servidor de conferência crie terminais de ponte para que clientes H323 não Windows 2000 SP1 ou não multicast possam ser adicionados a conferências multicast SDP/IP multipartidárias do TAPI 3.

Cada terminal pertence a uma classe de terminal. Uma classe de terminal representa um conjunto de recursos de origem ou renderização. Por exemplo, um terminal que mapeia para um conjunto de alto-falantes de áudio seria identificado como CLSID_SpeakersTerminal e o provedor de serviços seria esperado para implementar o controle de volume. O TAPI 3 define um conjunto de classes de terminal, um MSP pode definir classes adicionais e um aplicativo pode registrar novas classes de terminal. Cada classe de terminal recebe um GUID (identificador global exclusivo).

Do ponto de vista de um aplicativo, um terminal é descrito por seu tipo de terminal e direção. O tipo pode ser estático ou dinâmico. Um terminal estático é mapeado para hardware, como telefone ou microfone. Um terminal dinâmico é mapeado para um objeto transitório, como um arquivo ou uma janela de vídeo. A direção descreve se um determinado terminal é uma origem ou um renderizador.

Os recursos de um determinado objeto terminal podem variar consideravelmente dependendo do par de provedores de serviços atual em uso. O MSP de um dispositivo especializado pode implementar uma interface com métodos apropriados para esse dispositivo. Essa interface pode ser agregada ao objeto terminal e aos métodos disponibilizados para um aplicativo. Para obter mais informações e material de referência, consulte a documentação do provedor de serviços de mídia.

Para obter mais informações sobre interfaces de terminal e métodos implementados pelo TAPI 3, consulte Interfaces de objeto de terminal.

Se os autores de um provedor de serviços de mídia usarem as Classes Base MSP, eles poderão implementar alguns dos recursos do Terminal de Streaming de Mídia.

Para obter mais informações e exemplos de código que mostram ilustrações do uso de um objeto Terminal, consulte Fazer uma chamada e receber uma chamada.

Windows XP: Para obter mais informações sobre como o objeto Terminal foi expandido no Windows XP, consulte Terminais de arquivo, terminais multitrack e terminais conectáveis.

Para obter mais informações e exemplos de código, consulte Usando terminais de arquivo, Usando terminais multitrack e o mecanismo de seleção padrão e Registro de terminal conectável.