Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5

USB qui se déconnectent
#1

Bonjour,

Je travaille actuellement sur un projet où je récupère et affiche l'image d'une caméra usb depuis un programme que j'ai récupéré en ligne. Il marchait très bien et pouvait tourner des heures mais maintenant il plante à cause du message d'erreur suivant : VIDIOC_DQBUF : Aucun périphérique de ce type
Cela me déconnecte aussitôt les deux port usb ainsi que le port ethernet vu qu'ils sont reliés ensemble... Donc impossible de quitter ou redémarrer étant donné que ni le clavier ni la souris ne répond ! Je suis obligé de débrancher, et tout revient comme il faut lorsque je rebranche...
Si quelqu'un a une idée d'où ça peut venir ?
Je suis sur une raspberry pi B 512mo sous Raspbian

Merci

Florian.
Répondre
#2

Salut
Ca peut venir d'une mise à jour du système ? Quel programme ? Quel langage ? Que donne la commande dmesg après le boot ? Y a des traces de ta caméra ?

Raspberry Pi Home Server : http://www.pihomeserver.fr
Hotspot Wifi avec portail captif pour Raspberry Pi: Kupiki Hotspot
Répondre
#3

Toute les mise à jour sont faites.
Le programme est en C, le voici :
Code :
[== C++ ==]
#include <stdio.h>
#include "highgui.h"
#include "cv.h"

int main()
{

    char key;
    IplImage *image;

    CvCapture *capture;

capture = cvCreateCameraCapture(CV_CAP_ANY);    // permet de définir quel flux vidéo récupérer. Généralement CV_CAP_ANY permet de prendre le premier disponible (frontale sur pc portable)

if (!capture)    // Si capture impossible, affichage du message d'erreur
    {
       printf("Erreur ! Ouverture du flux impossible.. \n");
       return 1;
    }

else

    printf("Appuyer sur Espace ou Echap pour quitter\n\n\n________________________________________________________________________________") ;
    cvNamedWindow("flux_video_cam", CV_WINDOW_AUTOSIZE);    // Autodimension de la fenetre flux basique

    while(key != 32 && key != 27 ) // Boucle tant que l'utilisateur n'appuie pas sur la barre d'espace ou echap(respectivement 32 et 27 en code ASCII)
    {
       image = cvQueryFrame(capture); // Récuperation de l'image
       cvShowImage( "flux_video_cam", image); // Affichage de l'image flux basique

       key = cvWaitKey(10); // Attente d'appui sur touche

    }

    cvReleaseCapture(&capture);
    cvDestroyAllWindows;
    return 0;
}

Oui il y a surement présence de la caméra puisque sa led s'allume. Et lorsque que je lance le programme sans la caméra, il ne fonctionne pas mais ne me fait pas planter les port usb ou le port ethernet, donc c'est surement elle qui est en cause.
Qu'entends tu par la commande dmesg après le boot ?
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)