Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Uma aplicação pode registrar funções de callback com a janela de captura para que notifique a aplicação nas seguintes circunstâncias:
- O estado muda
- Ocorrem erros
- Quadros de vídeo e buffers de áudio ficam disponíveis
- A aplicação deve ceder durante a captura de transmissão.
O exemplo a seguir cria uma janela de captura e registra funções de status, erro, fluxo de vídeo e retorno de chamada de quadro no loop de processamento de mensagens de um aplicativo. Inclui também uma instrução de exemplo para desativar uma função de retorno de chamada. Exemplos subsequentes mostram funções simples de status, erro e retorno de chamada de frame.
case WM_CREATE:
{
char achDeviceName[80] ;
char achDeviceVersion[100] ;
char achBuffer[100] ;
WORD wDriverCount = 0 ;
WORD wIndex ;
WORD wError ;
HMENU hMenu ;
// Create a capture window using the capCreateCaptureWindow macro.
ghWndCap = capCreateCaptureWindow((LPSTR)"Capture Window",
WS_CHILD | WS_VISIBLE, 0, 0, 160, 120, (HWND) hWnd, (int) 0);
// Register the error callback function using the
// capSetCallbackOnError macro.
capSetCallbackOnError(ghWndCap, fpErrorCallback);
// Register the status callback function using the
// capSetCallbackOnStatus macro.
capSetCallbackOnStatus(ghWndCap, fpStatusCallback);
// Register the video-stream callback function using the
// capSetCallbackOnVideoStream macro.
capSetCallbackOnVideoStream(ghWndCap, fpVideoCallback);
// Register the frame callback function using the
// capSetCallbackOnFrame macro.
capSetCallbackOnFrame(ghWndCap, fpFrameCallback);
// Connect to a capture driver
break;
}
case WM_CLOSE:
{
// Use the capSetCallbackOnFrame macro to
// disable the frame callback. Similar calls exist for the other
// callback functions.
capSetCallbackOnFrame(ghWndCap, NULL);
break;
}
Tópicos relacionados