Webcam

¡Saludos! He conseguido con tu apreciada ayuda hacer un programa que pulsando un botón me capture una imagen desde una webcam; pero tengo un problema y es que cuando lo he hecho en otro ordenador distinto, al incorporar el componente llamado SampleGrabber me aparece el mensaje"The SampleGrabber is not available on this system"¿A qué se debe?. Gracias anticipadas
1

1 Respuesta

47.200 pts. Analista/Programador de Sistemas Oracle
¿Qué sistema utilizabas cuando te funcionaba y cuál ahora?
(Aclaración) Hice el programa en un portátil con W98-SE y el programa funcionaba. Repetí el proceso de instalación en un ordenador normal con W98 antiguo y el componente mencionado no podía colocarlo en la ficha.
(No sé si te lo aclaro)
En el create de TSampleGrabber encontramos el mensaje:
constructor TSampleGrabber.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FCriticalSection := TCriticalSection.Create;
assert(CheckFilter, 'The SampleGrabber Filter is not available on this system.');
FMediaType := TMediaType.Create(MEDIATYPE_Video);
FMediaType.SubType := MEDIASUBTYPE_RGB24;
FMediaType.FormatType := FORMAT_VideoInfo;
new(BMPInfo);
end;
Éste nos aparece porque realiza un chequeo del funcionamiento de la librería Directx9 en el sistema. Lo siento, pero creo que deberás actualizar tu sistema para utilizar este componente.
class function TSampleGrabber.CheckFilter: boolean;
var
AFilter: IBaseFilter;
begin
result := Cocreateinstance(CLSID_SampleGrabber, nil, CLSCTX_INPROC ,IID_IBASEFilter, AFilter) = S_OK;
AFilter := nil;
end;

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas