Bonjour tout le monde,
je développe une appli sous Builder2010 en c++ afin de piloter en pan(x), tilt(y) et zoom une webcam quick cam Sphere AF.
SE windows7 64bits, driver UVC ver 13.0
Pour le zoom le forun quickcamteam conseille d'utiliser le fichier LVUVCPublic.h.
ce fichier commence par ces lignes que je ne comprends pas vraiment:
pour la commande du zoom je code la fonction:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 /******************************************************************************* * GUIDS ******************************************************************************/ // {CAAE4966-272C-44a9-B792-71953F89DB2B} #define STATIC_PROPSETID_LOGITECH_PUBLIC1 \ 0xCAAE4966, 0x272C, 0x44A9, 0xB7, 0x92, 0x71, 0x95, 0x3F, 0x89, 0xDB, 0x2B DEFINE_GUIDSTRUCT("CAAE4966-272C-44a9-B792-71953F89DB2B", PROPSETID_LOGITECH_PUBLIC1); #define PROPSETID_LOGITECH_PUBLIC1 DEFINE_GUIDNAMED(PROPSETID_LOGITECH_PUBLIC1)
(je n'ai laissé que l'essentiel)
lors de la construction de l'application j'ai une erreur de link:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 HRESULT CameraZoom(long value) { HRESULT hr = 0; KSPROPERTY_LP1_DIGITAL_ZOOM_S setting; setting.ulZoom = value; IKsPropertySet *pKsPropertySet = NULL; hr = pFilter->QueryInterface(IID_IKsPropertySet,(void**)&pKsPropertySet); hr = pKsPropertySet->Set(PROPSETID_LOGITECH_PUBLIC1,KSPROPERTY_LP1_DIGITAL_ZOOM,NULL,0,&setting,sizeof(setting)); return hr; }
qui concerne la ligne[ILINK32 Erreur] Error: '_PROPSETID_LOGITECH_PUBLIC1' externe non résolu, référencé depuis G:\CAM SPHERE\WEBCAM\DEBUG\CAM.OBJ
PROPSETID_LOGITECH_PUBLIC1 est défini dans le LVUVCPublic.h (les lignes copiées) et je ne vois pas comment tout ceci fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part hr = pKsPropertySet->Set(PROPSETID_LOGITECH_PUBLIC1,KSPROPERTY_LP1_DIGITAL_ZOOM,NULL,0,&setting,sizeof(setting));
Je n'ai pas trouvé d'explication sur le rôle du GUID.
Le fichier Ks.h est inclus dans l'entête de mon fichier cpp.
Je précise que le forum de logitech n'accepte plus de nouveaux inscrits, je ne peux donc pas leur demander une explication.
J'espère que je suis suffisamment clair.
Merci pour votre aide.
Partager